← All jobs

Distributed Systems Testing Engineer at Canonical

Confirmed open

Build automated tests and CI pipelines for Canonical cloud products across bare metal and public clouds using Python or Go.

Canonical logoCanonical

Search jobs by company: Canonical

Location
Remote
Advertised region
Home Based - Americas; Home based - EMEA
Work arrangement
remote
Technologies
Python, AWS, Azure, Kubernetes, Linux, Go
See how to apply

Save job — free account Saved jobs

Create a free application profile — Keep your skills and projects in a reusable profile. Private by default; you choose when to share. Apply for this job directly with the employer.

We’ll email you a sign-in code. Upload your CV after sign-in.

By continuing, you agree to processing needed to manage your account and profile. Privacy policy

Role overview

Canonical's distributed-systems testing team validates cloud products based on Juju, Terraform, OpenStack and Kubernetes. The role spans reliability, performance and resilience testing in diverse environments, from customer data centres to AWS, Google Cloud and Azure. The posting lists home-based work in the Americas or EMEA and expects two to four weeks of international travel yearly.

Responsibilities

  • Create automated test methods and infrastructure for cloud orchestration tools and applications.
  • Develop CI pipelines that deploy, test and report on cloud-native products, including Kubeflow.
  • Deploy, operate and debug distributed systems on public cloud and bare-metal infrastructure.
  • Make testing tools available to other engineering teams and report test results.
  • Explore automated analysis of test results using AI or machine-learning pipelines while collaborating with an international team.

Qualifications

  • Experience with modern test processes and Python or Go software development.
  • Knowledge of CI tools such as Jenkins, CircleCI or GitHub Actions.
  • Understanding of Linux architecture, networking fundamentals and object-oriented development.
  • Ability to reason about complex distributed failures and work with a remote team.
  • Experience with cloud platforms, data stores, web applications, large-scale analytics or AI/ML pipelines is relevant to the broader remit.

Technology in this role

  • Python: Python AWS Azure Kubernetes Linux .
  • AWS: Python AWS Azure Kubernetes Linux .
  • Azure: Python AWS Azure Kubernetes Linux .
  • Kubernetes: Python AWS Azure Kubernetes Linux .
  • Linux: Python AWS Azure Kubernetes Linux .
  • Go: Python AWS Azure Kubernetes Linux .
  • Google Cloud: The role spans reliability, performance and resilience testing in diverse environments, from customer data centres to AWS, Google Cloud and .
  • Terraform: Canonical's distributed-systems testing team validates cloud products based on Juju, Terraform, OpenStack and .
  • GitHub Actions: Knowledge of CI tools such as Jenkins, CircleCI or GitHub .
  • Jenkins: Knowledge of CI tools such as Jenkins, CircleCI or GitHub .
  • CAN: We see quality engineering as a first class engineering practice and are looking for people who can bring deep engineering insights and a data driven approach to testing, test automation, reporting and data .

Role-specific candidate guide

Preparation notes based on the employer’s stated responsibilities and qualifications.

Understanding the scope. This Distributed Systems Testing Software Engineer, Python / Go position at Canonical is best assessed through the work described in the employer’s posting, rather than the title alone. The available role overview says: “Canonical's distributed-systems testing team validates cloud products based on Juju, Terraform, OpenStack and Kubernetes. The role spans reliability, performance and resilience testing in diverse environments, from…” Read that statement together with the responsibilities below to understand the likely balance between delivery, coordination and technical decision-making. The role belongs to the software engineering area, but that label is only a guide to the work; the employer’s own requirements remain decisive. Before applying, check the original listing for reporting lines, product or team assignment, employment terms and any details that may have changed since this copy was checked. Where this page says a fact is not specified, treat it as an open question rather than an implied promise.

What the responsibilities signal. The posting specifically names “Create automated test methods and infrastructure for cloud orchestration tools and applications.”; “Develop CI pipelines that deploy, test and report on cloud-native products, including Kubeflow.”; “Deploy, operate and debug distributed systems on public cloud and bare-metal infrastructure.”. For each duty, identify a project where you performed comparable work and be ready to describe the context, your own contribution, constraints, decisions, and measurable result. Explain how you moved from the initial need to implementation, review, release or operational follow-through, where those stages apply. If the work involved other teams or users, distinguish your decisions from the group’s contribution. Avoid presenting a technology keyword as proof by itself: connect it to the problem you solved, the scale or complexity involved, and what changed after your work. The source may contain additional duties; review it directly before preparing your application.

How to read the requirements. The listed qualifications include “Experience with modern test processes and Python or Go software development.”; “Knowledge of CI tools such as Jenkins, CircleCI or GitHub Actions.”; “Understanding of Linux architecture, networking fundamentals and object-oriented development.”. Mark each requirement as demonstrated, adjacent experience or a genuine gap, then use a concise example for the first two categories. A strong example explains what you personally owned, how.

Benefits

  • We consider geographical location, experience, and performance in shaping compensation worldwide. We revisit compensation annually (and more often for graduates and associates) to ensure we recognize outstanding performance. In addition to base pay, we offer a performance-driven annual bonus or commission. We provide all team members with additional benefits which reflect our values and ideals. We balance our programs to meet local needs and ensure fairness globally.
  • Distributed work environment with twice-yearly team sprints in person
  • Personal learning and development budget of USD 2,000 per year
  • Team Member Assistance Program & Wellness Platform
  • Opportunity to travel to new locations to meet colleagues
  • Priority Pass and travel upgrades for long-haul company events

About Canonical

Canonical publishes Ubuntu and develops open-source products for cloud, AI, connected devices and enterprise infrastructure. It describes most engineering roles as home based, with periodic in-person team gatherings.

Employer website

How to apply

Review the original posting and apply through the employer’s careers page.

View source and apply

Source checked: 2026-11-08

Browse job categories

Related jobs