Senior Software Engineer, Distributed Simulation (C++)
Seattle, WA - USA
Job Summary
The Software Integration Environment (SIE) team builds the platform Anduril uses to test software the way it will actually be flown driven and fought: real binaries running on real services under conditions we control. We provision isolated reproducible environments for simulation and integration testing at scale across AWS Azure and on-premise. The platform is used both internally by Anduril engineers and externally by our was the first half of that problem. The second half is the simulated world those binaries run inside how it gets authored how heterogeneous simulators agree on it and how an engineer inspects and trusts what happened during a run. That is what this role owns.
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.
- 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
- 7 years of professional software engineering experience
- Deep current production experience in modern C (C17 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
US Salary Range
$191000 - $253000 USD
The salary range for this role is an estimate based on a wide range of compensation factors inclusive of base salary only. Actual salary offer may vary based on (but not limited to) work experience education and/or training critical skills and/or business considerations. Highly competitive equity grants are included in the majority of full time offers; and are considered part of Andurils total compensation package. Additionally Anduril offers top-tier benefits for full-time employees including:
At Anduril we invest in our people. Our comprehensive competitive benefits package (available at little to no cost to employees) ensures youre supported in health recovery and whatever comes next.For more information Explore Our Benefits.
Anduril is committed to maintaining the integrity of our Talent acquisition process and the security of our candidates. Weve observed a rise in sophisticated phishing and fraudulent schemes where individuals impersonate Anduril representatives luring job seekers with false interviews or job offers. These scammers often attempt to extract payment or sensitive personal information.
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.
- Please always verify communications:
- Direct from Anduril: If you receive an email from one of our recruiters it will only come from an
@address. - Via Agency Partner: If contacted by a recruiting agency for an Anduril role their email will clearly identify their agency. If you suspect any suspicious activity please verify the agencys authenticity by reaching out to .
- Direct from Anduril: If you receive an email from one of our recruiters it will only come from an
Exercise Caution with Unsolicited Outreach:If you receive any communication that appears suspicious contains grammatical errors or makes unusual requests do not engage. Always confirm the senders email domain is @ before providing any personal information or clicking on links.
What to Do If You Suspect Fraud:Should you encounter any questionable or fraudulent outreach claiming to be from Anduril please report it immediately to. Your proactive caution is invaluable in protecting your personal information and upholding the security and trustworthiness of our recruitment efforts.
To view Andurils candidate data privacy policy please visit submitting your application you consent to Anduril Industries using a third-party service provider to conduct pre-employment risk integrity and due diligence screening and assessing potential risks as part of your application process. This third-party service provider provides risk-intelligence services that may include analysis of sanctions and watchlists adverse media public-record information and other lawful open-source or commercial data sources. This third-party service provider does not act as a consumer reporting agency. Use of this provider helps to ensure compliance with applicable laws and protect technology intellectual property and organizational security.
Required Experience:
Senior IC