Embedded Linux Software Engineer
1
Which company are you aiming at?
To generate precise rejection-prevention feedback and application strategy, tell us where you're targeting.
2
Send your application
You need an account so we know where to send the feedback.
The job description
Tech stack. C/C++, Embedded Linux, Yocto/Buildroot, Linux kernel drivers, device trees, systemd, D-Bus, Docker/containers on target
About the role
You will join a network equipment company building edge routers and gateways that run a full Linux distribution on custom ARM hardware. The embedded Linux team owns the board support package, kernel, and system services that every application team builds on. This role matters because the BSP is the foundation: boot reliability, driver correctness, and update safety here determine the uptime of the entire product line.
What you will achieve
- Ship a Yocto-based BSP for a new ARM64 platform, achieving cold boot to network-ready in under 30 seconds with reproducible builds verified across the team, and a documented bring-up guide that lets any engineer reproduce the build from a clean checkout
- Drive kernel driver development for custom peripherals (Ethernet PHYs, crypto accelerators, hardware watchdogs) with mainline-quality code, submitting at least one driver upstream, with code review feedback from the upstream community addressed and merged
- Reduce field update failures by hardening the A/B partition scheme and rollback logic, targeting a 99.9% update success rate measured across the deployed fleet
- Build device tree and bootloader (U-Boot) configurations that cut board bring-up time for new hardware variants to under a week, documented in a repeatable bring-up runbook
- Own system-level debugging for the trickiest failures (kernel panics, memory pressure, thermal throttling), producing root-cause reports with fixes within 48 hours of reproduction
What you will bring
Must-haves
- 2-5 years working with Embedded Linux: building images, writing drivers, or maintaining BSPs for shipping products
- Solid C skills and working C++, with kernel coding conventions including locking discipline, reference counting, and the device model
- Hands-on Yocto Project or Buildroot experience, including custom layers, image recipes, and build reproducibility
- Device tree authoring and debugging, plus U-Boot configuration and a working understanding of the full boot flow
- Experience debugging with serial consoles, JTAG, ftrace, and kernel crash analysis including vmcore or ramoops where available
- Familiarity with systemd, D-Bus, and inter-process communication patterns on embedded targets
- Git-based workflow with Gerrit or pull-request review experience in a team that takes review seriously
Nice-to-haves
- Upstream kernel contributions or maintainer relationships in a subsystem relevant to embedded
- Experience with secure boot chains and measured boot on ARM, including Trusted Firmware-A integration
- Networking stack tuning or DPDK exposure on embedded network appliances
Apple
NVIDIA
Tesla
Qualcomm
Bosch
Garmin