Software Engineer Ii, Behavior Simulation

Aurora Innovation Aurora Innovation · Robotics · Mountain View, CA · Software Autonomy Action

Software Engineer II role focused on building a simulation engine for self-driving technology, specifically simulating systems downstream of perception, developing realistic actor behaviors, and creating infrastructure tooling for motion planning simulations. This involves hands-on software development in C++ and Python, contributing to engineering best practices, and tackling simulation and autonomy behavior evaluation challenges.

What you'd actually do

  1. Develop software in standard C++17 and Python, using modern best practices. This is a hands-on software development role.
  2. Contributing to engineering best practices on a large and complex code base.
  3. Have an opportunity to tackle end-to-end simulation and autonomy behavior evaluation challenges across various areas of the autonomy system, including motion planning, mapping, localization.
  4. Design and develop critical simulation and offline testing engines and tools.
  5. Create and extend software for world entities, adaptive behavior, pathfinding, road networks, computational mathematics, spatial queries, collision detection, vehicle control, vehicle dynamics, etc.

Skills

Required

  • C++
  • software performance issues
  • design tradeoffs
  • robotics
  • computer science
  • software development
  • mathematics

Nice to have

  • C++ software design
  • linear algebra
  • computational geometry
  • numerical methods
  • rigid body simulation
  • Lie groups
  • modern geometry