Software Engineer – Motion Planning
Didi•3h ago
United StatesOnsite$141.5K–$235.2KFull-timeMid Level2+ yrs exp
Visa-friendly
Top focus
Software EngineerSoftware Engineer IiSenior Software Engineer
- About The Company
- DiDi's autonomous driving unit was established in 2016 with the mission of developing Level 4 autonomous driving (AD) technology to make transportation safer and more efficient. In August 2019, the unit became an independent company, DiDi Autonomous Driving, dedicated to advanced AD R&D, product application
- business expansion. We believe integrating AD technology into a shared-mobility fleet will generate immense social value. By leveraging DiDi's specialized technology, operational expertise
- integrated ecosystem, we are positioned to build and operate a highly efficient, user-oriented autonomous fleet.
- About The Role
- We are seeking a Software Engineer /Sr. Software Engineer to join our team and develop the core decision-making and motion planning systems for our autonomous vehicles. In this role, you will be responsible for creating the algorithms that enable smooth, safe
- intelligent navigation in complex environments. You will tackle challenges across the full motion planning stack, from high-level behavioral reasoning to low-level trajectory optimization.
- Responsibilities
- Design and implement the core motion planning logic that determines the vehicle's high-level actions (e.g., lane changes, merges, yields, and interactions with other agents).
- Develop and optimize the motion planning algorithms that execute behavioral decisions, integrating Geometry Reasoning (path) and Speed Reasoning (velocity) into a cohesive trajectory.
- Architect and enhance the geometry system for generating geometrically feasible and compliant paths.
- Architect and refine the velocity system for generating context-aware, comfortable, and safe velocity profiles.
- Model complex driving scenarios and agent interactions to create a robust world model for the behavioral planner.
- Design different costs for trajectory ranking to trade off ETAs, comfort and safety of the vehicle behaviors.
- Conduct in-depth analysis, testing, and debugging of the system's performance in various scenarios, leading root cause investigations.
- Collaborate with Prediction, Perception, and Control teams to ensure a seamless flow from environmental understanding to physical vehicle motion.
- Qualifications
- B.S./M.S. in Computer Science, Robotics, or a related field.
- Experience in autonomous systems, robotics, or automotive software development.
- Strong proficiency in C++ for implementing complex, real-time algorithms.
- Solid understanding of robotics fundamentals, including decision-making, motion planning, control theory, trajectory ranking, search and optimization algorithms etc.
- Related experience in one or more of the following: motion planning, trajectory optimization and world environment reasoning, trajectory ranking and cost design.
- Preferred Qualifications
- PhD or internship experience related to robotics planning system designs.
- Knowledge of vehicle dynamics and longitudinal/lateral control systems.
- Solid understanding of machine learning principles, reinforcement learning and related algorithms.
- The base salary range for the Software Engineer position is $141,463–$235,182 annually
- for the Senior Software Engineer position is $169,783–$282,264 annually, in addition to bonus, equity
- benefits. Our salary ranges are determined by the role, level
- location. Within the applicable range, individual compensation is based on the work location as well as other factors, including job-related skills, experience
- relevant education and training.
- I acknowledge that prior to submitting this application, I have read and accepted the Privacy Notice for California Residents which is available on https://v.didi.cn/AQnxlBa
Required skills
C++roboticsmotion planningtrajectory optimizationcontrol theorymachine learningreinforcement learning