Senior Spacecraft Systems Engineer – Software Verified today
Role
The Senior Spacecraft Systems Engineer - Software translates system-level operational concepts, customer requirements, and architecture into detailed software requirements, verification strategies, and integrated technical solutions for complex embedded systems. You serve as a critical bridge between Systems Engineering and Software Engineering, ensuring requirements are properly decomposed, traceable, testable, and aligned to overall program objectives.
You work within Systems Engineering while collaborating day-to-day with the Software Engineering team on planning, development, integration, and verification. You define software verification approaches, required hardware/software configurations, and ensure system functionality meets mission and performance objectives.
Responsibilities
Requirements Decomposition & Flow Down
- Analyze customer, mission, and system-level requirements and decompose them into clear, verifiable software-level requirements.
- Ensure software requirements maintain traceability to higher-level system requirements, architecture, and Concept of Operations (CONOPS).
- Collaborate with systems, software, and hardware teams to refine requirements for completeness, feasibility, and technical accuracy.
- Support requirements management processes, baseline control, and change impact assessments.
- Identify requirement gaps, ambiguities, and risks early in the development lifecycle.
Verification Planning & Validation
- Develop software verification approach including verification descriptions, methods (test, analysis, demonstration, inspection), levels, and acceptance criteria aligned to system and program requirements.
- Identify required verification configurations, including hardware setups, software loads, firmware versions, and test environments.
- Support verification cross-reference matrices (VCRM), traceability matrices, and evidence packages.
- Partner with test and software teams to ensure efficient execution of planned verification activities.
Systems & Software Integration
- Serve as a technical liaison between Systems Engineering and Software Engineering teams.
- Support software integration planning, readiness reviews, and release coordination.
- Evaluate impacts of software changes to system behavior, interfaces, and verification scope.
- Participate in architecture, design, and interface reviews to ensure requirements alignment.
- Support issue resolution involving system functionality, interoperability, and software performance.
Embedded Systems & Interfaces
- Apply working knowledge of embedded systems architectures, constraints, and development environments.
- Understand hardware/software interfaces, communication protocols, and subsystem interactions.
- Support interface definition and validation between embedded devices, processors, sensors, payloads, and external systems.
- Assess integration and verification implications of firmware, software, and hardware revisions.
Program Execution & Technical Leadership
- Support Program Increment (PI) planning, staffing assessments, and execution readiness activities.
- Prioritize verification and requirements activities to meet schedule and milestone commitments.
- Mentor junior engineers on requirements quality, traceability, and verification planning.
- Drive continuous improvement in systems/software collaboration, process efficiency, and engineering rigor.
Requirements
- Bachelor's degree in Systems Engineering, Software Engineering, Computer Engineering, Electrical Engineering, or related technical discipline with 5-8 years of experience in systems engineering, software engineering, embedded systems, or integration environments.
- Experience decomposing system requirements into software-level requirements.
- Experience creating verification plans, descriptions, procedures, or acceptance criteria.
- Strong understanding of embedded systems and software development lifecycles.
- Experience with hardware/software interfaces and communication protocols.
- Ability to interpret and apply system-level CONOPS to engineering execution.
- Programming Languages: Python, C++, C, Java, Bash, or similar.
- Development Tools: Git, IDEs, debuggers, CI/CD platforms.
- Operating Systems: Linux, Windows, Unix.
- Protocols/Interfaces: TCP/IP, UDP, Serial, USB, Ethernet, APIs.
- Other Tools: Requirements tools, issue tracking systems, automated test tools.
Compensation & Benefits
Full-time employment offers include company stock options and a generous benefits package including health, dental, vision, HSA, FSA, life, disability and retirement plans.