Python Software Engineer - Ubuntu Hardware Certification Team

Canonical - Jobs
San Jose, CA, US
Full-time

Job Description

Job 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

30+ days ago
Related jobs
Promoted
TikTok
San Jose, California

Collaborate with strategy team, product managers, and other key stakeholders to define products and drive initiatives from engineering perspective. This is doubly true of the teams that make TikTok possible. To us, every challenge, no matter how difficult, is an opportunity; to learn, to innovate, a...

Promoted
ClickJobs.io
Santa Clara, California

Exciting news for aspiring software developers! Currently seeking a skilled Backend Python Engineer to join a team located in Santa Clara, where innovation meets opportunity. The #1 feature of this opportunity is the chance to work with a diverse and exciting tech stack that includes Python, SQL, Fl...

Promoted
Braintree
San Jose, California

As a Team Lead software engineer for Venmo Payments and Disputes Engineering, you will act as a senior engineer and subject matter expert for the Payments Platform Engineering team. Ability to lead projects and mentor all levels of engineering staff, along with managing relationships with Product, E...

Walmart
Sunnyvale, California

Option 1: Bachelor's degree in computer science, computer engineering, computer information systems, software engineering, or related area and 2 years’ experience in software engineering or related area. We’re a team of software engineers, data scientists, cybersecurity expert's and service professi...

Amazon.com Services LLC
Sunnyvale, California

We are seeking talented software engineers to join our team in building application and system software while working closely with ODM partners and internal cross-functional teams. In this product software development engineering role, the SDE will develop and test software features as part of acces...

Walmart
Sunnyvale, California

Option 1: Bachelor's degree in computer science, computer engineering, computer information systems, software engineering, or related area and 3 years’ experience in software engineering or related area. Master’s degree in Computer Science, Computer Engineering, Computer Information Systems, Softwar...

NetApp
San Jose, California

NetApp is looking for an experienced Software Engineer to join our BlueXP software and application development team. Cloud, Test Engineer, Linux, Software Engineer, Testing, Technology, Engineering. Title: Software Engineer (Python, Linux Environment). As a Seasoned Software Engineer, you will work ...

Bloomreach
Mountain View, California
Remote

Proven experience in Python engineering: Strong Python skills are essential for building our data-driven features. You'll collaborate closely with channel-specific engineering teams, data scientists, and product managers to ensure seamless integration of our business intelligence features with the r...

Zealogics.com
San Jose, California

Skills Required:  - Strong C++ development experience  - Experience in C++ performance optimization  - Experience with trading algos - Experience in testing tools/frameworks -Good Python Exp Great communication skills  - Team player Powered by JazzHR. We are seeking a talented se...

Oracle
Santa Clara, California

This position combines systems engineering, automation engineering, and network operations. The Oracle Cloud Infrastructure (OCI) team can provide you with the opportunity to collaborate, build, and operate a suite of massive-scale, integrated cloud services in a broadly distributed, multi-tenant cl...