Software Engineer

DiDi Labs
San Jose, CA, United States
4 days ago
Apply on startup.jobs
Prepare application

Role details

Contract type
Internship / Graduate position
Employment type
Full-time (> 32 hours)
Experience level
Expert
Compensation
$141,463.0 - $235,182.0
Working hours
Regular working hours
Job source

Tech stack

Data Analysis Software Debugging Machine Learning Motion Planning Enterprise Planning Systems Reinforcement Learning Information Technology Optimization Algorithms Automotive Software

Job description

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, and 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., * 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.

Requirements

  • 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, 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.

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.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on startup.jobs
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

2:36 min

Applying supervised machine learning for practical rule extraction

Katja Träumner

2:27 min

Deploying inside-out foundational models onto mobile arms and humanoids

Sergio Perez Sergio Perez · World Congress 2026 Europe

1:48 min

Automating exploratory data analysis within training pipelines

Dora Petrella · World Congress 2023

1:19 min

Advancing autonomous driving capabilities with specialized software talent

Katrin Lehmann Katrin Lehmann +1 · Coffee With Developers

1:57 min

Evolution of machine learning algorithms and computing hardware

Alexandra Waldherr · LIVE

3:51 min

Technical skills and collaborative mindsets for mobility engineering roles

Georg Kühberger +1 · LIVE

Videos

See all

Related articles

See all