Yocto Kernel Embedded Linux Engineer
Posted
Yocto Kernel - Embedded Linux Engineer
Location & Work Model
On-site: Andover, MA
Position Overview
We are seeking an experienced Yocto Kernel / Embedded Linux Engineer to design, develop, customize, and maintain embedded Linux platforms for our next-generation products. The ideal candidate will have deep expertise in the Yocto Project, Linux kernel customization, BSP development, and low-level system debugging.
Key Responsibilities
Develop, configure, and optimize Yocto-based Linux distributions for embedded platforms.
Customize and maintain Linux kernel, including patching, driver integration, and board-specific configuration.
Create and manage BSP layers, recipes, and meta-layers for various hardware platforms.
Integrate and maintain device drivers (I2C, SPI, UART, GPIO, etc.) and ensure hardwaresoftware compatibility.
Debug system-level issues using tools such as GDB, strace, perf, ftrace, and kernel logs.
Support bootloader (U-Boot) configuration, customization, and optimization.
Collaborate with hardware, firmware, and application teams to ensure seamless system integration.
Conduct performance tuning, system profiling, and memory optimization for embedded targets.
Ensure security best practices, including secure boot, trusted execution, and Linux hardening.
Prepare technical documentation, build instructions, and release notes.
Required Skills & Qualifications
Bachelor's or Master's in Electrical Engineering, Computer Engineering, Computer Science, or related field.
38+ years of hands-on experience in embedded Linux development.
Strong expertise in the Yocto Project, BitBake recipes, layers, and cross-compilation.
Solid understanding of Linux kernel internals, configuration, customization, and debugging.
Experience writing or modifying Linux device drivers.
Proficiency with embedded toolchains, build systems, and version control (Git).
Experience with bootloaders (U-Boot) and board bring-up.
Strong knowledge of hardware interfaces (I2C, SPI, GPIO, PCIe, USB, etc.).
Fluent in C/C++ and shell scripting.
Hands-on experience with ARM-based or similar embedded architectures.
Preferred / Nice-to-Have Skills
Experience with Yocto-based CI/CD pipelines.
Knowledge of real-time patches (PREEMPT_RT).
Familiarity with virtualization or container technologies (Docker, LXC) for embedded use.
Exposure to security frameworks (SELinux, AppArmor).
Understanding of OTA update frameworks (Mender, SWUpdate).
Knowledge of networking stacks (TCP/IP, IPv6) and protocol debugging.
Soft Skills
Strong problem-solving and root-cause analysis ability.
Excellent communication skills and ability to work in cross-functional teams.
Ownership mindset and ability to work independently.
Strong documentation and organizational skills.
