Software Engineer (Python/Linux/Packaging)

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.

We are hiring talented Software Engineers with strong Python, Packaging and Linux skills and who want to have a positive impact on the day-to-day workflow of thousands of snap, rock and charm publishers. To be successful on this team you'll need to be interested in packaging formats, build systems and automation that can simplify the lives of developers and engineers trying to ship software to the widest possible audience.

We design and maintain specialist Python tools to support the developer build and publication process. The team takes responsibility for tooling that builds snaps, charms and more recently, rocks.

Snapcraft allows developers to deliver app updates to millions of Linux systems automatically, eliminating the long tail of supported releases and complex install instructions. Snapcraft enables thousands of applications from over a thousand developers, including well-recognised names like Spotify, Slack, and Microsoft.

Likewise, Charmcraft enables collaboration between charmed operator developers, and publication on Charmhub, home of the Charmed Operator Collection. Charmed Operators enable developers to package software like databases, event queues, caches, observability tools, identity tools and more, right alongside the operations code that enables teams to integrate and operate that software at scale from Day 0 to Day 1,000, and beyond.

And Rockcraft provides the means for container developers to build production-grade Ubuntu-based container images, regardless of their experience as a software developer. These container images are called Rocks and can be found in various popular container registries, like Docker Hub, offering an opinionated and consistent design that focus on security while providing an homogeneous user experience across all rocks.

What we are looking for in you

  • You have expertise in Python.
  • You have a strong understanding of the makeup of a modern GNU/Linux distribution.
  • You have a good understanding of build systems and toolchains, including for cross-compilation.
  • Experience working with container technology, such as Docker, Kubernetes and LXD.
  • Use your familiarity with languages, toolchains, frameworks, integrations, and CI systems to extend the snap build ecosystem
  • Work with external open source and commercial projects to understand how we can better serve community needs.

What we offer you

Your base pay will depend on various factors including your geographical location, level of experience, knowledge and skills. In addition to the benefits above, certain roles are also eligible for additional benefits and rewards including annual bonuses and sales incentives based on revenue or utilisation. Our compensation philosophy is to ensure equity right across our global workforce.

In addition to a competitive base pay, we provide all team members with additional benefits, which reflect our values and ideals. Please note that additional benefits may apply depending on the work location and, for more information on these, you can ask in the later stages of the recruitment process.

  • Fully remote working environment - we’ve been working remotely since 2004!
  • 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 new locations to meet colleagues at ‘sprints’
  • Priority Pass for travel and travel upgrades for long haul company events

About Canonical

Canonical is a pioneering tech firm at the forefront of the global move to open source. As the company that publishes Ubuntu, one of the most important open-source projects and the platform for AI, IoT, and the cloud, we are changing the world of software. We recruit on a global basis and set a very high standard for people joining the company. We expect excellence; in order to succeed, we need to be the best at what we do. Most colleagues at Canonical have worked from home since our inception in 2004.​ Working here is a step into the future and will challenge you to think differently, work smarter, learn new skills, and raise your game.

Canonical is an equal opportunity employer

We are proud to foster a workplace free from discrimination. Diversity of experience, perspectives, and background create a better work environment and better products. Whatever your identity, we will give your application fair consideration.

#LI-remote

What this application asks

greenhouse

First Name, Last Name, Email, Phone, Resume/CV

  • During this application process I agree to use only my own words. I understand that plagiarism, the use of AI or other generated content will disqualify my application. choose one
  • How did you perform in mathematics at high school? choose one
  • How did you perform in your native language at high school? choose one
  • Please share your rationale or evidence for the high school performance selections above. Make reference to provincial, state or nation-wide scoring systems, rankings, or recognition awards, or to competitive or selective college entrance results such as SAT or ACT scores, JAMB, matriculation results, IB results etc. We recognise every system is different but we will ask you to justify your selections above. written answer
  • What was your bachelor's university degree result, or expected result if you have not yet graduated? Please include the grading system to help us understand your result e.g. ‘85 out of 100’, ‘2:1 (Grading system: first class, 2:1, 2:2, third class)’ or ‘GPA score of 3.8/4.0 (predicted)’. We have hired outstanding individuals who did not attend or complete university. If this describes you, please continue with your application and enter ‘no degree’.
  • We require all colleagues to meet in person 2-4 times a year, at internal company events lasting between 1-2 weeks. We try to pick new and interesting locations that will likely require international travel and entry requirement visas and vaccinations. Are you willing and able to commit to this? choose one
  • Describe your Python software engineering experience. written answer
  • Describe your Linux software engineering experience - what languages and development environments have you used? written answer
  • Describe your experience with software compilation, cross-compilation and toolchains written answer
  • What time zone are you in? choose one
  • Website optional
  • LinkedIn Profile optional
  • Please confirm that you have read and agree to Canonical's Recruitment Privacy Notice and Privacy Policy. choose one
  • In which country do you currently work? choose one
  • In the past ten years, looking only at the time since you graduated your first undergraduate degree, how many companies have you worked for? choose one
  • Which gender do you identify as? choose one
  • Please indicate your nationality: choose any
  • Please indicate your race or ethnicity: choose one

See also

要針對這個職缺調整履歷嗎?

目前無法檢查您與這個職缺的符合程度;請先將履歷加入個人檔案,下次即可查看。

A new version of freehire is available