> Markdown version of [/jobs/ext/4216044-software-engineer](https://www.wearedevelopers.com/jobs/ext/4216044-software-engineer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Software Engineer - **Company:** Zipline - **Location:** South San Francisco, CA, United States - **Experience:** Expert - **Salary:** $160,000.0 - $250,000.0 - **Contract:** Permanent contract - **Skills:** Systems Engineering, C++ (Programming Language), Communications Protocols, Datasheets, Software Debugging, Distributed Systems, Memory Management, Linux on Embedded Systems, Ethernet, Firmware, Software Maintenance, Software Engineering, Concurrency, Build Management - **Published:** October 26, 2026 - **Apply:** https://startup.jobs/staff-embedded-firmware-engineer-zipline-10559640 ## About the Role * 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 * Our team uses a hybrid in-office and distributed work environment, centered around our headquarters in South San Francisco, CA. You must be able to work from the office on a regular basis. ## Description 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. What You'll Do * 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.