Back to jobs
Logo of Zipline
Zipline
Actively hiring

Senior/Staff Linux Kernel Engineer - Avionics SW

Workplace
On-site
Commitment
Full-time
Seniority
Senior
Salary
$170,000-230,000/yr
Posted
Location
South San Francisco, United States

About Zipline

Zipline is the world’s largest and most experienced drone delivery service. We are on a mission to serve all humans equally by ensuring access to food, medicine and essential goods anytime, anywhere. We design, build, and operate the world’s largest autonomous logistics system, delivering critical supplies quickly and reliably. Today, Zipline operates on four continents, makes a delivery somewhere in the world every 30 seconds, and has completed millions of deliveries to date, including blood, vaccines, medical supplies, food, and retail products.

Our customers include the world’s largest and most prominent healthcare systems, governments, retailers, restaurants and global businesses who rely on us to save lives, reduce emissions, increase economic opportunity, and provide delivery from point A to point B as fast as possible. The drone is only 15% of what we’ve built to enable seamless, reliable, global operations.

Our system strengthens supply chains, reduces congestion, and gives people time back. With more than 140 million commercial autonomous miles safely flown, Zipline is redefining access to healthcare, consumer products, and food across the globe.

We operate at a global scale and are looking for practical problem solvers who thrive on real-world challenges and rapid growth. Our team is motivated by building systems that have a direct, meaningful impact on people’s lives and by scaling the future of logistics. We are seeking people who sculpt from first principles, enjoy facing adversity, and can do the impossible at record breaking speeds.

About You and The Role

We're looking for an experienced Linux kernel engineer to own and solve hard problems across hardware, firmware, kernel, and userspace on our embedded flight computers. You will set the technical direction for the kernel and platform work, as well as bring up new hardware, develop and maintain kernel drivers, and debug system-level issues, and shape how we build and validate kernel software as the platform scales to millions of deliveries every single day.

As a Senior or Staff Linux kernel engineer at Zipline, you will be responsible for stability and performance of the Linux kernel, which is the foundation of our flight computers. The kernel operates as a safety-critical software layer that will enable our aircraft to safely make millions of deliveries a day. You'll own the kernel drivers, hardware bring-up, and system-level debugging that the rest of the flight software stack depends on.

You will work closely with hardware, firmware, platform, networking, and flight software teams, from the first boot of a new board to diagnosing rare failures across a deployed fleet. You'll help define what "ready to ship" means and build the validation that backs it up.

You will also help build reusable kernel tooling, diagnostics, and automated tests that level up our systems' observability and reliability. At the Staff level, you will set the technical direction for kernel and platform work, not just execute it.

What You'll Do

  • Diagnose crashes, hangs, races, driver failures, and performance or timing problems across a deployed fleet using crash dumps, kernel traces, logs, and telemetry, and turn rare field failures into reproducible tests.
  • Drive ambiguous, cross-system issues from investigation to validated resolution, then invest in tooling, testing, and architecture so they don't come back.
  • Develop, debug, and maintain Linux kernel drivers and related subsystems, and own them end to end.
  • Design for failure: define how the kernel and drivers detect, contain, and recover from faults (watchdogs, error handling paths, graceful degradation), and verify that behavior on real hardware.
  • Bring up new hardware, including device tree configuration, firmware interfaces, and board-support software.
  • Build diagnostics, benchmarks, and automated tests that catch regressions before they ship.
  • Measure and improve latency, throughput, CPU and memory use, and networking performance.
  • Serve as a technical reviewer for kernel and driver changes, and maintain our patch stack across kernel upgrades.
  • Write and review design docs, and drive cross-team technical decisions to consensus with hardware, firmware, platform, networking, and flight software teams.
  • Mentor engineers and raise the team's bar for code quality, debugging practice, and testing.
  • Contribute patches upstream and track upstream regressions that affect us.

What You'll Bring

  • 7+ years of professional Linux kernel work, including ownership of at least one driver, subsystem, or hardware bring-up from start to finish.
  • Strong C and deep familiarity with kernel internals: scheduling, interrupts, concurrency, memory management, DMA, MMIO, and the Linux device model.
  • A record of debugging on real hardware and reading datasheets or interface specs to find root causes.
  • Fluency with kernel debugging and measurement tools such as ftrace, perf, dynamic debug, and crash analysis, and the habit of validating fixes with data.
  • Comfort with the upstream patch workflow.
  • Experience writing design docs, leading technical efforts across teams, and mentoring other engineers.
  • Clear written and verbal communication, including explaining a subtle kernel problem to people who don't work in the kernel.
  • Bachelor's degree in Computer Science, Computer Engineering, Electrical Engineering, or a related field, or equivalent practical experience.

Experience in one or more of these areas is a plus:

  • PCIe, Ethernet/NIC drivers, DMA, IOMMU, MSI/MSI-X, or Linux networking
  • Embedded Linux, ARM64, device tree, or board bring-up
  • Real-time systems, PREEMPT_RT, or latency analysis
  • eBPF, XDP, or high-performance networking
  • Kernel CI, stress testing, or performance regression testing
  • Upstream kernel contributions, or maintaining a product kernel
  • Hardware debugging tools, firmware, bootloaders, or test automation scripting

What Else You Need To Know

The starting cash range for this role is $170,00 - $230,000; please note that this is a target, starting cash range for a candidate who meets the minimum qualifications for this role. We are always open to negotiation. The final cash pay for this role will depend on a variety of factors, including a specific candidate's experience, qualifications, skills, working location, and projected impact. The total compensation package for this role may also include: equity compensation; overtime pay; discretionary annual or performance bonuses; sales incentives; benefits such as medical, dental and vision insurance; paid time off; and more.

Zipline is an equal opportunity employer and prohibits discrimination and harassment of any type without regard to race, color, religion, age, sex, national origin, disability status, genetics, protected veteran status, sexual orientation, gender identity or expression, or any other characteristic protected by federal, state or local laws or our own sensibilities.

We value diversity at Zipline and welcome applications from those who are traditionally underrepresented in tech. If you like the sound of this position but are not sure if you are the perfect fit, please apply!

Voluntary Self-Identification

For government reporting purposes, we ask candidates to respond to the below self-identification survey. Completion of the form is entirely voluntary. Whatever your decision, it will not be considered in the hiring process or thereafter. Any information that you do provide will be recorded and maintained in a confidential file.

As set forth in Zipline ’s Equal Employment Opportunity policy, we do not discriminate on the basis of any protected group status under any applicable law.