Ubuntu is the most widely used Linux distribution in the world, delivering kernels across a vast matrix of versions, architectures, and configurations – with up to 15 years of security and maintenance commitments for Long Term Support (LTS) releases. Ensuring the quality and reliability of these kernels demands a dedicated, systematic approach to testing at scale.
The Canonical Kernel Team is looking for a Test Engineer to take ownership of our kernel testing strategy and infrastructure. You will design and maintain test plans covering functional correctness, stability, performance, and security. You will build and evolve automated test frameworks – including stress testing, fuzzing, code coverage analysis, and regression detection – that not only must remain effective across many concurrently supported kernel versions spanning years of maintenance, but must be able to scale with the high demand for Ubuntu kernels (currently more than 160 under active support).
The successful candidate will bring strong Python skills, familiarity with Linux kernel internals, and experience building test infrastructure that scales. You will work closely with kernel engineers to catch regressions early, validate fixes, and ensure every kernel we ship meets the highest standards of reliability.
Location: This role will be based remotely in the APAC region, except for Taipei, Taiwan, and Beijing, China, which are office-based locations.
What your day will look like- Design, develop, and maintain comprehensive test plans covering functional correctness, stability, performance, and security for Ubuntu Linux kernels
- Build and improve automated test infrastructure for continuous kernel quality validation across multiple kernel versions and architectures
- Maintain long-lived test suites that evolve alongside Ubuntu’s many concurrently supported kernel versions spanning years of maintenance
- Develop and maintain CI/CD pipelines for continuous kernel quality validation
- Conduct performance benchmarking and regression detection across kernel releases
- Measure and improve kernel code coverage, identifying gaps in test coverage and creating tests to address them
- Execute and analyze stress tests covering CPU scheduling, memory management, I/O subsystems, networking, and filesystem workloads
- Develop and maintain fuzzing harnesses to discover kernel vulnerabilities and reliability issues using tools such as syzkaller, Trinity, or custom fuzzers
- Collaborate regularly and proactively with a globally distributed team
- Contribute to upstream test suites and testing frameworks
- Document test methodologies, results, and coverage gaps
- Significant programming experience in Python
- Experience with test frameworks such as LTP, kselftest, xfstests, stress-ng, fio, or similar
- Experience designing and executing system-level tests: functional, stress, performance, or regression testing
- Familiarity with CI/CD systems (Jenkins, GitHub CI, or similar)
- Experience maintaining test suites over long periods, adapting to evolving software across multiple supported versions
- Familiarity with Linux (Ubuntu or Debian preferred but not required), Linux kernel internals and subsystems
- Experience with Linux systems administration and automation
- Solid background with git
- Well-organized, self-starting and able to deliver to fixed schedules
- Professional written and spoken English with excellent communication skills
- Ability to travel twice a year, for company events up to two weeks each
- Familiarity with kernel fuzzing tools and techniques (e.g. syzkaller, Trinity, AFL, or custom harnesses)
- Experience with code coverage instrumentation (e.g. gcov, kcov, LLVM source-based coverage)
- Knowledge of kernel tracing and observability tools (e.g. ftrace, perf, bpftrace, eBPF)
- Familiarity with static analysis tools (e.g. sparse, smatch, Coccinelle) as part of a testing workflow
- Experience with fault injection frameworks (e.g. failslab, fail_make_request) for reliability testing
- Prior experience with test infrastructure at scale (provisioning, orchestration, result aggregation)
- Experience with Ubuntu/Debian packaging or Snap
- Knowledge of virtualization technologies (KVM, QEMU) and container runtimes
- Cloud infrastructure experience (AWS, GCP, Azure, or OpenStack)
- Prior involvement with open source testing communities or projects
Your base pay will depend on various factors including your geographical location, level of experience, knowledge and skills. In addition to the benefits above, certain roles are also eligible for additional benefits and rewards including annual bonuses and sales incentives based on revenue or utilisation. Our compensation philosophy is to ensure equity right across our global workforce.
In addition to a competitive base pay, we provide all team members with additional benefits, which reflect our values and ideals. Please note that additional benefits may apply depending on the work location and, for more information on these, you can ask in the later stages of the recruitment process.
- Fully remote working environment - we’ve been working remotely since 2004!
- Personal learning and development budget of 2,000USD per annum
- Annual compensation review
- Recognition rewards
- Annual holiday leave
- Parental Leave
- Employee Assistance Programme
- Opportunity to travel to new locations to meet colleagues at ‘sprints’
- Priority Pass for travel and travel upgrades for long haul company events
Canonical is a pioneering tech firm that is at the forefront of the global move to open source. As the company that publishes Ubuntu, one of the most important open source projects and the platform for AI, IoT and the cloud, we are changing the world on a daily basis. We recruit on a global basis and set a very high standard for people joining the company. We expect excellence - in order to succeed, we need to be the best at what we do.
Canonical has been a remote-first company since its inception in 2004. Work at Canonical is a step into the future, and will challenge you to think differently, work smarter, learn new skills, and raise your game. Canonical provides a unique window into the world of 21st-century digital business.
Canonical is an equal opportunity employerWe are proud to foster a workplace free from discrimination. Diversity of experience, perspectives, and background create a better work environment and better products. Whatever your identity, we will give your application fair consideration.
#LI-remote
Skills Required
- Significant programming experience in Python
- Experience with Linux kernel test frameworks such as LTP, kselftest, xfstests, stress-ng, or fio
- Experience designing and executing system-level functional, stress, performance, or regression tests
- Familiarity with CI/CD systems such as Jenkins or GitHub CI
- Experience maintaining test suites across evolving software versions
- Familiarity with Linux, preferably Ubuntu or Debian, and Linux kernel internals and subsystems
- Experience with Linux systems administration and automation
- Solid background with Git
- Professional written and spoken English with excellent communication skills
- Ability to travel twice a year for company events lasting up to two weeks
- Familiarity with kernel fuzzing tools and techniques, including syzkaller, Trinity, AFL, or custom harnesses
- Experience with code coverage instrumentation such as gcov, kcov, or LLVM source-based coverage
- Knowledge of kernel tracing and observability tools such as ftrace, perf, bpftrace, or eBPF
- Familiarity with static analysis tools such as sparse, smatch, or Coccinelle
- Experience with fault injection frameworks such as failslab or fail_make_request
- Experience with test infrastructure at scale, including provisioning, orchestration, and result aggregation
- Experience with Ubuntu or Debian packaging or Snap
- Knowledge of virtualization technologies such as KVM or QEMU and container runtimes
- Cloud infrastructure experience with AWS, GCP, Azure, or OpenStack
- Prior involvement with open-source testing communities or projects
Canonical Compensation & Benefits Highlights
The following summarizes recurring compensation and benefits themes identified from responses generated by popular LLMs to common candidate questions about Canonical and has not been reviewed or approved by Canonical.
-
Strong & Reliable Incentives — Performance-based bonuses/commissions and annual compensation reviews are part of the package. Feedback suggests variable-pay roles like sales and some senior positions can realize competitive total compensation.
-
Leave & Time Off Breadth — Total time off is portrayed as generous, combining annual leave with local holidays and company-wide shutdowns. Feedback suggests this breadth is attractive for those who value extended breaks.
-
Healthcare Strength — Core medical, dental, and vision coverage is available and consistently highlighted in role materials. Feedback suggests coverage quality is solid for a remote-first tech employer.
Canonical Insights
What We Do
We deliver open source to the world faster, more securely and more cost effectively than any other company. We develop Ubuntu, the world’s most popular enterprise Linux from cloud to edge, together with a passionate global community of 200,000 contributors. Ubuntu means 'humanity to others'. We chose it because it embodies the generosity at the heart of open source, the new normal for platforms and innovation. Together with a community of 200,000, we publish an operating system that runs from the tiny connected devices up to the world's biggest mainframes, the platform that everybody uses on the public cloud, and the workstation experience of the world's most productive developers. Secure and reliable, elegant and intuitive, and open for innovation - Ubuntu is the future of open source, which is why its the fastest growing Linux in the world despite already being the most widely deployed.







