Back to Careers
Principal / Senior Embedded Flight Software Engineer
Spacecraft & Payload Systems
Apply NowAbout this role
Pulse develops laser-based systems for space. You will be one of the owners of the flight software across our spacecraft and payload processors. C/C++ and/or Rust, embedded Linux, RTOS, bare metal when it calls for it. The stack is early and the big decisions are still being made. Today that means you write boot code, device drivers, control loops, fault management, and command/telemetry. You also help shape the toolchain and infrastructure. As the team grows, you will assist in hiring and lead the software engineers who join us.
In this role, you will
- Bring up flight processors from bare board to running OS. Bootloader, BSP, first serial output. Whether the target runs embedded Linux or an RTOS depends on the application
- Write device drivers for spacecraft peripherals (SPI, I2C, UART, SpaceWire, CAN)
- Take control algorithms from Simulink prototypes to flight code
- Build and maintain the command and telemetry stack. Ground commands in, housekeeping data down, handling for lost packets, corrupted frames, and link interruptions
- Build and maintain the fault management layer. Define what the spacecraft does when a sensor goes silent, a temperature exceeds limits, or a watchdog fires
- Build and maintain the development infrastructure. Cross-compilation toolchain, CI pipeline, hardware-in-the-loop test harnesses
- Chase down the bugs that only show up when the processor, the FPGA, and the sensors are all talking at once
What you bring
- You’ve shipped embedded software on real hardware. More than once. Spaceflight heritage strongly preferred
- C/C++ and Rust on embedded targets. Strong in at least one, motivated to work in both. Bare metal, RTOS, and embedded Linux
- You understand real-time constraints at the register level. Interrupt priorities, DMA, cache coherence, missed deadlines
- You can set up cross-compilation toolchains, CI pipelines, and automated test, not just use them
- You write clearly. Other engineers build to your ICDs, test procedures, and design rationale
- BS or MS in Computer Science, Computer Engineering, Electrical Engineering, or Aerospace Engineering 8+ years for senior, 12+ for principal
What will set you apart
- You’ve selected a flight computer, RTOS, or toolchain for a new program and lived with the consequences
- You’ve dealt with radiation effects, single-event upsets, and code you cannot easily patch
- You’ve helped grow an embedded software team, not just worked on one