Senior Software Engineer – Command & Control
$155,000–$180,000
Apply (opens in a new tab)Senior Software Engineer – Command & Control
Posted 6 days ago
SENIORITY
Lead
SALARY
$155,000–$180,000
About the role
- Join a venture-backed software company building modern infrastructure for satellite operations. Its platform allows commercial and government customers to command, monitor and operate different spacecraft and constellations through one scalable software environment.
- The company was founded by experienced engineers and satellite operators who wanted to replace fragmented, highly customized ground systems with modern, reusable software.
- Approximately 70 employees with an engineering-led culture
- Meaningful equity and direct product influence
- Software supporting real commercial and government missions
- Small teams with significant technical ownership
- Opportunity to build foundational products rather than maintain legacy systems
- Collaborative environment spanning software, aerospace and mission operations
- Build command-and-control services primarily using Python and/or Rust
- Translate interface-control documents and protocol specifications into production software
- Develop command encoders and telemetry decoders
- Implement serialization, packetization, message framing and validation
- Build reusable adapters for different spacecraft and communication protocols
- Route commands and telemetry between backend services, ground stations and remote systems
- Handle acknowledgements, retries, timeouts, malformed messages and communication-state changes
- Process continuous or high-rate telemetry streams
- Design APIs and services supporting mission and ground-system operations
- Troubleshoot issues across application software, protocols, networks and connected hardware
- Build simulators and testing tools for spacecraft and ground-system integrations
- Deploy and support services within containerized and distributed environments
- Own capabilities from requirements and architecture through testing, deployment and production support
- Collaborate with backend, platform, mission integration and aerospace engineering teams
- At least three years of professional software engineering experience
- Strong production experience with Python and/or Rust
- Experience building backend services, APIs or distributed applications
- Experience integrating software with remote hardware, devices or external systems
- Understanding of communication protocols and message formats
- Experience with serialization, packetization, framing or structured data processing
- Ability to handle failures, retries, timeouts, validation and communication-state management
- Strong Linux and networking fundamentals
- Experience testing, debugging and supporting production systems
- Ability to clearly explain personal ownership, technical decisions and engineering tradeoffs
- Comfortable operating within a fast-moving startup environment
- Relevant Transferable Backgrounds
- Satellite ground software or mission operations
- Telecom and network infrastructure
- Robotics or autonomous vehicles
- Unmanned aerial systems
- IoT and connected devices
- Industrial automation and controls
- Defense command-and-control systems
- Distributed sensor networks
- Radios, modems and software-defined radio systems
- Embedded communications software with ground-side integration
- Spacecraft command and telemetry experience
- High-rate telemetry processingCCSDS, CSP, CFDP, XTCE or MIBProtocol Buffers, ASN.1 or comparable serialization technologiesTCP, UDP, gRPC or message-broker experienceREST API development
- Docker and KubernetesAWS or other cloud environmentsCI/CD and automated integration testing
- Hardware-in-the-loop testing
- Spacecraft, vehicle or device simulators
- DevSecOps or secure software development
- Rust experience
- You can take an interface or protocol specification and turn it into reliable production software
- You understand the complete path of a command and its resulting telemetry
- You can identify failures across the sender, protocol, network, receiver and hardware
- You personally own services from design through deployment and operational support
- You can work with high-volume data without losing reliability or observability
- You communicate technical concepts clearly and distinguish your individual contribution from the broader team's work
- You are comfortable learning unfamiliar spacecraft protocols and customer systems
- You balance reusable architecture with the practical needs of active missions
Before you apply
Applying takes about a minute. These four things decide how fast it moves after that.
Your profile is current
It's what we read first. Occupations, seniority and locations matter more than a long history.
Two examples you can talk through
Not a portfolio — just two pieces of work where you can explain the decisions and what you'd change.
A number in mind
What you're on now and what would make you move. We negotiate better when we know both.
Your notice period
Employers plan around it, and it's the question that stalls offers most often.
Once you apply, someone reads it and calls you before anything reaches the employer — usually within two working days.
