
Software Engineer (Python/Linux/Packaging) at Canonical
Home Based - Americas; Home based - EMEAFull-timeCharm EngineeringPosted about 1 month ago
About the Role
<p>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.</p>
<p>The company is founder-led, profitable, and growing.</p>
<p><span style="font-weight: 400;">We are hiring talented <strong>Software Engineers</strong> with strong <strong>Python, Packaging and Linux skills</strong> 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.</span></p>
<p><span style="font-weight: 400;">We design and maintain specialist Python tools to support the developer build and publication process. The team takes responsibility for tooling that builds <a href="https://snapcraft.io" target="_blank">snaps</a>, <a href="https://juju.is/">charms</a> and more recently, <a href="https://documentation.ubuntu.com/rockcraft">rocks</a>. </span></p>
<p><span style="font-weight: 400;"><a href="https://github.com/snapcore/snapcraft" target="_blank">Snapcraft</a> 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.</span></p>
<p><span style="font-weight: 400;">Likewise, <a href="https://github.com/canonical/charmcraft" target="_blank">Charmcraft</a> enables collaboration between charmed operator developers, and publication on<a href="https://charmhub.io/"> Charmhub</a>, home of the Charmed Operator Collection. </span><span style="font-weight: 400;">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. </span></p>
<p><span style="font-weight: 400;">And <a href="https://github.com/canonical/rockcraft/">Rockcraft</a> 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.</span></p>
<h2><span style="font-weight: 400;">What we are looking for in you</span></h2>
<ul>
<li style="font-weight: 400;"><span style="font-weight: 400;">You have expertise in Python.</span></li>
<li style="font-weight: 400;"><span style="font-weight: 400;">You have a strong understanding of the makeup of a modern GNU/Linux distribution.</span></li>
<li style="font-weight: 400;"><span style="font-weight: 400;">You have a good understanding of build systems and toolchains, including for cross-compilation.</span></li>
<li style="font-weight: 400;"><span style="font-weight: 400;">Experience working with container technology, such as Docker, Kubernetes and LXD.</span></li>
<li style="font-weight: 400;"><span style="font-weight: 400;">Use your familiarity with languages, toolchains, frameworks, integrations, and CI systems to extend the snap build ecosystem</span></li>
<li style="font-weight: 400;"><span style="font-weight: 400;">Work with external open source and commercial projects to understand how we can better serve community needs.</span></li>
</ul>
<h2><span style="font-weight: 400;">What we offer you</span></h2>
<p><span style="font-weight: 400;">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. </span></p>
<p><span style="font-weight: 400;">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.</span></p>
<ul>
<li style="font-weight: 400;"><span style="font-weight: 400;">Fully remote working environment - we’ve been working remotely since 2004!</span></li>
<li style="font-weight: 400;"><span style="font-weight: 400;">Personal learning and development budget of 2,000USD per annum</span></li>
<li style="font-weight: 400;"><span style="font-weight: 400;">Annual compensation review</span></li>
<li style="font-weight: 400;"><span style="font-weight: 400;">Recognition rewards</span></li>
<li style="font-weight: 400;"><span style="font-weight: 400;">Annual holiday leave</span></li>
<li style="font-weight: 400;"><span style="font-weight: 400;">Parental Leave</span></li>
<li style="font-weight: 400;"><span style="font-weight: 400;">Employee Assistance Programme</span></li>
<li style="font-weight: 400;"><span style="font-weight: 400;">Opportunity to travel to new locations to meet colleagues at ‘sprints’</span></li>
<li style="font-weight: 400;"><span style="font-weight: 400;">Priority Pass for travel and travel upgrades for long haul company events</span></li>
</ul>
<h2><span style="font-weight: 400;">About Canonical</span></h2>
<p>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.</p>
<h2><span style="font-weight: 400;">Canonical is an equal opportunity employer</span></h2>
<p>We are proud to foster a workplace free from discrimination. Diversity of experience, perspectives, and background create a better work environment and better products.<a href="https://canonical.com/careers/diversity/identity"> Whatever your identity, we will give your application fair consideration.</a></p>
<p><span style="font-weight: 400;">#LI-remote </span></p>
Related Roles
Software Engineer - Cross-platform C++ - Multipass
Canonical
Home based - EMEAObservability Engineering Manager
Canonical
Home Based - Americas; Home based - EMEAEngineering Manager - Data Platform
Canonical
Home based - WorldwideGo (Golang) Software Engineer, Developer Tooling and Containers
Canonical
Home Based - APACEngineering Manager - MLOps & Analytics
Canonical
Home based - WorldwideStaff Software Engineer for Identity Management (Go/Golang)
Canonical
Home Based - Americas; Home based - EMEA