Kernel Engineer – Ubuntu Linux – Canonical – Jobs

Job Information

  • icon
    No. of Openings 1 opening
  • icon
    Job Experience : 0-2 years

Job Description

Are you passionate about the Linux kernel? Or maybe you’ve mastered a different low-level software development environment and are ready for a new challenge in Linux? Are you looking to work on a great team, where you can apply and grow your kernel development skills? This is an exciting time at Canonical, where due to a period of unprecedented growth we are seeking a number of software engineers to join our Kernel Team to play an integral part in the delivery of the heart of the most popular Linux distribution in the world.

The Canonical Linux Kernel Team is responsible for developing and maintaining all supported Ubuntu Linux kernels, which run on a variety of platforms and architectures from small embedded devices to standard desktop/server systems to large scale cloud environments. The Kernel Team has openings for software engineers in a number of aspects that include but are not limited to:

Ubuntu Linux distribution

Optimized Ubuntu solutions for key Silicon and Cloud partners

Developer platforms such as Raspberry Pi and RISC-V

Enabling Ubuntu on a wide range of embedded systems

Livepatch service, which allows Ubuntu customers to apply critical kernel (CVE) security fixes without rebooting

FIPS compliance

Real-Time and Low Latency systems

Virtualization or abstraction engines


We are seeking candidates of all experience levels from recent University graduates up through seasoned industry experts who are enthusiastic to develop software in multiple areas including security mitigation, feature development, patching and test. This person must have a background in software engineering, be motivated to work in a distributed team and willing to travel globally up to 4 times a year for internal and external engineering events.

What you’ll do

Collaborate regularly and proactively with a globally distributed team

Work closely with external silicon, cloud, or hardware manufacturer delivery teams on bleeding edge platforms

Diagnose and resolve issues in the kernel reported by customers and the community

Take personal responsibility for the delivery of various flavors of the Ubuntu Linux kernel

Improve tooling and automation for delivery and test of Ubuntu Linux kernels

Submit, review, and apply kernel patches, working with both internal and external upstream maintainers

Who you are

Well-organized, self-starting and able to deliver to fixed schedules

Demonstrated ability to present oneself in a professional manner when interacting with colleagues, business partners, and the open source community

Ability to communicate effectively in English, both written and oral

Earned a bachelor’s (or equivalent university level) degree, preferably in a technology field

Significant programming experience in C, with Python and Bash scripting also highly regarded

Solid background with git

Broad knowledge of the Linux kernel and kernel subsystems

Demonstrated experience with kernel patching and debugging

Knowledge/experience with Linux kernel upstream processes and release cycle

Strong grasp of device drivers, BSP’s, and other low level system engineering

Prior experience with Ubuntu/Debian/Snap packaging would be highly regarded

Canonical believes a diverse workforce enhances our ability to deliver world class software and services which meet the world’s computing needs. We are committed to ensuring equal employment opportunities to all qualified individuals. All qualified applicants will receive consideration for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age, or veteran status.

Job alerts

Receive emails for the latest jobs matching your search criteria