E-Space logo
E-SpacePosted 1 month ago

Linux Kernel Developer (Mid-to-Senior Level)

On-siteSaratoga, California, United States

Full TimeSenior LevelSmall

Job Summary

Design, develop, and maintain Linux kernel code, including drivers, subsystems, and modules for custom hardware platforms. Port, configure, and optimize the kernel for specific devices while writing and debugging drivers for interfaces like I2C, SPI, UART, USB, PCIe, and Ethernet. Resolve kernel panics, race conditions, and memory issues, then profile performance metrics including boot time, latency, and power consumption. Collaborate with hardware engineers during board bring-up and work with bootloaders to ensure stable, production-ready systems. Contribute upstream patches, track CVEs, and manage build systems and CI integration. Document architecture decisions and debugging procedures for reuse. This hands-on role suits candidates comfortable solving hard problems close to the metal in a lean startup environment.

Required Qualifications

  • 5+ years of experience developing in C
  • 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)
  • Solid understanding of: Linux boot process and bootloaders
  • Solid understanding of: 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
  • Must be able to work nights and weekends
  • Full time, exempt position
  • hold work authorization for the location of this role

Desired Qualifications

  • 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

Hiring someone like this?

Get your role in front of qualified candidates on Sorce.

Get started

Apply to this job in one click with Sorce

Apply on Sorce