We're a successful, fast-growing startup building complex systems that run on custom Linux platforms in demanding, real-world environments. We're looking for a Linux Kernel Developer who's comfortable working deep in the stack - from drivers and subsystems to boot and memory management - and who wants to own kernel-level quality as our products scale.
In this role, you'll design, develop, and debug kernel code and low-level Linux components that power our hardware platforms. You'll work closely with embedded software engineers, systems engineers, and hardware teams to ensure our platforms are stable, performant, and production-ready.
This is a hands-on role suited for someone who enjoys solving hard problems close to the metal in a lean engineering organization.
What you will do:
* Design, develop, and maintain Linux kernel code, including drivers, subsystems, and kernel modules
* Port, configure, and optimize the Linux kernel for custom hardware platforms
* Write and maintain device drivers for a range of interfaces (e.g., I2C, SPI, UART, USB, PCIe, Ethernet)
* Debug and resolve kernel panics, race conditions, memory issues, and other low-level system failures
* Profile and optimize kernel and driver performance, including boot time, latency, and power consumption
* Work with bootloaders (e.g., U-Boot) and board bring-up for new hardware revisions
* Collaborate with hardware engineers during board bring-up and hardware/software integration
* Upstream patches where appropriate, and track relevant upstream kernel changes and CVEs
* Contribute to kernel configuration, build systems (e.g., Yocto, Buildroot), and CI integration
* Document kernel architecture decisions, driver interfaces, and debugging procedures in a way that's practical and reusable
What you bring to this role:
* 5+ years of experience developing in C, with deep familiarity with Linux kernel internals
* Proven experience writing and debugging Linux device drivers and kernel modules
* Solid understanding of:
* Kernel subsystems (memory management, scheduling, filesystems, networking)
* Linux boot process and bootloaders
* Concurrency, locking, and interrupt handling in kernel space
* Experience with embedded Linux build systems (Yocto, Buildroot, or similar)
* Comfort working directly with hardware during bring-up, debugging with tools like JTAG, oscilloscopes, or logic analyzers
* Strong debugging skills using tools such as gdb, ftrace, perf, kgdb, or crash dump analysis
* Comfortable working independently and taking ownership in a lean startup environment
Bonus points for the following:
*Upstream Linux kernel contribution experience
* Experience with real-time Linux (PREEMPT_RT) or other real-time operating systems
* Familiarity with security-hardening practices for embedded Linux (secure boot, kernel hardening)
* Experience with version control systems (Git) and kernel patch workflows (mailing lists, git send-email)
* Exposure to multiple CPU architectures (ARM, RISC-V, x86)
* Experience with CI/CD pipelines for embedded or system-level software
Additional Requirements
This is a fast-paced, high-impact environment - flexibility to occasionally work extended hours or weekends during critical periods is expected.

