Job Summary:
As a Lead Embedded Linux Engineer, you will own the design and development of a custom Linux distribution built with Yocto. You will work with a number of internal stakeholders to: derive requirements, plan and execute the development of the distribution, test the distribution on prototypes in a lab environment, deploy over-the-air updates, and eventually grow a team dedicated to this work.
Responsibilities:
- Leading the development of custom Linux distribution
- Creating Board Support Packages for existing and new hardware
- Creating and maintaining layers and recipes
- Supporting multiple CPU architectures (ARM, x86, etc.)
- Porting the distribution to new platforms
- Creating tooling to support satellite and telecommunications software engineers
- Designing and implementing mechanisms to support OTA updates on production satellites
- Be the Linux expert (kernel, CPU-architecture, general device-drivers, etc.) on the engineering team
- Working in a small, agile team to manage the software development lifecycle (requirements definition, design, implementation, test, and verification)
Required Qualifications:
- A Bachelor’s degree (or higher) in Software, Electrical, Aerospace, or in a related engineering field
- 7+ years of experience building and shipping embedded Linux distributions
- Expert knowledge of C/C++, Git, and Yocto/OpenEmbedded
- Expert knowledge of embedded Linux configuration, development, board support packages, bootloaders, kernel, and drivers
- Experience with root cause analysis, and advanced troubleshooting at the kernel-level
- Experience working with common protocols such as RS-232, SPI, I2C, and CAN
- Experience with hardware-in-the-loop integration and testing
- Demonstrated experience with all phases of the software development life cycle
- Great communication skills and experience working with cross-disciplinary teams
Experience Required:
- Experience with PREEMPT_RT
- Experience developing and testing software for SmallSats / CubeSats
- Experience using CI/CD to produce release artifacts
- Experience with Docker
- Experience creating container images from Yocto artifacts