Senior Software Engineer EMEA, Americas

Company: Canonical

The Snapcraft team at Canonical (Ubuntu) is working to make it easy to deliver software and updates to all Linux-based cloud, IoT, and desktop systems safely and automatically.

We are looking for a Senior Software Engineer to join our globally-distributed, home-based team. We want someone with years of war stories building developer tools to help re-architect the core of Snapcraft ( We aim to integrate it deep into Python, Node, Ruby, Electron, and other tools so that releasing your app for tens of millions of Linux users is a natural extension of, npm run and more.

The team is motivated by making developers' lives easier. We want to see people spend time on what makes their app unique and interesting, not on packaging. We also understand that developers currently face an impossible choice between few updates to lower the risk of breakage and frequent updates to lower the risk of compromise.

This job involves moderate international travel for up to one week at a time.

Key responsibilities

  • Our core mission is to make developers’ lives easier. You will have a keen sense of how Snapcraft can further reduce friction.
  • You will leverage the volumes of data generated by use of the platform to inform production decisions and demonstrate where points of friction still persist.
  • Snapcraft should be a joy to use. You have an eye for good user experience. You enjoy guiding the user or getting them back on rails with tasteful instruction.
  • Building snaps should feel familiar, building on the tools developers already know. You’ll be conversant in many languages, frameworks, integrations, and CI systems. You’ll teach these to produce snaps.
  • You will be working with several upstreams projects and software developers to best understand how we can better serve the developer community needs.
  • Sometimes our developers just need a helping hand. You will be available to share your knowledge of the development process and snapcraft to ensure our community have everything they need to be successful. Sometimes this is online, other times it may be in person at conferences or meet-ups.

Required skills

  • Expertise in Python or similar
  • Experience building developer tools or other developer-targeted products
  • Hold yourself and others to a high standard when working with production deployments
  • Excellent communications skills in the English language, both verbal and written, especially in online environments such as Slack and Google Hangouts
  • Collaborate proactively within a distributed team
  • Bachelor's degree in Computer Science or equivalent

Desirable skills

  • Experience with language packaging systems, such as PIP and NPM
  • Portfolio of regular Open Source contributions and other public demonstrations of leadership
  • Experience working on a distributed team
  • Demonstrable public speaking skills

Vacancy page :

Similar jobs