Rippling is looking for a Fire Control Systems Software Engineer to design, build, integrate, and validate the critical software that bridges target cueing from command-and-control systems to the safe execution of weapon employment. In this role, you will be responsible for the software that ingests target data, coordinates launcher actions, enforces safety constraints, and reports status back to the broader mission system.
What You'll Do
- Architect, implement, and test fire control and engagement management software that bridges sensors and C2 systems to launchers, interceptors, or other effectors.
- Develop core functionality such as track ingestion, target state handling, engagement state machines, weapon-target pairing, launcher/effector command sequencing, inhibit/arm/fire logic, and post-launch status management.
- Design software interfaces and message flows across radar/sensor systems, C2 nodes, launchers, effectors, simulators, and operator-facing mission software.
- Build deterministic, fault-tolerant behavior under tight timing and reliability constraints, including degraded modes, interlocks, watchdogs, and safe-state transitions.
- Translate mission and system-level requirements into clear software behavior, interface definitions, and testable acceptance criteria.
- Partner closely with systems engineering, hardware, integration/test, simulation, GNC, and product teams to deliver end-to-end capability.
- Contribute to verification and validation through SIL/HIL/HWIL environments, Monte Carlo analysis, integration labs, ground test, and live or operational test events.
- Participate in requirements reviews, design reviews, hazard analyses, FMEAs, test readiness reviews, and customer technical interchange meetings.
- Help establish engineering best practices for safety-critical and customer-facing defense software, including traceability, release discipline, field issue triage, and root-cause analysis.
- Mentor other engineers and elevate the team’s understanding of fire control architectures, government program rigor, and mission-driven development.
What We're Looking For
- Bachelor’s degree in Computer Science, Software Engineering, Electrical Engineering, Aerospace Engineering, or a related technical field.
- 6+ years of experience developing mission-critical, real-time, embedded, or distributed software systems in defense, aerospace, robotics, autonomy, or similarly demanding environments.
- Demonstrated experience building software that operates in or near the chain from target cueing and engagement planning through effector or launcher execution.
- Strong proficiency in C++ and Python.
- Experience developing on Linux and comfort working in mixed software/hardware integration environments.
- Experience with real-time messaging, low-latency communications, and distributed system coordination (e.g. DDS, UDP, TCP, ZeroMQ, CAN, or similar).
- Experience owning software through design, implementation, integration, test, and field/debug cycles.
- Ability to reason about timing-sensitive systems, concurrency, interface contracts, and failure modes.
- Strong communication skills and the ability to work directly with cross-functional teams and external stakeholders.
- U.S. citizenship and ability to obtain and maintain a U.S. security clearance.
Nice to Have
- Direct experience with fire control, battle management, engagement planning, missile defense, integrated air and missile defense (IAMD), combat systems, or launcher/effector integration.
- Working knowledge of Java, Rust, or Ada is a plus.
- Experience with safety-critical software standards (e.g., DO-178C, MIL-STD-882E, ISO 26262) and related development processes.
- Familiarity with modeling and simulation tools (e.g., MATLAB/Simulink, AFSIM, STK) for system analysis and software verification.
- Experience with containerization, orchestration, and DevOps practices in a defense software context.
- Active security clearance (Secret or Top Secret).
Technical Stack
- Languages: C++, Python, Java, Rust, Ada
- Platform: Linux
- Protocols: DDS, UDP, TCP, ZeroMQ, CAN


