Python Software Engineer - Ubuntu Hardware Certification Team
- Level
- Mid
Not stated in the posting: salary, work type, visa.
Open. First seen 7 March 2026.
About the role
Canonical is hiring a Python Software Engineer to join the Certification team, who make the tools which enable us to know that a desktop, laptop, server or IoT device is working properly. We work at the interface of hardware and software, so the ideal candidate is a Python developer familiar with hardware.
The Certification team develops the tools needed to certify hardware as working with Ubuntu Core as well as Ubuntu Desktop and Server: https://ubuntu.com/certified
We design hardware which can be used to probe devices independently, and frameworks for software tests that check every aspect of Ubuntu on that hardware.
This is an excellent opportunity for someone who wants to have a meaningful impact for adoption of Linux across multiple device categories and industries. Canonical offers a fun, fast-paced team environment and a career full of learning and development opportunities. This team is centered in EMEA time zones, and works with colleagues on related teams in both the Americas and APAC.
We work together with silicon companies, OEMs, ODMs and teams within Canonical to ensure a smooth, secure out of the box Ubuntu experience, with success in this role leading to a great Ubuntu experience being offered on more and more devices.
Role description
We are looking for a self-motivated software engineer with experience developing in Python, to work on test automation tools or Linux based embedded hardware. This role offers an exciting opportunity to push the industry forward by enabling entirely new Linux based hardware testing capabilities, scaling up hardware certification efforts and allowing for deeper test coverage.
The role involves the development and maintenance of Canonical’s open source certification tools, supporting the creation of hardware solutions for test automation, and automating our existing processes. We seek out continuous process and tooling improvements as part of expanding the certification test suites, ultimately to improve the quality of Linux experience felt by millions of Linux end users.
Key responsibilities
- Maintain and develop new features to our Python based test automation tools like Checkbox, used by both in-house teams and industry partners.
- Invent new ways to enable remote, automated testing.
- Help build the software counterpart to in-house designed testing hardware to help test device enablement (graphics, hotplug, bluetooth, etc).
- Write functional and performance tests to support hardware enablement and to protect from regressions.
- Participate in meetings involving international travel 2-3 times per year.
Required skills and experience
- Knowledge of Python programming language.
- Quality oriented, pragmatic approach to software design and implementation.
- Interest in test automation methodologies.
- Previous experience working with Ubuntu or other Linux distributions.
- Ability to be productive in a globally distributed team.
Desired skills and experience
- Passion for tinkering: you are a maker.
- Experience working in an agile environment.
- Hardware testing experience, for example in the IoT space.
- Familiarity with the C programming language.
What is Canonical?
Canonical is a growing international software company that works with the open-source community to deliver Ubuntu, “the world’s best free software platform”. Our services help businesses worldwide to reduce costs, improve efficiency and enhance security with Ubuntu.
Canonical's standard text
We 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 #Stack
What this role asks for
Standard for embedded / hardware roles
Python
Common in embedded / hardware postings at any company.
In most of Canonical's ads
Linux
Named in most of its open postings, whatever the role.
94% of this description is written for the role. The rest is Canonical's standard text, folded away below.
Read against Canonical's other open postings on this site.
The team: Devices Engineering HIRES STEADILY
This role is one of 33 open in Devices Engineering. 1 was posted in the last 30 days and the oldest in January: a team that hires all year rather than one being built.
WHAT THE TEAM WORKS WITH, ACROSS ITS POSTINGS
Linux (33 of 33), Python (21 of 33), C (19 of 33), Bash (14 of 33), Embedded Systems (14 of 33), Linux Kernel (12 of 33), C++ (9 of 33)
OTHER ROLES ON THIS TEAM
- Software Quality Assurance Engineer - Linux, PC, IoT posted Oct 2
- Software Quality Assurance Engineer - Linux, PC, IoT posted Jun 2
- Ubuntu Linux Kernel Test Engineer posted May 29
- Linux Software Engineer - Ubuntu for Next-Gen Silicon (multiple roles and seniority levels) posted Nov 28
- Kernel Build Automation Engineer - Ubuntu Linux posted Oct 16
- Engineering Manager - Ubuntu Core posted Sep 19
- Ubuntu Enablement Engineer posted Jul 24
- Engineering Director, Devices Software Engineering posted Jul 15
- Senior Ubuntu Embedded IoT System Engineer posted Mar 20
- Embedded Linux Senior Software Engineer - Optimisation posted Feb 11
- Ubuntu Linux Kernel Engineer - Silicon Enablement posted Jun 27
- Ubuntu Linux Kernel Engineer - BIOS/Firmware posted Jun 27
- Linux Platform Integration - Ubuntu Systems Senior Engineer posted Jun 23
- Lead Linux Kernel Engineer - Ubuntu posted Jun 3
- Engineering Manager - Ubuntu Hardware Certification Quality and Test Engineering posted May 28
- Linux Enablement - Software Engineering Manager posted May 15
- Open Source Networking Software Engineer - ToR Switch / SmartNIC / DPU posted Mar 20
- Junior Linux Kernel Engineer - Ubuntu posted Feb 26
- Ubuntu Enablement Engineer posted Dec 11
- Software Engineer, Ubuntu Commercial Computers posted Dec 11
- PC Platforms Kernel Engineer - Ubuntu Linux posted Sep 27
- Senior Ubuntu Embedded IoT System Engineer posted Nov 22
- Ubuntu Enablement - Software Engineering Manager posted Oct 3
- C++/Rust Graphics and Windowing System Software Engineer - Mir posted Sep 7
- Linux devices software engineer - snapd posted Jul 13
- Software Engineer - Ubuntu Server Certification posted May 25
- Engineering Manager - Linux Hardware Enablement posted Mar 29
- Embedded & Desktop Linux Systems Engineer - Optimisation posted Mar 26
- Engineering Manager - Ubuntu Linux Kernel posted Mar 14
- Linux Enablement - Software Engineering Manager posted Sep 3
- Ubuntu Core Software Engineer posted Jun 10
- Software Engineer - Edge AI posted Jan 29
From the team and dates on Canonical's own job board.
Similar jobs
- Sr. Embedded Software Developer at Digital Control Inc.
Shares 5 skills: Bluetooth, C, Linux… - Senior/ Embedded Software Test Manager at cygnify
Shares 5 skills: Bluetooth, C, Test Automation… - Embedded Software Engineer II at FORT Robotics
Shares 4 skills: Bluetooth, C, Linux… · same seniority - Embedded Software Engineer at deepsea
Shares 4 skills: Bluetooth, C, Linux… · same seniority - WiFi/BT Hardware Firmware Engineer (HK) at Delart
Shares 4 skills: Bluetooth, C, Test Automation… · same seniority - Graduate Software Engineer, Open Source and Linux, Canonical Ubuntu at Canonical
Also at this company
Is this your posting and you want it taken down? Email info@careerholo.com.