Software Engineer - Simulation, Self-Driving

Uber Overview

Uber ATC is the Pittsburgh R&D hub of Uber’s engineering team dedicated to self-driving technologies, mapping, and vehicle safety. This team is responsible for developing long-term technologies that advance Uber’s mission of bringing safe, reliable transportation to everyone, everywhere. We are ambitious, engaged and excited about transforming the way the world moves. Our research will make the process of moving real assets and real people safer and more efficient now, and in the decades to come.

Do you like to work on games? Do you currently build interactive simulated worlds and/or intelligent agents, and want to take on some new challenges with real world implications? We are looking for people who will enjoy writing the simulation software and tools to test our self-driving vehicles. This software includes the simulation of vehicles and people that behave in a realistic manner. We need engineers who can work with the autonomy team to understand their requirements and then translate those requirements into production-quality simulation systems that enable them to reliably test their algorithms, to accelerate the development of our self-driving vehicles.

Job Description

What you’ll be doing:

  • Design and implement AI solutions to create realistic behaviors for simulated entities
  • Design and implement 3D environments to support the testing of autonomy algorithms
  • Build APIs, scripts and tools to enable designers and engineers to construct worlds
  • Collaborate with autonomy engineers to understand their testing needs
  • Contribute innovative ideas towards all aspects of simulation development
  • Write well architected, robust, and maintainable code using company coding standards

Here are the kinds of skills we’re looking for:

  • Strong C++ background
  • Strong 3D math abilities
  • Creative problem solving
  • Able to understand and integrate with existing systems quickly
  • Experience developing interactive systems, e.g., computer games, visualizations, robotics

Bonus points if you have:

  • Strong Python background
  • Experience with AI systems (path finding, LOS, state machines, sensory systems, group behaviors, etc…)
  • Experience implementing AI behaviors for characters/vehicles
  • Experience with multi-threaded implementations
  • Experience with 3D graphics programming
  • Experience with Qt
  • Experience with Linux



  • Employees are given Uber credits every month.
  • The rare opportunity to change the world such that everyone around you is using the product you built. We’re not just another social web app, we’re moving real people and assets and reinventing transportation and logistics globally.
  • Sharp, motivated co-workers in a fun office environment.


  • 401(k) plan, gym reimbursement, paid company holidays and Uber credits.
  • Full medical/dental/vision package to fit your needs.
  • Unlimited vacation policy; work hard and take time when you need it.

We’re bringing Uber to every major city in the world. We need brains and passion to make it happen and to make it happen in style.


Meet Some of Uber's Employees

Brian M.

Community Management Specialist

Brian makes sure that every Uber user has an amazing experience. He troubleshoots roadblocks to customer happiness and also does outreach to attract new Uber users.

Swathy P.

Operations & Logistics Manager

Swathy is part of the team that is the driving force behind Uber’s transportation options. She helps sign up the drivers, makes sure the vehicles run smoothly, and tackles any logistical bumps along the road.

Back to top