Software Engineer - Simulation

DiDi Labs, Mountain View, CA

DiDi Labs is working to solve the world’s most challenging problems.

Didi Chuxing (“DiDi”) is the world’s leading mobile transportation platform. We’re committed to working with communities and partners to solve the world’s transportation, environmental, and employment challenges by using big data-driven deep-learning algorithms that optimize resource allocation.

Didi Chuxing’s Autonomous-Driving team was established in 2016, and has grown to a comprehensive research and development organization covering HD mapping, perception, behavior prediction, planning and control, infrastructure and simulation, labeling, hardware, mechanical, problem diagnosis, vehicle modifications, connected car, and security, among others. We’re developing and testing self-driving vehicles in China and the United States.

In August 2019, DiDi upgraded its autonomous driving unit to an independent company to focus on R&D, product application, and business development related to self-driving technologies. The new company will integrate the resources and technology of DiDi’s platform, continue to increase investment in R&D, and deepen collaboration with auto industry partners.

We are looking for excellent software engineers to join our Mountain View office to develop simulation algorithms, systems and processes for DiDi autonomous vehicle project. The simulation team's work is critical to the success of the entire project: It speeds up development-verification cycles by enabling onboard module engineers to rapidly evaluate their changes and iterate. It ensures quality of software deployed on real-world autonomous vehicles to minimize safety risk. Also, comparing with real-road testing, simulation could expand testing coverage by orders of magnitude with only a fraction of the cost. Although we have been making great progress, there are still many technical challenges ahead of us in this area. All-levels engineers are all welcome to join, and your contributions could be key to bring autonomous vehicles to DiDi's transportation network!



  • Develop simulator software which establishes execution environment for onboard algorithms, using real-world log data or virtually created environment. Ensure simulation is performant and deterministic.
  • Research and develop algorithms in multiple domains including sensor simulation, agent behavior and vehicle dynamics, in order to make simulation of the ego car and agents as realistic as possible.
  • Develop efficient scenario creation tools, including convenient ways to specify agents behavior and evaluation metrics, parameterized scenario generation, etc.
  • Develop highly-scalable framework to run and monitor huge amount of simulation jobs in the cloud.
  • Develop data processing and analytics platform to process simulation data, extract and visualize information. Collaborate with onboard engineering and triage teams to quantify, monitor and improve the performance and safety metrics using data science skills.
  • Develop CI/CD systems and workflows to integrate simulation into day-to-day development and software release processes.



  • Bachelor degree or higher in Computer Science or related disciplines. 
  • Solid programming and proficient in C++ and/or Python.
  • Team player with good communication skills.
  • Attentive to detail and strive for engineering excellence.



  • Experience with simulation for autonomous vehicles.
  • Experience with game engine such as Unreal Engine.
  • Experience with cloud, big data and database, especially open source systems such as docker, various big names in the Apache project list, etc.
  • Experience with CI/CD systems.
  • Experience with graphics and rendering.
  • Deep knowledge in complex software architecture, Linux OS, software performance analysis and optimization.

About DiDi Labs

DiDi is a ride-sharing platform dedicated to revolutionizing the way people live and move. Didi Chuxing offers a full range of on-demand mobility options, including Taxi hailing, private car hailing, Hitch (social ride-sharing), Chauffeur (designated driver), Bus, Minibus, Car Rental, and Enterprise Solutions. Our company is committed to working with communities and partners to solve the world’s transportation and environmental challenges using big data-driven deep-learning algorithms that optimize resource allocation.

Want to learn more about DiDi Labs? Visit DiDi Labs's website.