Software Engineer - Embedded (all genders)
Core
Develop low-level drivers and software for satellite subsystems including actuators, sensors, reaction wheels, and GNSS receivers on ARM-based MCUs.
Role type
Embedded Software Engineer
Builds
Firmware for satellite equipment (actuators, sensors, reaction wheels, GNSS, star trackers)
Domain
Aerospace / Satellite Technology
Required skills
C, Python, embedded driver development, hardware debugging (SWD/JTAG), real-time operating systems, bare-metal programming, peripheral configuration (GPIO, ADC, DMA, timers), I2C/SPI communication
Preferred skills
FreeRTOS, Zephyr, ARM Cortex-M SDKs, CAN protocol, Unity/CMocka/GoogleTest, Rust
Technologies
ARM MCUs, FreeRTOS, Zephyr, C, Python, SWD, JTAG, I2C, SPI, CAN, Linux, GCC
Responsibilities
Implement low-level drivers for ARM-based MCUs and external chips; Configure peripherals from datasheets; Write and test drivers for sensors and actuators; Debug on real hardware using debuggers and logic analyzers; Write unit and integration tests; Collaborate with hardware and flight software teams on board handover and validation.
Seniority
Junior to Mid-level (up to 3 years experience)
