Software Engineer III, Simulation
About the Role
Agility Robotics is building the world's most capable humanoid robots, and we're looking for a senior engineer to help build the simulation software at the foundation of it. You'll be one of the first engineers on a new Simulation team, working alongside the team's leader to shape its technical direction, architecture, and infrastructure from the ground up.
You'll work at the intersection of physics simulation, hardware abstraction, and robot learning, partnering closely with our AI, Controls, Perception Sensors, Hardware Interfaces, Quality Assurance, and Systems Integration teams to build simulation environments that accelerate development, provide insights into the system, and enable rapid validation.
This role is hybrid (3 days on-site per week at one of our offices).
About the Work
Design, build, and own core components of Agility's simulation stack as a founding member of the Simulation team
Develop the hardware abstraction layer connecting sensors, actuators, and physical hardware to simulation environments
Develop and integrate physics simulators using open-source frameworks, with a focus on fidelity, performance, and sim2real transfer
Build and maintain high-fidelity models of new and existing robots, including kinematics, dynamics, mass properties, actuator and transmission models, and contact behavior
Build robust automated pipelines from hardware design, to robot model, to system-identification, allowing new hardware designs to rapidly be used in sim
Use simulation to train RL policies, generate synthetic data and evaluate end-to-end models
Use simulation to evaluate proposed robot designs, running trade studies on things like actuator sizing, link geometry, range of motion, and sensor placement, and turn the results into clear recommendations for design teams
Validate models against physical hardware data and improve fidelity where simulation and reality diverge
About You
Technical
2+ years of professional software engineering experience in robotics, simulation or an adjacent industry or a PhD in robotics or computer science
Strong proficiency in modern C++ and Python
Experience with at least one major robotics physics simulator (MuJoCo, Isaac Sim, Gazebo, or similar)
Experience building rigid-body robot models (URDF, MJCF, USD, or similar)
Experience with cloud infrastructure and compute at scale
Solid grasp of standard software development practices: Git, CI/CD, Jira or equivalent, feature branching
Collaboration
Comfortable working across hardware and software teams and translating between different technical vocabularies
Able to take ambiguous problems, break them down, and drive them to working solutions with minimal direction
Education
B.S., M.S., or Ph.D. in Robotics, Computer Science, Mechanical Engineering, or a related field
Bonus Points
Experience with humanoid or legged robots
Experience with CAD-to-simulation pipelines (e.g., Onshape, SolidWorks, or Creo exports)
Experience with system identification or parameter estimation from hardware data
Background in mechanical engineering or mechatronics alongside software
Advanced degree (M.S. or Ph.D.) with research in simulation, multibody dynamics, or robot modeling
Experience using simulation to train and evaluate policies
This is a fully remote role with the option to work hybrid if a commutable distance from our Salem, OR, Pittsburgh, PA, or Fremont, CA offices.
The final salary offered to a successful candidate will be dependent on several factors that may include but are not limited to: market location, job-related knowledge, skills, and experience. This range may change based on geographical location and may be modified in the future.
Anticipated Base Salary Range
$144,000—$225,000 USD
Anticipated Salary Range
$144,000—$225,000 USD