> Markdown version of [/jobs/ext/2979692-senior-software-engineer-distributed-simulation-c](https://www.wearedevelopers.com/jobs/ext/2979692-senior-software-engineer-distributed-simulation-c). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Senior Software Engineer, Distributed Simulation (C++) - **Company:** Anduril Industries - **Location:** Seattle, WA, United States - **Experience:** Expert - **Salary:** $191,000.0 - $253,000.0 - **Contract:** Permanent contract - **Skills:** Application Programming Interfaces (APIs), C++ (Programming Language), Code Review, Encodings, Serialization, Software Debugging, Software Design Documents, Linux, Programming Tools, Distributed Systems, Game Engine, Protocol Buffers, Hardware-In-The-Loop Simulation, Interoperability, Multicasting, Quick EMUlator (QEMU), Distributed Simulation, Webui, Software Engineering, Transmission Control Protocol (TCP), TypeScript, Virtualization Technology, Real Time Systems, Gpu Programming, Build Management, Kubernetes, Information Technology, Low Latency, Build Tools, Decoding, C++14 - **Published:** September 18, 2026 - **Apply:** https://www.clearancejobs.com/jobs/9177811/senior-software-engineer-distributed-simulation-c ## About the Role * 7+ years of professional software engineering experience * Deep, current production experience in modern C++ (C++17 or newer) - you are fluent in ownership and lifetime, move semantics, templates, and the standard library * Experience building networked, concurrent, or real-time systems in C++, including multithreading, synchronization, and the failure modes that come with them * Strong systems fundamentals: memory layout and allocation behavior, cache effects, sockets and UDP/TCP, serialization, and Linux * Demonstrated ability to profile and optimize a real system, and to reason about latency and throughput with numbers rather than intuition * Experience owning an ambiguous, cross-cutting project end-to-end and driving it to production * Experience working directly with the engineering teams who consume what you build - integrating them, unblocking them, and taking their feedback into the next version * Comfortable working in at least one other language alongside C++ - the surrounding platform is Go and TypeScript, and you will touch both * Strong written and verbal communication - you can write a design document that a skeptical reader can evaluate * Computer Science degree or equivalent industry experience * Eligible to obtain and maintain an active U.S. Secret security clearance, * You have a bias for action and taking ownership. You have a track record of fixing a problem when you see one, including problems that are not formally yours. * Experience with distributed simulation and interoperability standards - DIS (IEEE 1278), HLA/RTI (IEEE 1516), TENA, or equivalent proprietary federation layers * Experience with simulation engines, physics or flight dynamics models, game engines, or discrete-event and time-stepped simulation frameworks * Experience with software-in-the-loop or hardware-in-the-loop test systems, robotics simulation, or synthetic environments used for test and training * Experience making a distributed system deterministic or reproducible, including logical clocks, lockstep execution, or record and replay * Experience with gRPC/protobuf, or with designing binary protocols and schema evolution * Experience running C++ services on hardware or containers on Kubernetes, or otherwise operating what you build * Experience or interest working in monorepos with modern build systems like Bazel, Buck, Nix, etc. (we use Bazel) * Experience with virtualization or hypervisor technologies (KubeVirt, qemu) * Experience with GPU programming, rendering, or geospatial and terrain data * Experience building developer tooling or a platform product with real users, and iterating on their feedback * An active U.S. Secret or higher security clearance ## Description We are looking for a Senior Software Engineer with deep C++ and real-time systems experience to build the simulation layer of the SIE platform. This is a systems software role: you will design and write the services that let independent simulators share one world - a common clock, a common entity namespace, and a clear model of who owns what - and the tooling that lets users author, reuse, and debug the scenarios they run. This is a new area with a wide surface. You will be one of the first engineers on it, which means you will set the technical direction, make the architectural calls, and be accountable for them. Most of your time is spent building, but not all of it: you will periodically work alongside the teams adopting the platform, onboarding Anduril business lines and integrating their simulators with it. Expect ambiguity: the standards in this domain are decades old, the implementations in the wild vary wildly in quality, and the correct design for our constraints is not written down yet. We expect you to work end-to-end - design, implement, ship, operate, and iterate. WHAT YOU'LL DO * Design and build the C++ services that federate independent simulators into a single simulated world - time management, entity registry and ownership, join/resign lifecycle, and state distribution * Own the wire layer: protocol encoding and decoding, multicast and unicast transport, and the interoperability work required to make simulators built by different teams and vendors talk to each other * Make simulation runs deterministic and reproducible enough that a result is evidence, not a demo - including time control, replay, and the instrumentation that explains a divergence * Build and generalize the scenario and laydown authoring tooling that engineers and operators use to describe what they want to run * Build the content and resource catalogs that let users save, tag, search, and reuse environment and scenario definitions instead of rebuilding them each time * Chase down performance: profile hot paths, control allocation and copying, and hold latency and throughput budgets under load with hundreds to thousands of entities * Integrate with the rest of the platform - the Go services that provision and schedule compute, the gRPC/protobuf APIs that expose it, and the web UI the team owns * Set the technical direction for this area, write the design docs that make it reviewable, and raise the bar through code review and mentorship as the team grows * Partner with Anduril business lines when they onboard onto the platform - work alongside their engineers to get their simulators, models, and test workflows integrated, and stay with them until it works in their hands and not just yours * Reduce the cost of that onboarding over time by turning the integration work you do by hand into documentation, reference integrations, and SDKs, so the next team can self-serve * Work directly with the internal teams and external customers who need this, and convert what they tell you into shipped capability, To ensure your safety and help you navigate your job search with confidence, please keep the following critical points in mind: * No Financial Requests: Anduril will never solicit payment or demand personal financial details (such as banking information, credit card numbers, or social security numbers) at any stage of our hiring process. Our legitimate recruitment is entirely free for candidates. ## Related Videos - [Docker network without Docker](https://www.wearedevelopers.com/videos/1418-docker-network-without-docker) - [WeAreDevelopers LIVE - "Fun and games - and all that comes with it", Back to BASIC & more](https://www.wearedevelopers.com/videos/1719-wearedevelopers-live-fun-and-games-and-all-that-comes-with-it-back-to-basic-more) - [Docker exec without Docker](https://www.wearedevelopers.com/videos/1094-docker-exec-without-docker) - [Remote Driving on Plant Grounds with State-of-the-Art Cloud Technologies](https://www.wearedevelopers.com/videos/251-remote-driving-on-plant-grounds-with-state-of-the-art-cloud-technologies) - [Answering the Million Dollar Question: Why did I Break Production?](https://www.wearedevelopers.com/videos/1171-answering-the-million-dollar-question-why-did-i-break-production) - [Discover the open source trio you didn’t expect: .NET and PostgreSQL on Linux](https://www.wearedevelopers.com/videos/2042-discover-the-open-source-trio-you-didn-t-expect-net-and-postgresql-on-linux) ## Related Articles - [How We Built a Worry-Free System That Runs for 10+ Years – And What We’d Do Again](https://www.wearedevelopers.com/magazine/751-how-we-built-a-worry-free-system-that-runs-for-10-years-and-what-we-d-do-again) - [Dev Digest 121 - AI goes offline](https://www.wearedevelopers.com/magazine/456-dev-digest-121-ai-goes-offline) - [Dev Digest 120 - Apple and peers](https://www.wearedevelopers.com/magazine/455-dev-digest-120-apple-and-peers) - [ I Gave a Video Editor More Autonomy Than a Trading Bot. On Purpose.](https://www.wearedevelopers.com/magazine/773-i-gave-a-video-editor-more-autonomy-than-a-trading-bot-on-purpose) - [Résumé-Driven Development: How IT trends affect the job market for software developers](https://www.wearedevelopers.com/magazine/59-resume-driven-development-how-it-trends-affect-the-job-market-for-software-developers) - [Dev Digest 132 - Binging WADFlix?](https://www.wearedevelopers.com/magazine/473-dev-digest-132-binging-wadflix)