Staff Embedded Software Engineer, Flight
A rocket company at the core, Relativity Space is on a mission to become the next great commercial launch company. Meeting the needs of a growing demand for space infrastructure, our rockets will revolutionize how we connect and communicate on Earth by getting satellites to space. We have developed a vertically integrated technology platform in which we leverage additive manufacturing, artificial intelligence, and autonomous robotics to 3D print rockets. Our unique approach enables rapid product iteration, allowing us to push the boundaries of what's possible today and unlock the full potential of 3D printing for tomorrow. Join us on this extraordinary journey, as we work together to transform our vision into reality.
Relativity is seeking a highly motivated Senior/Staff Software engineer to join the Flight Software team. This position is part of a software organization with top talent from diverse industries (automotive, aerospace, industrial automation and FAANG) that works closely with Avionics, Guidance Navigation and Control, Propulsion, Test Operations, and many partner teams to define and deliver real time and mission critical flight software for Terran R.
What you’ll do:
As a Flight Software Engineer, you will have a major role in the full life cycle of Flight Software from gathering requirements, defining architecture, development, integration to the commissioning and support of test and launch operations.
- Define and refine software requirements and design criteria with partner teams.
- Write concise documentation such as Concept of Operations, Interface Control Documents, and Software Design Documents.
- Architect and deliver core flight software with a strong focus on meeting system and performance requirements such as latency, allowed jitter, and control frequency.
- Work closely with GNC engineers to integrate complex algorithms for vehicle ascent and re-entry, descent and landing.
- Work closely with Embedded Software Engineers and Avionics to integrate vehicle sensor data such as GPS, IMU, Radar, and to control vehicle equipment such as valves, thrust vector controls, and landing grid fins.
- Develop telemetry system that prioritizes, filters, stores and forwards, and encodes/decodes telemetry to RF format, and routes that data through ground stations and to data centers.
- Support the development and integration of testing infrastructure such as HITL (Hardware-In-The-Loop) and HOOTL (Hardware-Out-Of-The-Loop) and physics and fluid sims.
- Build automated unit, integration and system level tests in CI/CD.
- Focus on maximizing the team's velocity by defining processes, best practices, integrating modern tools and technologies, and mentoring junior engineers.
What you need to know:
- An undergraduate or graduate degree in a relevant engineering discipline (Electrical Engineering, Computer Engineering, Computer Science, Aerospace Engineering).
- Excellent verbal and communication skills.
- Expert in Rust, C++, and/or other system languages.
- Expert in algorithms and data structures.
- Expert with developing real time embedded applications.
- Expert in Operating System concepts such as memory management, CPU shielding, scheduling, etc.
- Experience with software development processes including: source control, bug tracking, and CI/CD.
- Demonstrated experience working collaboratively in cross-functional teams.
Nice to haves but not required:
- Experience with developing software to a safety standard and achieving formal certification with a governing body (e.g. NASA, FAA, FDA, etc.).
- Familiarity with performing Hazard Analysis, FMEA (Failure Mode and Effect Analysis) and Root Cause Analysis, and familiarity with FDIR (Fault Detection Isolation, Recovery) concepts.
- Experience with developing fault and failure tolerant system and knowledge of voting and internal state synchronization.
- Experience with micro-service architectures.
- Experience with systems-level programming like synchronization primitives, memory management, etc.
- Experience with different inter-process communication methods.
- Experience with networking protocols (UDP vs TCP), OSI layers. switching and routing.
- Experience with message passing protocol such as flatbuffer or protobuf.
- Experience developing for ARM platform.
- Experience with Docker.
- Experience with Python.
Relativity Space offers competitive salary and equity, a generous vacation policy, an annual L&D stipend and more!
We are an equal opportunity employer and value diversity at our company. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.
Compensation is only one part of our entire total rewards package. To see some of the benefits & perks we offer, please visit here: https://px.sequoia.com/relativityspace