
Software Engineer (Simulation & Robotics Engineer)
Skydio
Job description
-
We are looking for a software engineer to build and evolve the core of the Skydio Simulator — a high-fidelity, real-time digital replica of the physical world used both by customers and by Skydio’s autonomy engineers every day
-
In this role, you will work deep in the simulator stack: from physics and sensor simulation, to hardware emulation, to the core architecture that runs our full autonomy software in simulation
-
You will help define how simulated worlds behave, how vehicles perceive and interact with them, and how closely simulation mirrors reality
-
This is a systems-heavy role focused on correctness, performance, and realism
-
Core Simulator Architecture: Design, implement, and evolve the foundational architecture of the Skydio Simulator, ensuring it scales across vehicle types, environments, and use cases
-
Physics and Dynamics: Improve and extend physics models governing vehicle motion, interactions with the environment, and dynamic agents
-
Sensor and Hardware Simulation: Build high-fidelity simulations of cameras, IMUs, and other onboard components, including timing, noise characteristics, and hardware behavior
-
Autonomy Stack Integration: Run and validate the full Skydio autonomy stack in simulation, ensuring consistency between simulated and real-world behavior
-
Feature Development on Top of the Core: Implement simulator capabilities that unlock new workflows for customers and internal autonomy engineers, from training scenarios to advanced testing modes
-
Performance and Fidelity: Profile, optimize, and improve simulator performance while continuously pushing realism and accuracy
-
Develop core simulator components in C++ and Python, working close to real-time constraints
-
Collaborate with autonomy, perception, and controls engineers to align simulation behavior with real-world systems
-
Debug complex interactions between physics, sensors, autonomy logic, and rendering
-
Help shape the long-term technical direction of the simulator as both a product and an internal platform
-
Contribute to documentation and shared understanding of how the simulator works internally- Prior robotics experience is not required, but curiosity about physical systems and an interest in autonomous robots is essential
-
Experience building complex systems where performance, determinism, or correctness matter
-
Comfort reasoning about time-synchronized systems, state machines, or real-time execution
-
Ability to work in a large, evolving codebase with multiple stakeholders
-
Strong software engineering experience with C++ and Python
-
Interest in robotics, simulation, or physical systems (prior robotics experience is a plus, not a requirement)
-
Robotics, simulation, game engines, or real-time systems
-
Physics engines, sensor modeling, or hardware abstraction layers
-
Experience debugging systems that span software and physical behavior
-
Multithreaded or low-latency system design