Blue Origin is looking for an experienced embedded software engineer to design, implement, and verify embedded software for mission-critical spaceflight systems, specifically for the Lunar Permanence business unit which develops Blue Moon landers and related products. The goal is to build sustainable infrastructure for transporting crew and cargo to the lunar surface, contributing to Blue Origin's mission of enabling millions of people to live and work in space for the benefit of Earth.
Requirements
- Strong embedded software design and development skills in C/C++/Rust with Linux (or similar) scripting experience
- Strong debugging skills, using a mix of cross HW/SW techniques and tools (GDB, XSDB, GRMON, Logic Analyzer, Protocol Analyzer, Wireshark, etc.), and experience single stepping through code, looking at Assembly, probing memory, and driving I/O
- Strong background in computer architecture, understanding of memory buses, cache, DMA, CPU execution pipelines
- Experience with version control systems (Git)
- Experience with kernel and driver development
- Experience with software for HW-accelerated functions (encryption/decryption blocks, encoder/decoder blocks, image signal processor, GPU, etc.)
- Experience with tools and software for data analysis and post processing (Matlab, Python, open-source Linux tool)
Responsibilities
- Developing Board Support Package (BSP) software for new hardware, including driver development
- Bare-metal or OS-level programming for hardware initialization, control, embedded data processing, and networking/communication
- Hands-on work with avionics spaceflight hardware, including debugging with logic analyzers, oscilloscopes, and JTAG debuggers
- Participating in design concepts and reviews, with special attention to partitioning between HW and SW implementation
- Performing benchmark analysis and deploying benchmarking code to characterize hardware performance
- Bring up and utilization of HW-accelerators in modern SoC devices (e.g. encoders, decoders, encryption engines, image signal processing cores, etc.)
- Defining and implementing embedded SW for interfaces such as I2C, SPI, UART, TCP/IP, UDP, GMSL, SpaceWire, CameraLink, Aurora, AXI, AMBA, etc.
Other
- Willingness to learn new skills, languages, debug/development tools
- Ability to work well in a team and independently with minimal direction
- Passion for our mission and vision is required!
- Relocation provided
- May be expected to travel up to 20% to support hardware deliveries, meetings, and reviews