A

Atoms

Builds robots for food, mining and transport

Senior Software Engineer - Simulation

Software EngineeringConfirmed live in the last 24 hours
Full-timeSan Francisco, CA, USA

About the Job

Requirements

  • A bachelor's degree in Computer Science, Robotics, Electrical Engineering, or a related field with at least 5 years of software engineering experience, or a master's degree with at least 3 years of experience.
  • Proficiency in C++ and Python, including the ability to read, navigate, and debug large codebases.
  • Experience building and operating data or test infrastructure at scale, including 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, including camera, LiDAR, and radar.
  • Practical understanding of determinism and reproducibility, including clock control, seed management, and 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 on-site five days a week in San Francisco.

Responsibilities

  • Build the log-replay 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.
  • Build the scenario-execution layer to run scenarios identically every time, including clock control, seed and configuration management, and results traceable to a software version.
  • Integrate simulation into continuous integration, maintain commit, nightly, and regression workflows, and keep failures attributable.
  • Implement pass criteria and metrics used to judge releases, and reporting that reduces batches of failing runs to an actionable list.
  • Run large simulation batches efficiently, track the cost of a simulation run, and reduce it as volume grows.
  • Build interfaces, visualizations, and command-line tools that make the platform usable by engineers who did not build it.
  • Work with autonomy and robotics teams on failure definitions, and with bench and hardware-in-the-loop engineering on the path from simulation to bench to vehicle.

About the Company

Atoms

Builds robots for food, mining and transport

Atoms builds machines and software that automate physical work in food, mining, and transport, and it makes specialized robots that each do one productive job rather than general-purpose humanoids. Its flagship business, CloudKitchens, builds delivery-only kitchens that restaurants rent to cook meals for delivery apps. At mines and quarries, its Pronto system adds sensors and driving software to existing haul trucks so they run on their own, while Otter software gathers restaurants' delivery-app orders in one place; Atoms earns money from kitchen rent, software subscriptions, and mining customers. The company was founded in 2016 and is based in Los Angeles, United States.

Company size
1,001-5,000
Company stage
Late Stage VC
Total funding
$1.7B
Headquarters
Downtown Los Angeles, CA
Founded
2016

Recently Posted Jobs

Explore more opportunities at Atoms

See more jobs