Senior Device Driver Engineer – Linux Kernel Development - Home Working Multi Year Contractor opportunity
Build the Software That Powers the Hardware
Are you the kind of engineer who enjoys working where software meets silicon?
We're looking for an exceptional Device Driver Engineer to join a team tackling challenging low-level software problems across embedded, industrial, networking, and next-generation hardware platforms. This is a rare opportunity to work on the full driver lifecycle—from bringing up brand-new hardware with drivers written from scratch to backporting modern kernel functionality onto production systems deployed at scale.
If you enjoy diving into datasheets, debugging hardware interactions, optimising performance, and contributing code that can ultimately become part of the Linux kernel itself, we'd love to hear from you.
What You'll Be Doing
-
Designing and implementing Linux device drivers from the ground up
-
Backporting drivers and kernel features across multiple Linux kernel versions
-
Bringing up new hardware platforms and peripherals
-
Debugging complex hardware/software interactions at the kernel level
-
Working closely with hardware, FPGA, firmware, and systems engineering teams
-
Optimising performance, stability, and reliability for production deployments
-
Contributing fixes, enhancements, and new functionality to open-source projects
-
Having the opportunity to upstream patches and driver support into the Linux mainline kernel
Why This Role Is Different
This isn't application development. This isn't maintaining legacy code.
You'll be solving challenging engineering problems that require a deep understanding of operating systems, hardware architectures, and kernel internals. Your work will directly influence how real hardware operates in the field.
You'll have the opportunity to:
-
Work on cutting-edge hardware before it reaches the wider market
-
Own substantial technical challenges from concept through deployment
-
Collaborate with highly skilled kernel and embedded engineers
-
Gain visibility within the open-source community through upstream contributions
-
See your code accepted into the Linux kernel and used worldwide
-
Influence technical direction and architecture decisions
What We're Looking For
-
Strong C programming skills
-
Experience developing Linux kernel device drivers
-
Experience backporting drivers or kernel functionality between kernel versions
-
Strong debugging and troubleshooting skills
-
Familiarity with Linux kernel subsystems and architecture
-
Experience working with embedded Linux systems
-
Understanding of hardware interfaces such as PCIe, SPI, I2C, UART, USB, Ethernet, or similar technologies
Bonus Experience
-
Linux kernel upstream contributions
-
ARM or RISC-V platforms
-
Yocto, Buildroot, or custom Linux distributions
-
FPGA or SoC development environments
-
Real-time Linux systems
-
Networking, storage, or industrial communication protocols
What You'll Get
-
The opportunity to work on genuinely interesting low-level engineering challenges
-
Access to modern hardware and development platforms
-
Time and support for open-source and upstream contributions
-
A highly technical environment where engineering excellence is valued
-
Competitive compensation and benefits
-
Flexible working arrangements
-
The chance to make a visible impact on products used around the world
If you're passionate about Linux kernel development and enjoy solving problems that most software engineers never get to see, this role offers a chance to do meaningful work at the deepest layers of the software stack. This is a one stage telephone interview and CVs are being considered from 12/06/26 for an asap start.