Python Software Engineer - Ubuntu Hardware Certification Team
Python Software Engineer - Ubuntu Hardware Certification Team

Python Software Engineer - Ubuntu Hardware Certification Team

Edinburgh Full-Time 28800 - 48000 £ / year (est.) No home office possible
C

At a Glance

  • Tasks: Develop and maintain Python-based test automation tools for hardware certification.
  • Company: Canonical is a leading software company delivering Ubuntu, the world's best free software platform.
  • Benefits: Enjoy a fun, fast-paced team environment with learning and development opportunities.
  • Why this job: Make a meaningful impact on Linux adoption across various devices and industries.
  • Qualifications: Experience in Python programming and familiarity with Linux distributions required.
  • Other info: Remote work options available; international travel 2-3 times per year.

The predicted salary is between 28800 - 48000 £ per year.

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.

Python Software Engineer - Ubuntu Hardware Certification Team employer: Canonical

Canonical is an exceptional employer that fosters a dynamic and inclusive work culture, offering employees the chance to make a significant impact in the world of open-source software. With a focus on continuous learning and development, team members are encouraged to innovate and collaborate across global teams, all while enjoying the vibrant atmosphere of Edinburgh. The company values diversity and provides opportunities for personal and professional growth, making it an ideal place for passionate individuals looking to advance their careers in technology.
C

Contact Detail:

Canonical Recruiting Team

StudySmarter Expert Advice 🤫

We think this is how you could land Python Software Engineer - Ubuntu Hardware Certification Team

✨Tip Number 1

Familiarise yourself with Canonical's open-source certification tools, especially Checkbox. Understanding how these tools work and their role in hardware certification will give you a significant edge during discussions.

✨Tip Number 2

Showcase your passion for hardware by discussing any personal projects or tinkering experiences. This will demonstrate your hands-on approach and enthusiasm for the role, which is highly valued by the team.

✨Tip Number 3

Engage with the Ubuntu community online. Participating in forums or contributing to discussions can help you build connections and show your commitment to the Linux ecosystem, making you a more attractive candidate.

✨Tip Number 4

Prepare to discuss your experience with test automation methodologies. Be ready to share specific examples of how you've implemented these practices in previous roles, as this aligns closely with the responsibilities of the position.

We think you need these skills to ace Python Software Engineer - Ubuntu Hardware Certification Team

Proficiency in Python programming
Experience with test automation methodologies
Familiarity with Ubuntu or other Linux distributions
Knowledge of hardware testing, particularly in the IoT space
Ability to work effectively in a globally distributed team
Quality-oriented approach to software design and implementation
Experience with agile development environments
Understanding of C programming language
Strong problem-solving skills
Excellent communication skills

Some tips for your application 🫡

Tailor Your CV: Make sure your CV highlights your experience with Python and any relevant hardware projects. Emphasise your familiarity with Ubuntu or other Linux distributions, as this is crucial for the role.

Craft a Compelling Cover Letter: In your cover letter, express your passion for software development and hardware testing. Mention specific projects where you've used Python for test automation or worked with embedded systems to demonstrate your fit for the role.

Showcase Relevant Skills: Clearly list your skills related to test automation methodologies and any experience you have in agile environments. If you have tinkering or maker experience, be sure to include that as well.

Highlight Team Collaboration: Since the role involves working in a globally distributed team, mention any previous experiences where you successfully collaborated with remote teams. This will show your ability to adapt and communicate effectively across different time zones.

How to prepare for a job interview at Canonical

✨Show Your Python Skills

Be prepared to discuss your experience with Python in detail. Bring examples of projects you've worked on, especially those related to test automation or hardware integration, as this will demonstrate your practical knowledge.

✨Understand the Hardware-Software Interface

Since the role involves working at the interface of hardware and software, brush up on how Python interacts with hardware components. Familiarise yourself with concepts like device enablement and testing methodologies relevant to IoT devices.

✨Familiarise Yourself with Ubuntu

As Canonical focuses on Ubuntu, make sure you have a solid understanding of the operating system. Discuss any previous experience you have with Ubuntu or other Linux distributions, and be ready to explain how you can contribute to improving the user experience.

✨Demonstrate Your Problem-Solving Skills

Prepare to discuss specific challenges you've faced in past projects and how you overcame them. This could include automating processes or developing new testing tools. Highlight your pragmatic approach to software design and implementation.

Python Software Engineer - Ubuntu Hardware Certification Team
Canonical
Location: Edinburgh

Land your dream job quicker with Premium

You’re marked as a top applicant with our partner companies
Individual CV and cover letter feedback including tailoring to specific job roles
Be among the first applications for new jobs with our AI application
1:1 support and career advice from our career coaches
Go Premium

Money-back if you don't land a job in 6-months

C
Similar positions in other companies
UK’s top job board for Gen Z
discover-jobs-cta
Discover now
>