Software Engineer (Python/Linux/Packaging)
Canonical (View all Jobs)
Home based - Americas, EMEA
1. Review your open source contributions at shortlist stage. 2. 4x60m interviews over Hangouts, each of which is carried out blind (none of the interviewers talk to each other until the final review). The company is fully remote, so there is no on-site.
Programming Languages Mentioned
Canonical delivers open source software to millions of Linux, Windows and Mac machines through Ubuntu and the wider Canonical ecosystem. We are expanding our scope, to help developers ship their software efficiently to clouds and IoT devices.
This is an opportunity for a talented software engineer with a passion for developer experience and build tooling to have a positive impact on the day-to-day workflow of thousands of snap 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 (OCI images).
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.
Who you are
- 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.
Canonical is proud to foster a workplace free from discrimination. Diversity of experience, perspectives, and background lead to a better environment for our employees and a better platform for our users and customers.
Please mention No Whiteboard if you apply!
I'm a one-man team looking to improve tech interviews, and could use any support! 😄