Software Engineer

Role Description

We are looking for a self-motivated hardware certification or software engineer with experience in Linux testing or Linux hardware certification to work as part of a distributed team.

The role involves different tasks including the maintenance of our certification lab, creating/tweaking hardware solutions for automating tests, automating our existing processes, constantly seeking out process improvements, as well as the development of new automated tests.

Required skills and experience

  • 3-5 years experience with Linux hardware or equivalent.
  • Systems administration knowledge, including setting up network services.
  • Previous experience working with Ubuntu or other Linux based products.
  • Software or hardware testing experience.
  • Strong background in testing methodologies and test automation.
  • Hardware design experience.
  • Scripting languages programming knowledge.
  • Ability to be productive in a globally distributed team through self discipline and self motivation, delivering according to a schedule.
  • Strong English language communication skills, especially in on­line environments such as mailing lists and IRC.

Desired skills and experience

  • Experience with Python programming.
  • Experience working in an agile and/or SCRUM environment.
  • Experience with IoT device testing, basic understanding of IoT software stacks

Key Responsibilities

  • Be an active member of the Certification team.
  • Write test cases and test scripts to test the functionality and performance of all HW systems ( laptops, desktops, gateways) to ensure they continue to be certified even after kernel and other module changes.
  • Automate lab processes to allow for quicker testing on devices in the lab.
  • Help build a suite of hardware to test device enablement (graphics testing/hotplug, bluetooth testing, etc).
  • Update the test coverage in line with changes in the Ubuntu development roadmap and customer/stakeholder requirements.
  • Improve existing automated test cases and help develop new test cases.
  • Work with hardware partners, the certification team and the development teams to ensure that bug reports are triaged and assigned to the appropriate teams in a highly efficient and effective manner.
  • Participate in meetings involving international travel

You’ll love this job if…

  • You love testing operating systems on new hardware and you enjoy being surrounded by cables, network switches and lots of hardware platforms running Ubuntu.
  • You love developing tools that transform a hard task into an easy one.
  • You want to be part of a team that is helping Ubuntu to work better in a wider range of hardware.
  • You are excited about the future of IoT and Ubuntu’s role in its adoption.
  • You like to build hardware to solve common problems/to make testing easier.

Location: Canonical offices at Taipei (Taiwan)


It is our mission to make open source software available to people everywhere.

Technology we use