C++ Software Engineer – Motion Planning
Indexed description
About The Role
We are seeking a highly skilled C++ Software Engineer to join our core Motion Planning team. You will be at the forefront of developing the decision-making logic that enables our autonomous vehicles to navigate the complexities of the real world safely and efficiently. If you have a passion for solving hard algorithmic problems and writing high-performance code, this is the perfect opportunity for you.
What you'll do
- Design, implement, and optimize cutting-edge motion planning algorithms in modern C++ (C++17/20)
- Develop robust solutions for trajectory generation, pathfinding, and behavioral decision-making in dynamic environments
- Analyze and debug system performance using simulation, log playback, and on-vehicle testing data
- Collaborate closely with engineers from Perception, Prediction, and Control teams to build a cohesive and reliable self-driving system
- Write clean, maintainable, and optimized production-quality code
- Profile and optimize algorithms to meet real-time performance constraints
- Exceptional proficiency in modern C++ and a deep understanding of object-oriented design principles
- Strong foundational knowledge of algorithms and data structures, particularly those relevant to robotics (e.g., graph search, computational geometry, optimization techniques)
- Experience with software development tools and practices, including Git, CI/CD, and code reviews
- Proven success in competitive programming contests such as Google Code Jam, Hash Code, Topcoder Open, ICPC, or similar events
- Professional or academic experience in robotics, specifically with motion planning
- Experience with performance-critical software development, including multi-threading and memory optimization
- Knowledge of machine learning techniques (e.g., reinforcement learning, imitation learning) applied to planning or decision-making problems
- Solid mathematical background, including linear algebra and probability theory
- Knowledge of GPU programming (e.g., CUDA, OpenCL) for accelerating algorithms
Create a free Caio profile to unlock more results and save your role and location preferences.
Unlock free search