About The RoleWe are seeking a talented and mission-driven
Software Engineer / Sr. Software Engineer, Planning Selection to contribute to the development of our core planner engine for decision-making, trajectory generation, and trajectory evaluation. In this role, you will apply both classic robotics behavior planning and modern machine learning algorithms to evaluate candidate trajectories, build multi-objective cost functions, and help select safe, comfortable, and efficient trajectories for our autonomous vehicles. You will play a key role in refining our data-driven methods to enable smooth and scalable unmanned operations in dense urban environments.
Responsibilities- Design, implement, and maintain high-performance, production-grade C++ software for trajectory candidate generation and scoring.
- Apply probabilistic, statistical, and machine learning methods to assess dynamic trajectory risk, calculate maneuver probabilities, and perform trajectory evaluation under uncertainty.
- Profile, optimize, and test online planning software to ensure low-latency execution and memory efficiency on embedded production platforms.
- Collaborate cross-functionally with Perception, Prediction, Motion Control, and Safety teams to refine scenario evaluation metrics and validate closed-loop planning behavior.
Qualifications- Bachelor's or higher degree in Computer Science, Robotics, Electrical Engineering, Applied Mathematics, or a closely related technical field.
- 2-5+ years of software engineering experience writing production-grade C++ in autonomous driving, robotics, or complex real-time systems.
- Strong understanding of behavior planning, decision-making, and trajectory generation algorithms.
- Solid understanding of probability, statistics, and machine learning fundamentals (e.g., classification, regression, scoring models).
- Strong problem-solving skills with the ability to decompose complex driving behaviors into clear, executable algorithms.
Preferred Qualifications- Demonstrated track record of deploying online planning or trajectory evaluation modules onto real-world autonomous platforms.
- Familiarity with closed-loop simulation, automated data logging, and planning validation workflows.
- Experience applying Learning-to-Rank (LTR), preference learning, or reward modeling to trajectory selection or robotic decision-making.
The base salary range for the Software Engineer position is $141,463-$235,182 annually, and for the Senior Software Engineer position is $169,783-$282,264 annually, in addition to bonus, equity, and benefits. Our salary ranges are determined by the role, level, and location. Within the applicable range, individual compensation is based on the work location as well as other factors, including job-related skills, experience, and relevant education and training.