Lead Embedded Software Engineer - Avionics
About You and The Role
The Avionics team is a group of hardware and software experts responsible for designing robust systems that power our life-saving drone delivery service in some of the toughest environments on Earth. Our team designs aircraft avionics that must excel in a wide range of harsh, real-world climates and electromagnetic interference (EMI) environments. The Avionics system is a vital part of the overall zipline aircraft system architecture, where we strive to achieve high performance and reliability while minimizing mass and cost.
As an Embedded Software Engineering Lead, you will play a pivotal role in leading the development of embedded software for our cutting-edge aircraft technology. We are looking for a hands-on leader with a strong command of embedded software development and the proven capacity to grow a high-performing team.
What You'll Do
- Lead, mentor, and grow a small but mighty team of embedded engineers by providing a clear vision and setting ambitious goals, all while maintaining a stringent focus on technical excellence.
- Provide technical leadership in system level design spanning both our Platform 1 and Platform 2 aircrafts by bringing expertise in either Linux, Microcontrollers, or Real-Time Operating Systems (RTOS).
- Cultivate a team culture that champions a bias to action and strives for radically simple designs.
- Coordinate across teams such as the electrical engineers to architect safety-critical avionics systems, which include flight computers, radios, safety systems, and communication buses.
- Create reliable drivers for peripheral devices and radios used in flight computers, such as GNSS and IMU.
- Develop a microprocessor framework to expedite firmware development processes.
- Contribute significantly to embedded software development by producing architectural documents, participating in code reviews, and occasionally implementing limited features and addressing bug fixes.
What You'll Bring
- Proven experience in leading engineering teams to successfully deliver embedded software solutions, demonstrating the level of rigor required for high-volume or safety-critical applications.
- A knack for thinking from first principles and a genuine passion for solving complex challenges.
- Experience managing multiple engineers with regards to expectations, performance feedback, and compensation.
- Deep technical expertise in embedded software engineering, with a track record of making impactful architectural-level contributions. You are an expert in one or more compiled languages suitable for real-time applications, such as C, C++, or Rust.
- Enthusiasm for team building, including the ability to identify and persuade top-tier talent to join your team.