Embedded Flight Software Engineer
Inversion Space
Turning Space into a Transportation Layer for Earth
This next-generation class of space vehicle will finally be able to provide high-frequency return of research, goods, supplies, and equipment that is critical for all future commercial activities and supply chains in space. With launch costs at an all-time low and dropping, now is the time to build these round-trip capabilities. Inversion has ambitious goals with strong financial backing to make this a reality.
- Write and test software for spacecraft, including drivers, networking, fault management, and attitude control interfaces
- Work with vendors to interface with sensors, actuators, and other hardware components
- Assist in creating and executing tests, including HITL (hardware in the loop) testing, integration testing, and unit testing
- Assist with ground control and mission operations
- Assist in architecting flight software for future vehicles
What It Takes:
- 3+ years of experience building, debugging, and supporting operations for complex semi-autonomous real-time embedded software systems in C/C++
- Spacecraft preferred, but also open to experience with UAVs, deep sea ROVs, etc
- Experience developing hardware drivers using serial protocols such as SPI, I2C, UART, CAN, RS485
- 2+ years experience with microcontroller development
- Comfortable using git for version control and code review
What We’d Love:
- Experience with real-time software development on STM32 microcontrollers with FreeRTOS
- 5+ years working on an embedded flight software team with a shared code base
- Code has flown in space!
- Experience using gitlab CI to automate build artifacts and testing
- Experience using Cubesat Space Protocol over CAN
- Experience collaborating with GNC engineers and helping to integrate their algorithms (bonus points if you’ve helped develop the internals too)
- Experience supporting mission operations to debug and patch flight software on orbit
- Experience working with closed loop HITL (Hardware In The Loop) test setups
- Experience developing HITL hardware emulators in addition to flight software (bonus points if in Simulink)
- Comfortable wiring up electronics and debugging with an oscilloscope or logic analyzer
- Experience developing embedded real-time Linux applications
- Experience developing HDL for FPGAs that interface with embedded real-time Linux applications
- Experience doing Linux Kernel development using Petalinux or something similar
Software Team Culture:
- Enthusiastic about space exploration - we love what we build here, and we want to see it fly!
- Enjoys coding, debugging, and collaborating with others
- Cares about writing code that is easy to understand, test, and reuse
- Cares about clear and descriptive code and naming conventions (especially for command/telemetry)
- Cares about keeping source code and repositories organized
- Good at spotting opportunities to generalize and/or autogenerate code
- Willing to contribute time to necessary evils such as documentation, ground software, continuous integration, and unit testing in addition to fun flight software
- Willing to engage in design review with others before coding up a storm
- Can accept constructive criticism in a code review
- Willing to listen, learn, teach, and ask for help
Additional Requirements:
- Position may require extended work hours and weekend work.
Where You’ll Be:
- Our office headquarters is located in Torrance, CA. All jobs require you to work onsite unless otherwise stated in the job description.
- If working remote is an option, other major metropolitan locations in the U.S. with relevance to the space industry may be possible.
- Travel may be required (up to 30%) for this role.
The California annual base salary for this role is currently $120,000 - $190,000. Pay Grades are determined by role, level, location, and alignment with market data. Individual pay will be determined on a case-by-case basis and may vary based on the following considerations: interviews and an assessment of several factors that are unique to each candidate, job-related skills, relevant education and experience, certifications, abilities of the candidate and internal equity.
Something looks off?