
Remote opportunity at
CanonicalJunior Linux Kernel Engineer - Ubuntu
Each year Canonical's Kernel Team brings on fresh junior talent who will contribute to the Linux kernel that powers Ubuntu. The team develops and looks after…
Career Tools
About This Role
Each year Canonical's Kernel Team brings on fresh junior talent who will contribute to the Linux kernel that powers Ubuntu. The team develops and looks after every supported Ubuntu kernel, for platforms ranging from small embedded devices to desktop and server systems and large cloud environments. The position fits recent graduates and early-career engineers who have studied operating systems and can write strong C, possibly alongside Rust. During year one,…
Job Description
Each year Canonical's Kernel Team brings on fresh junior talent who will contribute to the Linux kernel that powers Ubuntu. The team develops and looks after every supported Ubuntu kernel, for platforms ranging from small embedded devices to desktop and server systems and large cloud environments. The position fits recent graduates and early-career engineers who have studied operating systems and can write strong C, possibly alongside Rust.
During year one, newcomers tackle substantial work: kernels tuned for major silicon and cloud partners, developer boards like Raspberry Pi and RISC-V hardware, bringing Ubuntu to embedded hardware, hardening security and blocking exploits, integrating third-party drivers including graphics, and extending driver coverage on cutting-edge PCs. They learn from senior mentors, collaborate with external silicon, cloud and hardware teams, and send, check and merge patches alongside upstream maintainers.
The kernel teams are distributed and home-based, with teams in every time zone. The posting describes these as full-time positions for prospective or recently graduated students.
Responsibilities
- Collaborate with a globally distributed kernel team
- Learn kernel internals and how the kernel is distributed from senior mentors
- Work with silicon, cloud and hardware partners on new platforms
- Diagnose and resolve kernel issues from customers, the community and internal testing
- Own delivery of the various Ubuntu Linux kernel flavors
- Improve tooling and automation for kernel delivery and testing
- Send, check and merge kernel patches alongside internal and upstream maintainers
Requirements
- A well-organised, motivated self-starter who can thrive in a remote setting
- Professional conduct with teammates and with the wider open-source world
- Clear written and spoken English
- Coding experience in C, Rust or both
- Familiarity with version control, ideally git
- Grasp of core OS kernel concepts
- Able to make two trips a year to company events, each up to a fortnight
Qualifications
- Interest in and experience with Rust
- Python and Bash scripting ability
- Experience with Ubuntu, Debian or Snap packaging
- Hands-on with patching and debugging kernels
- Understanding of device drivers, board support packages and other low-level systems engineering
Core Skills
Benefits
- Home-based work plus in-person team sprints twice a year
- Yearly allowance of USD 2,000 toward training
- Yearly pay review and recognition awards
- Yearly holiday leave, plus maternity and paternity leave
- Employee Assistance Programme
- Chances to visit new places and meet coworkers
- Priority Pass access and travel upgrades on long-haul company trips
- Performance-based annual bonus
Frequently Asked Questions
Answers are based only on the employer’s listing; where it doesn’t say, neither do we.
Is the role home-based?
Yes, the kernel teams are home-based, with teams in every time zone.
Who should apply?
Aimed at new graduates, early-career engineers and prospective students who write strong C and perhaps Rust.
What languages are needed?
Coding experience in C, Rust or both is required. Python and Bash scripting ability is a nice-to-have.
Sample Interview Questions
AI-generated questions tailored to this specific role — a preview of the full practice set.