‹ Back to list

Release Automation Software Engineer

Home-based, EMEA


Role Summary

Be part of the team delivering the world’s most popular cloud operating system: Ubuntu! We are looking for an experienced software engineer or devops engineer, combining software development skills with software and infrastructure delivery experience, to join our highly dynamic team to keep the Ubuntu cloud experience the best one out there.

You will work closely with Amazon, Microsoft, Google and other world-class cloud partners to ensure that using Ubuntu in their environments is up to date, consistent, reliable, and the best option. Your time will be split between build system development (using Python, jenkins and shell), implementation of cloud-related features within Ubuntu Server itself, operation of our continuous delivery pipelines, and direct partner engagement. You’ll be responsible for a wide variety of projects and assignments which contribute to the stability and functionality that our cloud users have come to expect. You will strive to automate the delivery of existing and new Ubuntu image products applied to all modern workloads from web servers to GPU-aided AI for servers, VM’s and containers.

Key Responsibilities

  • Build automated, highly reliable image delivery, testing and publication pipelines
  • Collaborate remotely with a diverse set of team members and remain highly motivated, productive, and organized
  • Participate in strong engineering process through code and architectural review
  • Design, build and integrate new features and enhancements into Ubuntu that will support users of Ubuntu in public clouds
  • Engage in bug-fixing work across a wide variety of components of the Ubuntu platform, helping to ensure that we produce regular high-quality releases and updates on time
  • Take personal ownership of problems and drive them to solutions
  • Write high-quality code to create new features and fix bugs
  • Actively engage with the open source community and commercial partners

Required Skills And Experience

  • Degree level education, preferably in a technology field
  • Significant python programming experience
  • Strong written and verbal communication skills
  • Experience with DevOps automation, tools, and methodologies
  • Strong, practical experience with at least 1 of Azure, Google or AWS IAAS and their product offerings
  • Strong experience with containers

Nice-to-have Qualifications

  • Involvement in open source projects
  • Knowledge about common software design patterns
  • Experience in developing against APIs and using SDKs
  • Strong experience in Ubuntu/Debian system administration
  • Experience writing or maintaining python packages used publicly or inside your company
  • Experience configuring Jenkins jobs and config as code
  • Experience with major devops automation tools (e.g. Juju, Terraform, Puppet, Ansible, Salt, Chef, etc.)
  • Experience interacting with one of the major cloud platforms via their SDKs for automation
  • Experience designing, writing and maintaining cloud-based applications leveraging its service offering (e.g. EC2+S3+dynamoDB)


Travel to international destinations is expected for 1 week at a time approximately 2-4 times per year. Locations in recent years have included Cape Town, Budapest, Seattle, Berlin, Montreal, and Brussels.

What Canonical Offers:

  • Learning and Development
  • Annual Compensation Review
  • Recognition Rewards
  • Annual Leave
  • Priority Pass for travel
  • Flexible working option

Canonical believes a diverse workforce enhances our ability to deliver world class software and services which meet the world’s computing needs. We are committed to ensuring equal employment opportunities to all qualified individuals. All qualified applicants will receive consideration for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age, or veteran status.


Apply for this role


Location unavailable