Location
Torrance, CA, US
Salary
Not specified
Type
fulltime
Posted
Today
Job Description
As a Sr. Embedded Software Engineer, you will be a technical leader in the development of next-generation charging products. You will architect and implement full-stack embedded Linux solutions—from low-level BSP and kernel drivers to scalable Yocto distributions and automated CI/CD pipelines. By bridging the gap between hardware enablement and secure cloud-ready applications, you will ensure our platforms are highly automated, secure, and optimized for large-scale manufacturing. 1\.Core Platform \& BSP Architecture
- Define the full lifecycle of BSP development, including bootloader (U-Boot/Barebox) customization and Linux kernel tuning for ARM architectures.
- Work directly with hardware engineers to perform initial board bring-up, debugging signal integrity and power management using oscilloscopes and logic analyzers.
- Develop and maintain high-performance kernel drivers and customize Device Trees to support proprietary hardware peripherals.
2\.Yocto \& Build System Leadership
- Architect modular, scalable Yocto/OpenEmbedded layers that support multiple hardware variants from a single codebase.
- Implement advanced Bitbake techniques (shared state caches, PR servers) to reduce build times and ensure reproducible releases.
- Build and distribute cross-compilation toolchains and QEMU environments to enable "hardware- less" application development.
3\.Automation First DevOps \& CI/CD
- Design and maintain CI/CD pipelines (GitLab/GitHub Actions) that automate image generation and license compliance checks.
- Architect automated testing rigs that flash builds onto physical hardware and run functional tests (LAVA/Pytest) without human intervention.
- Develop software for contract manufacturers used in factory provisioning, unique device identification, and automated end-of-line functional testing.
4\.Security \& Lifecycle Management
- Implement a Chain of Trust using NXP HAB or TI Secure Boot, alongside encrypted filesystems and OP-TEE.
- Design and manage fail-safe, A/B partitioned update systems (e.g., Mender, RAUC) to ensure maximum uptime for field devices.
- Automate the generation of Software Bill of Materials (SBOM) to ensure audit-ready documentation and security tracking.
5\.Systems \& Application Programming
- Develop high-performance middleware and system services in C/C\+\+ that interface directly with hardware.
- Bridge the gap between low-level drivers and high-level applications, ensuring efficient data flow and resource management.
- Optimize root filesystems and boot times to meet sub-second "Time-to-First-Frame" requirements.
6\. Design for Manufacturing \& Provisioning
- Architect the "First-Boot" process and develop automated tools for MAC address assignment, serial number injection, and hardware verification.
- Collaborate with hardware designers to ensure test points and debug interfaces are accessible for automated test fixtures (JTAG/Bed-of-Nails).
- Implement automated injection of unique device identities (X.509 certificates) and secure keys during the manufacturing flow.
Essential Qualifications
- BS or MS in Computer Science, Computer Engineering, Electrical Engineering or a related field.
- 4\+ years of industry experience developing C/C\+\+ based applications on embedded Linux.
- 2\+ years of experience with build tools such as Make and CMake.
- Strong scripting and automation skills using languages such as Bash or Python.
- Deep experience in microcontroller development with a native understanding of I2C, SPI, UART, and SDIO.
- Experience with implementing CI/CD pipelines using tools like GitLab CI, GitHub Actions, etc.
- A proven passion for low-level Linux development and a "CLI-first" mindset.
- The stamina to navigate 6,000\+ page SoC reference manuals without hesitation.
- A genuine curiosity and a track record of being a lifelong learner.
Desired Qualifications
- Experience with Buildroot and/or Yocto-based build systems for embedded devices.
- Experience in kernel driver development
- Hands-on experience with containerization technologies like Docker.
- Experience with web-based communication protocols, especially gRPC and WebSockets.
- Experience working with CAN and Modbus communication interfaces.
- Experience with Agile development methodologies and using tracking tools like Jira and JAMA
- Experience with designing software to meet functional safety e.g., UL1998, UL5500, etc.
THIS IS WHERE YOU’LL WORK:
Department: Charging \& Energy
Location: California (Torrance, Irvine, Palo Alto)
Looking for more opportunities?
Browse thousands of graduate jobs and entry-level positions.