Software Engineer - Simulation, Self-Driving

US-CA-San Francisco
Advanced Technologies Group - Software Engineering

Uber Overview

About Uber


We’re changing the way people think about transportation. Not that long ago we were just an app to request premium black cars in a few metropolitan areas. Now we’re a part of the logistical fabric of more than 600 cities around the world. Whether it’s a ride, a sandwich, or a package, we use technology to give people what they want, when they want it.


For the people who drive with Uber, our app represents a flexible new way to earn money. For cities, we help strengthen local economies, improve access to transportation, and make streets safer.


And that’s just what we’re doing today. We’re thinking about the future, too. With teams working on autonomous trucking and self-driving cars, we’re in for the long haul. We’re reimagining how people and things move from one place to the next.

Job Description

About the Role


As a Simulation Engineer, you will work to develop our core simulation technology which allows us to create 3D virtual environments and simulate situations to help improve our software. You will collaborate closely with autonomy developers. You will build intelligent agents and tools for scenario creation.


What You'll Do

  • Build 3D virtual environments to simulate realistic worlds and situations
  • Develop our core simulation technology


What You'll Need

  • Proficiency in C++
  • Basic working knowledge of Python or another scripting language
  • Good understanding of 3D programming, geometry and linear algebra
  • Experience with game engines such as Unity 3D and Unreal Engine 4
  • Experience with modelling and simulation environments
  • Experience developing agent behaviors, physics, gameplay, tools, or GUIs.


About the Team

At the Advanced Technologies Group (ATG), we are building technologies that will transform the way the world moves. Our teams in Pittsburgh, San Francisco, Phoenix, and Toronto are dedicated to mapping, software and hardware development, vehicle safety, and operations for self-driving technology. Our teams are passionate about developing a self-driving system that will one day move people and things around more safely, efficiently, and cost effectively.


The Simulation team develops the core technology used for simulating realistic worlds and situations in order to improve our software.



Connect With Us!

Not ready? Connect with Uber to receive future communications about opportunities and general information about specific areas of Uber that interest you.