Senior Engineer - Robotic Simulation
Advanced simulation is a critical pillar at AIM, allowing us to move quickly and safely while developing
cutting edge control, planning, and safety components. This role requires proven experience with physics and
interactive vehicle dynamics, preferably in a high-scale setting.
Responsibilities
As a Senior Robotic Simulation Engineer at AIM you will be expanding the boundaries of what's possible in
advanced, earth-moving robotics by designing and building simulation software for cutting edge autonomy and
enabling AI and Robotics engineers to iterate quickly by providing fast, realistic simulation in dynamic and
modifiable terrain.
- Collaborating with cross-functional teams, including software, hardware, and systems engineers
- Working with AI, firmware, and systems engineers to spec and build AIM's next generation simulation
software
- Simulating vehicle dynamics and behavior in modifiable terrain
- Supporting Hardware-in-the-loop (HIL) testing for firmware through the use of hardware integration
interfaces
- Building out a reliable, hosted simulation system with the optionality to allow super fast or highly
accurate testing of AIM's autonomous systems
Qualifications
- Highly Proficient in C++ programming
- Experience using or integrating with a high-level language (e.g. Python or Node)
- Experience with a major simulation platform (e.g. Nvidia Omniverse, Unreal, Unity)
- Knowledge working with physics engines (e.g. Genesis, Algoryx, ProjectChrono, MuJoCo)
- Experience with communication protocols for integration and control (e.g. GRPC, TCP/UDP Sockets)
- Familiarity with sensor representation and simulation
- Understanding and application of simulation to real-world scenarios
- Proficiency in a modern version control system like git
- B.S. or higher degree in Computer Science, Engineering, Mathematics, Physics, or equivalent experience
Nice to Have
- Familiarity with real-time computation constraints and GPU accelerated physics. (e.g. CUDA, OpenGL)
- Familiarity with soil simulation or analysis
- Understanding of numerical computing techniques e.g. finite element method (FEM), Smoothed-particle
hydrodynamics (SPH), Discrete element method (DEM).
- Machine learning and/or Robotics experience
- Knowledge of AI planning, constraint satisfaction, and linear/mixed-integer programming
- Distributed systems or services design experience
- Experience with 3D model creation
- Animation and rigging skills