About the Role
Lead the definition, coordination, verification, and delivery of spacecraft software systems for advanced space observatory missions. This role supports current missions through design maturity, AI&T, launch readiness, commissioning, and operations, while also establishing software systems engineering practices for future missions. It is a software-focused systems engineering role with hands-on flight software involvement, requiring strong technical judgment, requirements ownership, interface discipline, vendor oversight, and end-to-end mission thinking.
Responsibilities
- Serve as the technical owner for spacecraft software systems engineering across flight software, command and data handling, onboard autonomy, telemetry, command interfaces, and software configuration.
- Define and maintain software-related spacecraft requirements.
- Ensure traceability across mission, spacecraft, bus, payload, ICD, FDIR, verification, and operational products.
- Identify software-related risks, gaps, ambiguities, and non-compliances.
- Ensure that software behavior supports mission performance, science data handling, timing, data latency, fault response, commandability, observability, commissioning, and operations.
- Lead or support the definition and review of spacecraft flight software behavior, onboard autonomy, and fault-management functions.
- Help define and verify FDIR behavior, including fault detection, fault isolation, recovery actions, safe modes, survival modes, autonomous responses, inhibit logic, and recovery paths.
- Ensure that fault-management behavior is consistent across the spacecraft bus, telescope, payload, instruments, ground systems, and mission operations, and that it is aligned with power, thermal, attitude, communications, safety, and operational constraints.
- Contribute directly to selected hands-on flight software activities where needed, in coordination with internal teams, vendors, and mission partners.
- Support software architecture trades.
- Review implementation details.
- Develop or review scripts and test tools.
- Support software integration.
- Debug interface issues.
- Contribute to test automation.
- Assist with validation in flatsat, simulator, EGSE, AI&T, and operations environments.
- Own or co-own the development and maintenance of command and telemetry products required for test, operations, and mission execution.
- Lead the development, review, and release of spacecraft telemetry and command dictionaries.
- Coordinate command, telemetry, data handling, timing, and software interface requirements.
- Ensure these products support AI&T, test procedures, health and status monitoring, anomaly investigation, commissioning, routine operations, and future mission reuse.
- Support the definition, release, verification, and maintenance of software-related interfaces across the full spacecraft system.
- Own or support software-relevant sections of key ICDs, including Payload–Bus, Payload–Instrument, WCC–Bus AOCS, WCC–FSM, LV–Spacecraft, ground interfaces, and telemetry and command dictionaries.
- Drive closure of software-related TBDs, TBCs, non-compliances, waivers, interface gaps, and open actions, while supporting interface-control discipline, change control, CCB reviews, and configuration management.
- Serve as a primary technical interface to spacecraft bus, telescope, instrument, payload, ground-system, and launch vehicle vendors for software-related topics.
- Review vendor software architectures, software requirements, interface definitions, FDIR implementations, command and telemetry databases, test plans, verification evidence, and operations products.
- Ensure vendor software deliveries are aligned with mission requirements, interface requirements, verification plans, AI&T needs, operational needs, and schedule constraints.
- Help define and mature the software test infrastructure required for subsystem, payload, spacecraft, and system-level testing.
- Support the definition of emulators, simulators, flatsats, EGSE interfaces, test scripts, telemetry processing tools, and software validation environments.
- Work with the AI&T team to define software integration flows, test readiness criteria, system-level test cases, verification methods, and test procedure content for command paths, telemetry paths, data handling, timing, FDIR, mode transitions, commissioning sequences, and operational scenarios.
- Support the development and execution of software-related verification and validation activities across the program lifecycle.
- Define verification methods and success criteria for software-related requirements.
- Develop or review test plans, procedures, scripts, analyses, inspections, and acceptance criteria.
- Support validation of flight software behavior, FDIR, command and telemetry products, data handling, timing, autonomy, mode transitions, and ground-spacecraft interfaces.
- Support commissioning and operations readiness by ensuring software products are validated, configuration-controlled, usable by the operations team, and ready to support flight.
- Help establish reusable software systems engineering practices for future missions.
- Support early architecture trades, proposal development, technical assessments, and internal standards for flight software requirements, command and telemetry products, FDIR architecture, software ICDs, flatsat and emulator strategies, software V&V, release management, and operations readiness.
- Work closely with systems engineering, electrical engineering, AI&T, GN&C, payload engineering, instrument teams, telescope teams, mission operations, ground systems, science teams, vendors, and contractors.
- Communicate complex software and system behavior clearly.
- Prepare concise technical summaries and decision packages.
- Proactively lead practical solutions to technical risks, interface gaps, vendor issues, and program execution challenges.
Requirements
- Bachelor’s or Master’s degree in Aerospace Engineering, Electrical Engineering, Computer Science, Software Engineering, Systems Engineering, or a related technical discipline.
- 7+ years of experience in spacecraft flight software, avionics software, embedded systems, command and data handling, mission operations software, software systems engineering, or spacecraft systems engineering.
- Experience developing, reviewing, or verifying spacecraft software requirements, interfaces, verification plans, and ICDs.
- Strong understanding of spacecraft software behavior, including flight software, command and telemetry, onboard autonomy, fault management, data handling, mode management, and spacecraft operations.
- Hands-on experience with flight software, embedded software, scripting, data analysis, test automation, software integration, or software debugging.
- Experience working with spacecraft bus, payload, instrument, ground-system, or launch vehicle vendors.
- Ability to review technical products such as software architectures, interface definitions, FDIR logic, command and telemetry dictionaries, test plans, verification evidence, and software implementation details.
- Experience with Python, C, C++, or similar programming languages.
- Excellent written and verbal communication skills and ability to work independently in fast-moving, technically complex program environments.
- 10+ years of experience in spacecraft flight software, spacecraft systems engineering, avionics, or mission-critical embedded systems.
- Experience supporting satellite development through architecture, design, AI&T, launch readiness, commissioning, and operations.
- Experience with FDIR, fault trees, FMECA, autonomy design, safe modes, survival modes, recovery logic, and fault-management verification.
- Experience developing or managing command dictionaries, telemetry dictionaries, telemetry databases, command products, operations databases, or ground-spacecraft interface products.
- Experience with flatsats, emulators, simulators, EGSE, hardware-in-the-loop testing, software-in-the-loop testing, or mission operations testbeds.
- Experience with AI&T planning, test procedure development, test scripting, telemetry validation, anomaly tracking, version control, configuration management, software release management, and software verification workflows.
- Experience reviewing or contributing to flight software implementation, embedded software, test automation, simulator development, or ground/flight software integration.
- Familiarity with spacecraft software standards, software quality practices, cybersecurity considerations, safety practices, or mission assurance processes.
- Experience working with international vendors, contractors, government agencies, scientific institutions, or complex partner-led programs.
- Passion for space science, astrophysics missions, advanced observatories, and technically ambitious space systems.
- This role requires access to U.S. export controlled information. Candidates must be a U.S. person (i.e. a citizen of the United States, a permanent resident, or a legal asylee or refugee) OR receive approval from the U.S. Government to work with U.S. export controlled information.
Skills
- Spacecraft Software Systems Engineering
- Flight Software
- Command and Data Handling
- Onboard Autonomy
- Telemetry
- Command Interfaces
- Software Configuration
- FDIR
- ICDs
- Verification
- Python
- C
- C++
- Scripting
- Data Analysis
- Test Automation
- Software Integration
- Software Debugging
- Vendor Oversight
- Requirements Ownership
- Interface Discipline
- End-to-end Mission Thinking
- Software Architecture
- Fault Detection
- Fault Isolation
- Recovery Actions
- Safe Modes
- Survival Modes
- Autonomous Responses
- Inhibit Logic
- Recovery Paths
- Command Dictionaries
- Telemetry Dictionaries
- Test Infrastructure
- Emulators
- Simulators
- Flatsats
- EGSE
- AI&T
- Commissioning
- Operations Readiness
- Configuration Management
- CCB Reviews
- Change Control
- Technical Judgment
- Communication Skills
Location
- Remote
Work Type
- Full-time
- Exempt
Experience Level
- Senior
- 7+ years
- 10+ years
Education Level
- Bachelor's degree
- Master's degree
Salary/Compensations
- $250,000 - $300,000
