Senior Spacecraft Systems Engineer – Software
About the role
CesiumAstro is actively seeking passionate, collaborative, energetic, and forward-thinking individuals to join our team as a Senior Spacecraft Systems Engineer – Software. We take pride in our dynamic and cross-functional work environment, which allows us to learn, develop, and engage across our organization. If you are looking for hands-on, interactive, and autonomous work, CesiumAstro is the place for you.
To conform with the United States Government Space Technology Export Regulations, the applicant must be a U.S. citizen, lawful permanent resident of the U.S., conditional resident, asylee or refugee (protected individuals as defined by 8 U.S.C. 1324b(a)(3)), or eligible to obtain the required authorizations from the U.S. Department of State.
Responsibilities
- Translate system-level operational concepts, customer requirements, and architecture into detailed software requirements, verification strategies, and integrated technical solutions for complex embedded systems.
- Serve as a critical bridge between Systems Engineering and Software Engineering, ensuring requirements are properly decomposed, traceable, testable, and aligned to overall program objectives.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
Qualifications
- 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.
Pay
$133,000 – $161,000 a year
Benefits
- Company stock options.
- Health, dental, vision, HSA, and FSA benefits.
- Life and disability insurance.
- Retirement plans.