As part of a small, passionate and accomplished team of experts, you will be responsible for designing, implementing, and verifying re-usable software components and tools for various spaceflight systems. You will share in the team's impact on all aspects of re-usable, safety-critical component development, qualification, and delivery. Together, our teams create the building blocks required to deliver on-board and ground software that monitors and controls fully autonomous spacecraft. This position will directly impact the history of space exploration and will require your dedicated commitment and detailed attention towards safe and repeatable spaceflight.
- Collaborate with multidisciplinary teams to create tools and clients that communicate with real-time embedded software to support control and diagnostics of human capable spacecraft for both orbital and sub-orbital programs.
- Define and develop verifiable requirements and software designs.
- Write code to implement designs in Python, C#, C/C++.
- Design and write tests to assure code meets safety critical standards and functions.
- Help guide the ecosystem around common software clients and tooling.
- Minimum of a B.S. degree in computer engineering, computer science, electrical engineering, mathematics, physics or related field
- 5+ years of software development or testing experience including multi-threaded programming experience in C/C++.
- Strong software development skills in a higher level language (Python, Java, C#).
- Hands on experience with Continuous Integration pipelines
- Hands on experience with testing frameworks
- Excellent written, verbal, and interpersonal communication skills
- Must be a U.S. citizen or national, U.S. permanent resident (current Green Card holder), or lawfully admitted into the U.S. as a refugee or granted asylum.
- Experience with safety-critical software development
- Experience working with and designing networking protocols
- Experience designing robust APIs and interfaces.
- Hands on experience with Linux, Docker, GNU toolchain, MATLAB/Simulink, real-time operating systems, serial communications, IP networking, and developing secure systems.