Physics simulation position at Open Robotics

We’re growing the team here at Open Robotics!

In addition to the position described below, we have other openings.

Send your Application Materials to

Software Engineer: Simulation Physics

Develop and maintain the physics subsystem of the Gazebo robotic simulator. This position involves a mix of c++ software development and modeling of multi-body dynamics (Newton, Euler, and Lagrange). We are looking to improve our software interfaces to support more open source physics solvers and characterize performance and accuracy with benchmark tests.

Roles and Responsibilities

  • Maintain and improve API for abstraction layer between physics engines with interface to standard data formats (URDF, SDFormat)
  • Implement models and controllers in the simulator for robotic applications in multiple domains, including tuning parameters and debugging collision detection and numerical methods in the physics solver
  • Write benchmark tests to characterize simulator performance and accuracy
  • Full lifecycle application development
  • Support, maintain and document software functionality
  • Software testing, code review, and quality assurance

Skills / Job Requirements

  • BS/MS/PhD in Computer Science, Mechanical Engineering, or a related field (compensation commensurate to degree and experience)
  • Mathematics: Linear Algebra, Differential Equations, Numerical Methods
  • Physics: Calculus-based physics (mechanics), Multi-body dynamics
  • Several years of software development experience with C/C++

Nice to Have’s

  • Experience as a user of physical simulation software
  • Experience with Computational Geometry, Feedback Control, Robot Kinematics
  • Programming experience with open source physics solvers (ODE, Bullet, Simbody, DART, Siconos, etc.)
  • Experience developing and maintaining open-source software
  • Extensive knowledge of software development in Linux
  • Experience with software development using Microsoft Visual Studio

Application Material

  • Cover letter, in which you introduce yourself and explain your interest in joining our team
  • Resume/CV
  • Link(s) to code sample(s), ideally in a publicly accessible repository
  • Two references and/or two letters of recommendation

Send your Application Materials to