SlipstreamJobs tracks this role from the company's public career site. Apply directly on the employer's site.
Salary: USD 191,000 - 253,000 / annual
Anduril Industries is a defense technology company building advanced military systems powered by Lattice OS, an AI-powered operating system for real-time command and control. The Software Integration Environment (SIE) team builds the platform Anduril uses to test software under realistic conditions—real binaries running on real services in controlled environments across AWS, Azure, and on-premise infrastructure.
This role focuses on the simulation layer of the SIE platform. You will design and build C++ services that allow independent simulators to share a common world with unified time management, entity namespacing, and clear ownership models. You'll own the wire layer (protocol encoding/decoding, multicast/unicast transport, interoperability), make simulation runs deterministic and reproducible for evidence-grade results, and build scenario authoring tooling and content catalogs for engineers and operators.
Key responsibilities include:
- Design and implement C++ services for federated simulation (time management, entity registry, join/resign lifecycle, state distribution)
- Own protocol encoding, decoding, and transport layers enabling cross-vendor simulator interoperability
- Ensure deterministic, reproducible simulation runs with time control, replay, and divergence instrumentation
- Build scenario and laydown authoring tools and resource catalogs for saving, tagging, and reusing environment definitions
- Profile and optimize for performance under load with hundreds to thousands of entities
- Integrate with the broader platform (Go services, gRPC/protobuf APIs, web UI)
- Set technical direction, write design documents, and mentor as the team grows
- Partner with Anduril business lines during platform onboarding, converting integration work into documentation and SDKs
- Work directly with internal teams and external customers to convert requirements into shipped capability
This is a new area with wide scope. You will be one of the first engineers, setting technical direction and making architectural decisions. Expect ambiguity: simulation standards are decades old, implementations vary widely, and the correct design for Anduril's constraints is not yet established. You will work end-to-end—design, implement, ship, operate, and iterate.
REQUIREMENTS:
- 7+ years of professional software engineering experience
- Deep, current production experience in modern C++ (C++17 or newer): fluent in ownership and lifetime, move semantics, templates, and standard library
- Experience building networked, concurrent, or real-time systems in C++, including multithreading, synchronization, and associated failure modes
- Strong systems fundamentals: memory layout and allocation behavior, cache effects, sockets and UDP/TCP, serialization, Linux
- Demonstrated ability to profile and optimize real systems, reasoning about latency and throughput with data rather than intuition
- Experience owning ambiguous, cross-cutting projects end-to-end and driving them to production
- Experience working directly with engineering teams consuming your work—integrating them, unblocking them, incorporating feedback
- Comfortable working in at least one other language alongside C++ (platform uses Go and TypeScript)
- Strong written and verbal communication; able to write design documents for skeptical evaluation
- Computer Science degree or equivalent industry experience
- Eligible to obtain and maintain an active U.S. Secret security clearance
PREFERRED QUALIFICATIONS:
- Bias for action and ownership; track record of fixing problems beyond formal scope
- Experience with distributed simulation and interoperability standards (DIS/IEEE 1278, HLA/RTI/IEEE 1516, TENA, or equivalent)
- Experience with simulation engines, physics/flight dynamics models, game engines, or discrete-event/time-stepped simulation frameworks
- Experience with software-in-the-loop, hardware-in-the-loop test systems, robotics simulation, or synthetic training environments
- Experience making distributed systems deterministic or reproducible (logical clocks, lockstep execution, record/replay)
- Experience with gRPC/protobuf or designing binary protocols and schema evolution
- Experience running C++ services on hardware or containers on Kubernetes
- Experience with monorepos and modern build systems (Bazel, Buck, Nix)
- Experience with virtualization or hypervisor technologies (KubeVirt, qemu)
- Experience with GPU programming, rendering, geospatial or terrain data
- Experience building developer tooling or platform products with real users
- Active U.S. Secret or higher security clearance