Canonical Group - Los Angeles, CA

posted 4 months ago

Full-time
Los Angeles, CA
Professional, Scientific, and Technical Services

About the position

Canonical is hiring a Python Software Engineer to join the Certification team, which is responsible for developing the tools that ensure the proper functioning of desktops, laptops, servers, and IoT devices running Ubuntu. This role is pivotal as it operates at the intersection of hardware and software, making it essential for candidates to have a solid background in Python development along with familiarity with hardware. The Certification team is tasked with creating the necessary tools to certify hardware compatibility with Ubuntu Core, Ubuntu Desktop, and Ubuntu Server, which can be explored further at https://ubuntu.com/certified. The team designs hardware capable of probing devices independently and develops frameworks for software tests that evaluate every aspect of Ubuntu on that hardware. This position presents an excellent opportunity for individuals eager to make a significant impact on the adoption of Linux across various device categories and industries. Canonical promotes a dynamic and fast-paced team environment, offering numerous learning and development opportunities. The team primarily operates within EMEA time zones but collaborates with colleagues across the Americas and APAC regions. In this role, the successful candidate will be a self-motivated software engineer with experience in Python, focusing on test automation tools and Linux-based embedded hardware. This position provides a unique chance to advance the industry by enabling new Linux-based hardware testing capabilities, scaling hardware certification efforts, and enhancing test coverage. Responsibilities include developing and maintaining Canonical's open-source certification tools, supporting the creation of hardware solutions for test automation, and automating existing processes. Continuous improvement of processes and tooling is a key aspect of expanding the certification test suites, ultimately enhancing the quality of the Linux experience for millions of users.

Responsibilities

  • Maintain and develop new features for Python-based test automation tools like Checkbox, used by in-house teams and industry partners.
  • Invent new methods to enable remote, automated testing.
  • Assist in building the software counterpart to in-house designed testing hardware to facilitate device enablement (graphics, hotplug, bluetooth, etc.).
  • Write functional and performance tests to support hardware enablement and prevent regressions.
  • Participate in meetings involving international travel 2-3 times per year.

Requirements

  • 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.

Nice-to-haves

  • Passion for tinkering: you are a maker.
  • Experience working in an agile environment.
  • Hardware testing experience, particularly in the IoT space.
  • Familiarity with the C programming language.

Benefits

  • Learning and development opportunities
  • Remote work flexibility
  • Collaborative team environment
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service