9 days ago

Distributed Systems Testing Software Engineer

Canonical

Hybrid
Full Time
$120,000
Hybrid

Job Overview

Job TitleDistributed Systems Testing Software Engineer
Job TypeFull Time
CategoryCommerce
Experience5 Years
DegreeMaster
Offered Salary$120,000
LocationHybrid

Who's the hiring manager?

Sign up to PitchMeAI to discover the hiring manager's details for this job. We will also write them an intro email for you.

Uncover Hiring Manager

Job Description

About Canonical

Canonical is a leading provider of open source software and operating systems to the global enterprise and technology markets. Our platform, Ubuntu, is very widely used in breakthrough enterprise initiatives such as public cloud, data science, AI, engineering innovation, and IoT. Our customers include the world's leading public cloud and silicon providers, and industry leaders in many sectors. The company is a pioneer of global distributed collaboration, with 1200+ colleagues in 75+ countries and very few office-based roles. Teams meet two to four times yearly in person, in interesting locations around the world, to align on strategy and execution.

The company is founder-led, profitable, and growing.

The Role: Distributed Systems Testing Software Engineer

We are hiring a Distributed Systems Testing Software Engineer with a passion for building and validating resilient distributed systems. You will drive the success of those leveraging Canonical’s Ubuntu and Juju to build multi-cloud deployable applications. 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 analytics.

The Distributed Systems testing team at Canonical is responsible for the high quality of Canonical’s Cloud solutions based on, for example, Juju, Terraform, OpenStack, or Kubernetes. Systems are tested and deployed under highly diverse conditions, from bare metal in customer data centers to public clouds such as AWS, GCE, Azure.

As a software engineer, you will have the opportunity to develop CI pipelines which power Canonical’s cloud integration testing and reporting. You will help test our products on new clouds and advance our AI/ML pipelines for automatic analysis of test results. A successful candidate is interested in tackling these problems, as well as imagining and leading new initiatives within the team and across Canonical.

Key Responsibilities:

  • Creating automated testing approaches and infrastructure for validating reliability, performance, and resilience of cloud orchestration tools and applications.
  • Enabling engineering teams across Canonical to develop software with confidence by making distributed system testing tooling available across the company.
  • Enhancing continuous integration pipelines for deploying and testing Canonical’s cloud native products such as Kubeflow.
  • Deploying, managing, and debugging highly distributed systems on clouds and bare metal.
  • Monitoring and reporting on automated testing efforts.
  • Collaborating daily with a globally distributed team.

What We Are Looking For In You:

  • Solid background in modern test processes and strategies.
  • Experience with Python or Go development.
  • Strong object-oriented development skills.
  • Working knowledge of continuous integration tools such as Jenkins, CircleCI, GitHub Actions.
  • Knowledge of networking technologies and fundamentals.
  • Solid understanding of the Linux system architecture.
  • Complex abstract thinking.
  • 2-4 weeks of international travel per year.

Nice-to-have Skills:

  • Ability to develop and ship modern production-grade web applications.
  • Ability to operate data platforms: key-value stores, relational or document databases, event buses.
  • Data collection and analytics skills for large multidimensional datasets.
  • Experience with AI/ML pipelines.
  • Experience with cloud technologies such as OpenStack, Kubernetes, Terraform and AWS.

What We Offer Colleagues:

  • Distributed work environment with twice-yearly team sprints in person.
  • Personal learning and development budget of USD 2,000 per year.
  • Annual compensation review.
  • Recognition rewards.
  • Annual holiday leave.
  • Maternity and paternity leave.
  • 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.

Key skills/competency:

  • Distributed Systems Testing
  • Python Development
  • Go Development
  • CI/CD Pipelines
  • Test Automation
  • Cloud Orchestration
  • Kubernetes
  • OpenStack
  • Linux Systems
  • Networking Fundamentals

Tags:

Distributed Systems Testing Software Engineer
Distributed Systems
Testing
Test Automation
CI/CD
Cloud Orchestration
Quality Engineering
Debugging
Monitoring
Resilience
Performance
Python
Go
Jenkins
CircleCI
GitHub Actions
OpenStack
Kubernetes
Terraform
AWS
Linux

Share Job:

How to Get Hired at Canonical

  • Research Canonical's culture: Study their mission, values, recent news, and employee testimonials on LinkedIn and Glassdoor.
  • Tailor your resume: Highlight distributed systems testing, Python/Go, CI/CD, and cloud experience for Canonical roles.
  • Showcase relevant projects: Provide specific examples of test automation, system resilience, and cloud platform work.
  • Prepare for technical depth: Expect questions on Python/Go, Linux, networking, and distributed system testing principles.
  • Emphasize collaboration and proactivity: Demonstrate experience in remote team collaboration and leading new initiatives.

Frequently Asked Questions

Find answers to common questions about this job opportunity

Explore similar opportunities that match your background