Python Software Engineer - Ubuntu Hardware Certification Team
Canonical · Home based - EMEA · Engineering
Curated summary
A remote engineering opening from Canonical with official ATS source details and a direct employer apply link.
Full official source details
This section is loaded from the official Greenhouse source for this role.
Additional source fields
- Employment Length: Full-time
- Core skills: Analysers, Entrepreneur, Problem Solver, Spokesperson, Stalwart
- External Departments (website): Engineering
- One line job description: As a certification specialist, you will develop and maintain our certification tools and create/tweak hardware solutions of our automation suite.
- LinkedIn Posting Level: Entry level
Official description
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.
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
Application questions shown by the source
- First Name (Required)
- Last Name (Required)
- Email (Required)
- Phone (Optional)
- Resume/CV (Required)
- Describe your Python software development experience (Required)
- Describe your experiences with embedded software development on Linux. (Required)
- Have you worked on projects that involved interfacing with hardware devices? Describe your experiences. (Optional)
- Where are you presently located? (Required)
- What was your bachelor's university degree result, or expected result if you have not yet graduated? Please include the grading system to help us understand your result e.g. ‘85 out of 100’, ‘2:1 (Grading system: first class, 2:1, 2:2, third class)’ or ‘GPA score of 3.8/4.0 (predicted)’. We have hired outstanding individuals who did not attend or complete university. If this describes you, please continue with your application and enter ‘no degree’. (Required)
- How did you perform in mathematics at high school? (Required)
- How did you perform in your native language at high school? (Required)
- We require all colleagues to meet in person 2-4 times a year, at internal company events lasting between 1-2 weeks. We try to pick new and interesting locations that will likely require international travel and entry requirement visas and vaccinations. Are you willing and able to commit to this? (Required)
- Website (Optional)
- LinkedIn Profile (Optional)
- Please confirm that you have read and agree to Canonical's Recruitment Privacy Notice and Privacy Policy. (Required)
- In which country do you currently work? (Required)
- Please share your rationale or evidence for the high school performance selections above. Make reference to provincial, state or nation-wide scoring systems, rankings, or recognition awards, or to competitive or selective college entrance results such as SAT or ACT scores, JAMB, matriculation results, IB results etc. We recognise every system is different but we will ask you to justify your selections above. (Required)
- During this application process I agree to use only my own words. I understand that plagiarism, the use of AI or other generated content will disqualify my application. (Required)
- In the past ten years, looking only at the time since you graduated your first undergraduate degree, how many companies have you worked for? (Required)
- Which gender do you identify as? (Required)
- Please indicate your nationality: (Required)
- Please indicate your race or ethnicity: (Required)
Before applying
Confirm the role is still open, read the full employer description, verify the recruiter domain, and never pay money to apply for a remote job.