Software Engineer (Python/Linux/Packaging)

Canonical - Jobs
Minneapolis, MN, US
Full-time

Job Description

Job Description

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.

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 that is 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 on a daily basis.

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.

Canonical has been a remote-first company since its inception in 2004. Work at Canonical is a step into the future, and will challenge you to think differently, work smarter, learn new skills, and raise your game.

Canonical provides a unique window into the world of 21st-century digital business.

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

30+ days ago
Related jobs
Canonical
Minneapolis, Minnesota

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. Canonical delivers open source software to millions of Linux, Windows and Mac...

General Dynamics
Bloomington, Minnesota

Requires a Bachelor’s degree in Software Engineering, or a related Science, Engineering or Mathematics field. As a software engineer for the High Performance Computing Group, you’ll be a member of a cross functional team developing and supporting mission applications. We encourage you to apply if yo...

Canonical
Minneapolis, Minnesota

This role requires quality-oriented software engineering in Python and a focus on software interoperability over a vast range of target releases and environments. Excellent Python skills are a key requirement, with previous contributions to open source Python projects being an advantage. You have ex...

Living Talent Company
Minneapolis, Minnesota

Lead Software Engineer (Senior & Self-Guided/ Management Track). ...

020 Travelers Indemnity Co
Saint Paul, Minnesota

Travelers is seeking a Software Engineer II to join our organization as we grow and transform our Technology landscape. Individual will complete advanced end to end engineering tasks for specific system assignments including designing, developing, analyzing, configuring, testing, debugging, troubles...

Travelers
Saint Paul, Minnesota

Travelers is seeking a Software Engineer II to join our organization as we grow and transform our Technology landscape. Individual will complete advanced end to end engineering tasks for specific system assignments including designing, developing, analyzing, configuring, testing, debugging, troubles...

Garda Capital Partners
Wayzata, Minnesota

This is an exciting position offering opportunities to gain exposure to enterprise software development practices at a global hedge fund. Aid in the development of new lines of business solutions using Python, Excel and Relational Databases. Year of object-oriented development, preferably with Pytho...

Promoted
Epicor
Minneapolis, Minnesota

The Principal Product Developer is involved in the execution of strategy for product development and also provides recommendations to Senior Management on all stages of the product development cycle. Python 3 using Django and REST Framework. Extensive experience within Python coroutines, tasks, & As...

Promoted
Atomic Data
Minneapolis, Minnesota

Bachelor's degree or equivalent combination of education and experience in Engineering, Mathematics, or Computer Science, along with 5+ years of professional network engineering experience; or advanced knowledge with 10+ years of experience in a high-performance infrastructure engineering enviro...

Promoted
Target
Brooklyn Park, Minnesota

As a Senior Engineer, you serve as a specialist in the engineering team that supports the product. You show expertise in applying the appropriate software engineering patterns to build robust and scalable systems. You have the skills to design and implement the architecture on your own, but choose t...