Senior Software Engineer, Distributed Systems (Rust)
Builds and maintains a resilient, low-latency mesh network that connects autonomous military systems across contested environments using Rust, gRPC, and custom routing protocols.
- Compensation
- $191K–$253K / yr
- Location
- Seattle, Washington, United States
- Work setup
- Not specified
- Seniority
- Senior
- Employment
- Full time
- Experience
- 5+ years
- Category
- Software engineering
- Posted
Skills
Must have
- Bachelor's degree in Computer Science, Engineering, or a related field, or equivalent experience
- 5+ years of professional software engineering experience, with a focus on distributed systems
- Solid distributed-systems fundamentals. You can reason about delivery guarantees, ordering, consistency, partition behavior, and failure modes, and explain why a given design does or doesn't converge.
- Production experience building or operating messaging systems, RPC frameworks, databases, or other distributed infrastructure
- Depth in a systems language (Rust, C, C++, or Go). Depth matters more than the specific language; we'll teach you Rust if you have the fundamentals.
- Working knowledge of networking: TCP/UDP, sockets, MTU, TLS/mTLS
- Familiarity with asynchronous programming (async/await, event loops, futures)
- Comfort with Protocol Buffers and/or gRPC
- A bias toward shipping and owning your work. The team is small, and what you build is what the rest of the platform runs on.
- Must be eligible to obtain and maintain a U.S. Secret security clearance
Nice to have
- Production Rust
- Experience with gossip protocols, epidemic broadcast, or peer-to-peer overlay networks
- Familiarity with link-state routing (OSPF, IS-IS) or BGP
- Experience with deterministic simulation, fault injection, or property-based testing of distributed systems
- Experience with systems that run in resource-constrained or intermittently connected environments
- Ability to read packet captures and debug with tcpdump or Wireshark
- Familiarity with Kubernetes and container orchestration
Full description
Anduril Industries is a defense technology company with a mission to transform U.S. and allied military capabilities with advanced technology. By bringing the expertise, technology, and business model of the 21st century’s most innovative companies to the defense industry, Anduril is changing how military systems are designed, built and sold. Anduril’s family of systems is powered by Lattice OS, an AI-powered operating system that turns thousands of data streams into a realtime, 3D command and control center. As the world enters an era of strategic competition, Anduril is committed to bringing cutting-edge autonomy, AI, computer vision, sensor fusion, and networking technology to the military in months, not years.
ABOUT THE TEAM
Lattice is the software platform behind Anduril's autonomous systems. The Data Distribution team owns how data moves through it: the Distributed Service Bus (DSB), a messaging layer that carries every track, sensor reading, command, and video stream between nodes.
DSB runs on robots deployed at the edge, over networks that are slow, lossy, and sometimes gone entirely: tactical radios, satellite links, and wired networks, often all at once. Nodes join, leave, and get partitioned all the time. That makes this a distributed systems problem in the textbook sense, with consistency, delivery guarantees, and failure handling all in play, but with real bandwidth limits and real consequences when it doesn't work.
The team is small and the system is in active development. It's a good time to join if you want a large surface area and real ownership.
WHAT YOU'LL DO
- Messaging semantics. DSB provides pub/sub, reliable request/response, and ordered bidirectional streams with flow control. You'll design the delivery guarantees, retry and acknowledgement behavior, and backpressure that sit behind each one, and decide what each guarantee costs on a link that drops packets.
- Routing across a changing mesh. Topology changes constantly, and a node may have several paths to the same destination. You'll work on OSPF-style link-state routing, multi-path link selection, and prefix-based routing, and on keeping routing state convergent when the network splits and rejoins.
- Gossip and state dissemination. Subscription tables, topology, and node metadata have to propagate across the mesh without flooding it. You'll design and tune gossip protocols and reason about how and when they converge.
- Operating under constrained bandwidth. Some links carry a few kilobits per second. You'll build priority-based QoS scheduling, compression, and protocol-level optimizations so that the important traffic gets through first.
- gRPC over the mesh. You'll extend our gRPC proxy layer so existing services can talk to each other over DSB without changes, including service discovery, retries, and timeouts across unreliable links.