FreshRemote.Work

Senior Software Engineer - Motion Planning, Dev Tooling (C++/Qt)

Remote

Mission Summary

Our Dev Tooling team is a group of software engineers creating an innovative software framework so that our autonomous vehicle researchers and software engineers can build their own tools for testing, debugging (RCA), and visualizing vehicle performance. The framework is written in C++ and currently runs on desktops using Qt.

Team members are versatile, with some team members contributing to core libraries (C++) while others contributing to end-user tools and frameworks (C++ and Qt). This team will regularly interact with various teams with robotics-specific domain knowledge, including motion planning, controls, machine learning, and triage, picking up experience and knowledge in those areas. As we scale this team, we are looking for strong design and code development in C++/Qt to reform some novel tools and their implementations.

We are seeking a highly motivated individual who is passionate about writing elegant, scalable, and robust code.

We truly value curiosity, going the extra mile to understand our users’ needs and come up with innovative features and solutions to increase their productivity.

What you'll be doing:

  • Develop and implement robust tooling and testing solutions for the Motion Planner stack to streamline the development and testing processes. Ensure the code is production-ready, well-documented, and includes thorough unit tests.
  • Continuously improve the design of the system to promote modularity and expandability, making it easier to adapt and extend in the future.
  • Collaborate closely with users to understand their requirements and identify any pain points they may encounter.
  • Provide ongoing support for issues reported by users. Assess and prioritize the criticality of these issues, distinguishing between blocking problems and desirable feature requests.
  • Take ownership of specific components and drive their technical roadmap, ensuring alignment with overall project goals.
  • Actively support team members with their tasks, including development, merge request reviews, debugging, and ideation sessions. Promote teamwork and knowledge sharing within the team.
What we're looking for: 
  • Bachelor's, Masters, or PhD degree preferred in Robotics, Computer Science, Computer Engineering, Mechanical Engineering, or related field
  • 5+ years of software development in C++
  • Strong knowledge of the C++ language:
    • Standard library
    • Modern features of language (C++17 or higher)
    • Build systems. Bonus point if you are familiar with bazel framework
    • Debugging - especially with gdb
  • Solid software engineering foundations
    • Design patterns
This job isn't fresh anymore!
Search Fresh Jobs