Senior Embedded Software Engineer
Develops embedded Linux firmware, kernel modules, and security features like secure boot for sleep fitness hardware products. Requires 5+ years in firmware with C/C++ and deep Embedded Linux expertise; onsite in San Francisco office.
About the job
What You'll Help Build
- Embedded Linux Development: Design, develop, and maintain system software, including systemd applications, kernel modules, and low-level firmware for the Pod.
- Platform Security Engineering: Own security for our embedded Linux platform across boot, OS, and runtime services.
- Secure Boot and Chain of Trust: Implement and maintain secure boot end-to-end, including signing, key management/provisioning, and anti-rollback/versioning.
- Security and Trust: Build and operate device trust primitives and drive security best practices across the fleet.
- Manufacturing and Deployment: Partner with global teams, including manufacturing teams in China, to develop production tests and ensure high-quality product launches.
- Craftsmanship and Attention to Detail: Strive for excellence in software design, reliability, and maintainability, ensuring robust and well-documented implementations.
What You'll Need to Succeed
- 5+ years of experience in firmware and system software development with C/C++.
- Deep expertise in Embedded Linux, including Yocto, Bitbake, systemd, and kernel development.
- Proficiency in secure software development for IoT and embedded systems.
- Experience optimizing compute workloads in resource-constrained environments.
- Willingness and ability to travel internationally as needed to support manufacturing and deployment.
Preferred Experience
- Experience implementing secure boot on embedded Linux devices, including signing, key management/provisioning, and anti-rollback.
- Hands-on experience with OP-TEE / Trusted Execution Environments, including building and deploying Trusted Applications and integrating secure services with Linux.
- Expertise in wireless communication standards (Bluetooth, Wi-Fi, etc).
- Strong problem-solving skills with a fast-paced and iterative development approach.
Skills
C++, Embedded Linux, Yocto, Bitbake, Systemd, Linux Kernel, Op-Tee, Secure Boot, Bluetooth, Wi-Fi
Similar jobs
Embedded Engineering jobsDesign and develop reliable sensor and compute platform software for autonomous vehicles, spanning device drivers through application-level systems. The role requires 6+ years of experience, strong C++ and concurrency expertise, and deep Linux real-time systems knowledge.
Leads systems engineering for autonomous battery-electric rail vehicles, defining architectures and requirements while driving integration, verification, and validation across hardware, firmware, and command-and-control software. Requires a relevant engineering or computer science degree and at least five years working with complex hardware systems.
Leads the technical direction and implementation of safety-critical vehicle controls, from actuator control and trajectory tracking through fleet-scale calibration and deployment. The role also mentors the controls team and requires production software experience, vehicle controls expertise, and strong numerical optimization foundations.
Develops C/C++ software, firmware, integrations, and manufacturing tools for YubiKey devices and custom embedded hardware platforms. The role requires 5+ years of software engineering experience, embedded development expertise, and familiarity with Windows or Linux internals.
Owns end-to-end modem algorithm definition, implementation, and validation for a high-performance satellite communications ground-network platform. Requires a bachelor’s degree, 5+ years of relevant experience, strong digital communications expertise, and experience deploying waveform processing into SDR or FPGA systems.