Software Engineer, Distributed Systems Testing

Canonical is the company behind Ubuntu, providing cloud and open source solutions.
DevOps
Senior Software Engineer
Remote
AI · Enterprise SaaS · Cybersecurity

Description For Software Engineer, Distributed Systems Testing

Canonical is seeking a software engineer passionate about building and validating resilient distributed systems. As part of the Distributed Systems testing team, you'll be responsible for ensuring the high quality of Canonical's Cloud solutions based on Juju, Terraform, OpenStack, and Kubernetes when deployed under diverse conditions, from bare metal in customer data centers to public clouds like AWS, GCE, and Azure.

Your role will involve developing CI pipelines powering Canonical's cloud integration testing and reporting. You'll have the opportunity to contribute to expanding deployment capabilities to new clouds and developing AI/ML pipelines for automatic analysis of test results. The ideal candidate should be interested in tackling these challenges and leading new initiatives within the team and across Canonical.

Key responsibilities include:

  • Creating automated testing approaches for validating reliability, performance, and resilience of cloud orchestration tools and applications
  • Enabling engineering teams to develop software confidently by making distributed system testing tooling available company-wide
  • Enhancing continuous integration pipelines for deploying and testing Canonical's cloud native products
  • Deploying, managing, and debugging highly distributed systems
  • Monitoring and reporting on automated testing efforts
  • Collaborating daily with a globally distributed team

This role offers the opportunity to work in a distributed environment with twice-yearly team sprints in person. Canonical provides a personal learning and development budget, annual compensation reviews, recognition rewards, and various other benefits including maternity and paternity leave, an Employee Assistance Programme, and travel opportunities.

Join Canonical to build a career driving the success of those leveraging Ubuntu and Juju to build multi-cloud deployable cloud applications.

Last updated 2 months ago

Responsibilities For Software Engineer, Distributed Systems Testing

  • Create automated testing approaches for cloud orchestration tools and applications
  • Enable engineering teams by making distributed system testing tooling available
  • Enhance continuous integration pipelines for cloud native products
  • Deploy, manage, and debug highly distributed systems
  • Monitor and report on automated testing efforts
  • Collaborate with a globally distributed team

Requirements For Software Engineer, Distributed Systems Testing

Python
Go
Linux
Kubernetes
  • Solid background in modern test processes and strategies
  • Experience with Python or Go development
  • Strong object oriented development skills
  • Ability to develop and ship production grade modern web applications
  • Working knowledge of continuous integration tools such as Jenkins, CircleCI, GitHub CI
  • Knowledge of networking technologies and fundamentals
  • Solid understanding of Linux system architecture
  • A capacity for complex abstract thinking
  • Capability for 2-4 weeks of international travel per year

Benefits For Software Engineer, Distributed Systems Testing

Education Budget
  • Personal learning and development budget of USD 2,000 per year
  • Annual compensation review
  • Recognition rewards
  • Annual holiday leave
  • Maternity and paternity leave
  • Employee Assistance Programme
  • Opportunity to travel to meet colleagues
  • Priority Pass for travel and travel upgrades for long haul company events

Interested in this job?

Jobs Related To Canonical Software Engineer, Distributed Systems Testing

Senior Software Engineer - DevOps and Infrastructure

Senior Software Engineer position at Canonical focusing on DevOps and infrastructure automation using Python and Golang, working remotely with global team.

Senior Software Engineer - DevOps and Infrastructure

Senior Software Engineer position at Canonical focusing on DevOps and infrastructure automation using Python and Golang, working remotely with global team.

Software Engineer, Distributed Systems Testing

Join Canonical as a Software Engineer in Distributed Systems Testing, building resilient cloud solutions and driving innovation in multi-cloud deployments.

Senior Software Engineer, Developer Infrastructure

Senior Software Engineer position at Airbnb focusing on Developer Infrastructure and tooling, offering remote work and competitive compensation.

Software Engineer - DevOps

Senior DevOps Engineer role at BlueCat focusing on AWS, Terraform, and CI/CD pipelines in a hybrid work environment with strong company culture and benefits.