Senior Software Engineer, Simulation
Senior Software Engineer building the log-replay and scenario-execution core of Atoms' robotics simulation platform: turning recorded robot logs into deterministic, replayable, scored test cases, wiring simulation into CI, and building reporting and tooling for other engineers. C++ and Python, robotics sensor data, onsite in San Francisco.
- Compensation
- $195K–$246K / yr
- Location
- San Francisco, CA
- Work setup
- Not specified
- Seniority
- Senior
- Employment
- Full time
- Experience
- 3+ years
- Category
- Software engineering
- Posted
Skills
Must have
- Bachelor's degree in Computer Science, Robotics, Electrical Engineering, or related field with 5+ years of software engineering experience, or a master's with 3+ years
- Proficiency in C++ and Python, including reading, navigating, and debugging large codebases
- Experience building and operating data or test infrastructure at scale (pipelines, batch execution, storage and indexing)
- Experience with simulation, log replay, or large-scale automated testing for robotics or autonomous vehicles
- Working experience with a robotics middleware and its logging and replay tooling
- Experience handling autonomous driving or robotics sensor data across multiple modalities and timestamps (camera, LiDAR, radar)
- Practical understanding of determinism and reproducibility (clock control, seed management, configuration pinning)
- Experience integrating test workloads into continuous integration
- Working fluency with modern AI coding and agentic development tools
- Clear written communication covering design notes and test results
- Willingness to travel occasionally to deployment and test sites
- Ability to work onsite five days a week in San Francisco
Full description
Who we are
Atoms is building the machines that power the next era of progress.
Over the last decade, software has transformed the digital world. But the physical world, where food is made, minerals are mined, goods are moved, and industries are run, remains far less intelligent, far less efficient, and far more constrained. We’re changing that.
Atoms builds Physical AI— real-world robots for the industries that move civilization forward, starting with food, mining, and transport. Our systems are designed to understand, predict, and control the real world with precision, turning complex physical operations into something more reliable, more scalable, and more productive.
This work requires more than robotics. It requires deep integration across hardware, software, AI, operations, manufacturing, and real estate. We don’t just build machines in a lab. We deploy them into real environments, operate them, learn from them, and improve them until they work at scale.
We are roboticists, engineers, operators, and builders. We believe the next great technology companies will not only transform information, but the physical systems that shape everyday life.
If you want to work on hard problems with real-world impact, join us.
About the role
We are seeking a Senior Software Engineer to build the log replay and scenario execution systems at the core of our simulation platform. In this role, you will take a recorded log from storage, to a replayable test case, to a scored result, and own the execution, determinism, and reporting in between. You will do this across on-road and off-highway programs, and you will own the tooling other engineers use to run scenario suites.
What you’ll do
- Log replay. Build the pipeline that converts recorded logs into replayable test cases, including ingest, indexing, retrieval, and replay of a specific run on demand. Implement open-loop scoring against ground truth and closed-loop replay where the simulated machine is allowed to diverge.
- Scenario execution. Build the execution layer that runs a scenario identically every time, including clock control, seed and configuration management, and results traceable to a software version.
- Continuous integration. Integrate simulation into CI. Maintain the commit, nightly, and regression workflows, and keep failures attributable.
- Metrics and reporting. Implement the pass criteria and metrics a release is judged against, and the reporting that reduces a batch of failing runs to an actionable list.
- Scale and cost. Run large batches efficiently, track the cost of a simulation run, and reduce it as volume grows.
- Tooling. Build the interfaces, visualizations, and command-line tools that make the platform usable by engineers who did not build it.