Embedded Firmware Engineer

ZiplineSouth San Francisco, CA
Hybrid

About The Position

Zipline aircraft depend on embedded firmware to execute critical flight and safety functions across a network of microcontrollers and embedded Linux computers. This software must perform reliably as aircraft move from manufacturing into delivery operations at field sites around the world, including locations that are difficult to access over a network. You will own C++ firmware and supporting tools that are critical to the safety and operation of these systems. While making the system more observable and easier to diagnose at scale. Working alongside electrical, mechanical, embedded Linux, and systems engineers, you will turn hardware behavior and flight data into reliable, maintainable software for deployed aircraft.

Requirements

  • Strong software engineering skills and production experience writing C++ for embedded or resource-constrained systems.
  • Experience with embedded communications, such as Ethernet, serial interfaces, or other hardware communication protocols.
  • Experience designing and debugging real-time firmware, including task scheduling, interrupts, concurrency, synchronization, and memory constraints.
  • Experience building and maintaining real-world deployed embedded systems, and handling the long tail of edge cases to ensure consistent safety, reliability, and high performance
  • A systems mindset and intuition for debugging; when anything could be wrong, you know how to narrow down the possibilities.
  • Fluency in implementing peripheral drivers based on electrical schematics and datasheets, and debugging at this boundary in order to support prototype hardware evaluation

Responsibilities

  • Design and build C++ firmware for a distributed system of aircraft microcontrollers.
  • Develop reliable Ethernet, serial, and other microcontroller communication interfaces.
  • Define platform-level interfaces and reusable firmware components that support multiple aircraft subsystems.
  • Own the predictable and reliable performance of our microcontroller systems and the communication buses that connect them, across startup, real-time operation, fault handling, and recovery.
  • Optimize real-time behavior, including CPU utilization, memory usage, scheduling latency, timing jitter, and resource contention
  • Develop metrics, monitoring and troubleshooting capabilities to prepare the system for field deployment at scale
  • Develop Rust-based tooling and software-in-the-loop simulations to test and validate firmware behavior.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service