Software Engineer / Sr. Software Engineer, Planning Selection (Autonomy)

didi· Planning US
Apply Now ↗
📍 San Jose, CA

About this role

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, and 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, and integrated ecosystem, we are positioned to build and operate a highly efficient, user-oriented autonomous fleet.

 
About The Role

We 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.

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

Frequently Asked Questions

Is the salary disclosed for the Software Engineer / Sr. Software Engineer, Planning Selection (Autonomy) position at didi?
The salary for this Software Engineer / Sr. Software Engineer, Planning Selection (Autonomy) role at didi is not publicly listed. Click "Apply Now" to learn more about the compensation package on their official careers page.
Where is the Software Engineer / Sr. Software Engineer, Planning Selection (Autonomy) position at didi located?
This Software Engineer / Sr. Software Engineer, Planning Selection (Autonomy) role at didi is based in San Jose, CA. The position is listed as on-site or hybrid. Check the full job description or apply directly to confirm the work arrangement.
Which team or department does the Software Engineer / Sr. Software Engineer, Planning Selection (Autonomy) at didi belong to?
This Software Engineer / Sr. Software Engineer, Planning Selection (Autonomy) position is part of the Planning US department at didi. See the full job description for more information about the team structure and responsibilities.
How do I apply for the Software Engineer / Sr. Software Engineer, Planning Selection (Autonomy) position at didi?
Click the "Apply Now" button on this page. You will be redirected to didi's official application portal hosted on greenhouse where you can submit your application directly.
When was the Software Engineer / Sr. Software Engineer, Planning Selection (Autonomy) job at didi posted?
This Software Engineer / Sr. Software Engineer, Planning Selection (Autonomy) position at didi was posted on Aug 17, 2026. Apply as soon as possible — early applications are often reviewed first.
Software Engineer / Sr. Software Engineer, Planning Selection (Autonomy)
didi
Apply for this role ↗

You'll be redirected to didi's official application page on Greenhouse.