Job Description
This is a general track for applications to any team at Canonical that works with the Linux kernel, across all seniority levels. Apply here if you are an exceptional software engineer who wants to work on both stable and cutting edge Linux kernels for Ubuntu and its wider ecosystem.
We hire candidates of all experience levels from recent university graduates through seasoned industry experts. We select those who are enthusiastic to work in multiple areas including security mitigation, feature development, patching and test. You must have outstanding academic results, a background in software engineering, be motivated to work in a distributed team and willing to travel globally twice a year for company engineering events.
Location: Working from home, worldwide.
We have kernel teams and openings in every time zone and with the notable exception of Taipei, Taiwan, have no offices and therefore no pressure to work from an office.
What your day will look like
Collaborate regularly and proactively with a globally distributed team
Work closely with silicon, cloud, or hardware manufacturers
Diagnose and resolve issues in the kernel
Take personal responsibility for a flavour of the Ubuntu Linux kernel
Improve tooling and automation for delivery and test of Ubuntu Linux kernels
Submit, review, and apply kernel patches
What we are looking for in you
An exceptional academic track record from both high school and university
Undergraduate degree in Computer Science or STEM, or a compelling narrative about your alternative path
Drive and a track record of going above-and-beyond expectationsWell-organised, self-starting and able to deliver to fixed schedules
Professional manner interacting with colleagues, partners, and community
Ability to communicate effectively in English, both written and oral
Significant programming experience in C
Solid background with git
Broad knowledge of the Linux kernel and kernel subsystems
Demonstrated experience with kernel patching and debugging
Understanding of Linux kernel upstream processes and release cycle
Strong grasp of device drivers, BSP’s, and other low level system engineering
Professional written and spoken English
Experience with Linux (Debian or Ubuntu preferred)
Excellent interpersonal skills, curiosity, flexibility, and accountability
Passion, thoughtfulness, and self-motivation
Excellent communication and presentation skills
Result-oriented, with a personal drive to meet commitments
Ability to travel twice a year, for company events up to two weeks each
Additional skills that you might also bring
Python and Bash scripting
Prior experience with Ubuntu/Debian/Snap packaging
Performance engineering and security experience
What we offer you
We consider geographical location, experience, and performance in shaping compensation worldwide. We revisit compensation annually (and more often for graduates and associates) to ensure we recognise outstanding performance. In addition to base pay, we offer a performance-driven annual bonus. We provide all team members with additional benefits, which reflect our values and ideals. We balance our programs to meet local needs and ensure fairness globally.
Distributed work environment with twice-yearly team sprints in person
Personal learning and development budget of USD 2,000 per year
Annual compensation review
Recognition rewards
Annual holiday leave
Maternity and paternity leave
Employee Assistance Programme
Opportunity to travel to new locations to meet colleagues
Priority Pass, and travel upgrades for long haul company events