Kernel Engineer - Ubuntu Linux
Canonical (View all Jobs)
Home based - Worldwide
1. Review your open source contributions at shortlist stage. 2. 4x60m interviews over Hangouts, each of which is carried out blind (none of the interviewers talk to each other until the final review). The company is fully remote, so there is no on-site.
Programming Languages Mentioned
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.
Please mention No Whiteboard if you apply!
I'm a one-man team looking to improve tech interviews, and could use any support! 😄