Software Engineer - Developer Tools

Pioneering tech firm that publishes Ubuntu, leading open source platform for AI, IoT and cloud computing.
Backend
Mid-Level Software Engineer
Remote
Enterprise SaaS · AI · IoT

Description For Software Engineer - Developer Tools

Canonical, the company behind Ubuntu, is seeking a talented Software Engineer to join their Developer Tools team. This role focuses on creating and maintaining Python-based tools that support the developer build and publication process for snaps, charms, and OCI images. The position is crucial in improving the developer experience for thousands of software publishers.

The ideal candidate will work on Snapcraft, which enables automatic app updates to millions of Linux systems, serving major companies like Spotify, Slack, and Microsoft. They'll also work on Charmcraft, which facilitates collaboration between charmed operator developers and enables the packaging and operation of various software solutions at scale.

As a remote-first company since 2004, Canonical offers a modern work environment with a strong focus on open source technology. The role provides an opportunity to impact the global developer community while working with cutting-edge build systems and automation tools. The company offers competitive compensation, including a personal development budget, parental leave, and travel opportunities for team collaboration.

The position requires expertise in Python, deep understanding of Linux distributions, and experience with container technologies. You'll be part of a team that's expanding its scope to help developers efficiently ship software to clouds and IoT devices, making a significant impact on the open-source ecosystem.

Last updated an hour ago

Responsibilities For Software Engineer - Developer Tools

  • Design and maintain specialist Python tools for developer build and publication process
  • Support tooling that builds snaps, charms, and OCI images
  • Work with external open source and commercial projects
  • Extend the snap build ecosystem
  • Improve developer experience and build tooling

Requirements For Software Engineer - Developer Tools

Python
Linux
Kubernetes
  • Expertise in Python
  • Strong understanding of modern GNU/Linux distribution
  • Good understanding of build systems and toolchains, including cross-compilation
  • Experience with container technology (Docker, Kubernetes, LXD)
  • Familiarity with languages, toolchains, frameworks, integrations, and CI systems

Benefits For Software Engineer - Developer Tools

Education Budget
Parental Leave
  • Fully remote working environment
  • Personal learning and development budget of 2,000USD per annum
  • Annual compensation review
  • Recognition rewards
  • Annual holiday leave
  • Parental Leave
  • Employee Assistance Programme
  • Opportunity to travel to meet colleagues at 'sprints'
  • Priority Pass for travel and travel upgrades

Interested in this job?

Jobs Related To Canonical Software Engineer - Developer Tools

Ubuntu Pro Client Software Engineer

Software Engineering role at Canonical developing and maintaining the Ubuntu Pro Client, requiring Python expertise and Linux systems knowledge

Ubuntu Quality Engineer

Ubuntu Quality Engineer position at Canonical, focusing on software quality, automation, and continuous integration for the Ubuntu ecosystem.

HPC Software Engineer

HPC Software Engineer position at Canonical, focusing on Python development and automation for high-performance computing infrastructure.

Python Software Engineer

Python Software Engineer position at Canonical, focusing on developing test automation tools for hardware certification with Ubuntu.

Python and Kubernetes Specialist Engineer - Data, AI/ML and Analytics Solutions

Python and Kubernetes Specialist Engineer for Data, AI/ML and Analytics Solutions at Canonical, creator of Ubuntu.