This is a general track for Staff Engineer or above in any team at Canonical. After the first round of interviews we will establish which teams might be an excellent fit, and progress your application with them.

Canonical delivers open source to the world across every class of compute. Canonical Ubuntu is the world’s favourite Linux for cloud, desktop and IoT. Our engineering teams work on operating systems, programming languages, applications, devices, infrastructure and services. We work in Golang, Python, C, C++, and Rust for system services, and use React and Flutter on the front end.

In our levelling framework, a Staff Engineer is not only an outstanding software architect and coder, they also demonstrate the leadership qualities needed to work across teams and products, enabling others to create outstanding technologies and communities. A Staff Engineer partners with an Engineering Director, who is also code-capable, and together they take responsibility for product outcomes. We hire based on academic results and proven product execution, and we select those with a passion for open-source software, innovation, and cutting-edge technology. In this role, you will make a significant contribution in Canonical's portfolio through high-quality code, technical leadership, team motivation and direction, exceptional design, and crisp documentation.

As a Staff Engineer you'll drive the architecture, design and evolution of high-impact open source. Our teams work at every level of the stack. From the kernel and system software at the core of Ubuntu through to major language runtimes and the bleeding-edge of cloud automation and distributed systems, you'll have the opportunity to work on complex but highly rewarding projects. Our teams also build the services which deliver Ubuntu to the world, on cloud, devices, servers and PCs.

Additionally, this role will give you the opportunity to engage with the broader open-source community. We're looking for individuals who can help build a thriving community, contribute to a broad range of technologies, and ensure seamless software operations at scale.

Location: we have remote opportunities for Staff Engineers in every time zone.

What your day will look like

  • Lead design and architecture of an impactful open source project
  • Code in Golang, Rust, Python, C/C++ or Typescript / React
  • Collaborate proactively with a globally distributed team
  • Mentor, develop and advise colleagues in their career progression
  • Display technical leadership in Canonical and our communities
  • Debug issues and produce high-quality code to fix them
  • Contribute to technical documentation with the aim to make it the best of its kind
  • Work from home with global travel twice annually for company events

What we are looking for in you

  • An exceptional academic track record from both high school and university
  • Undergraduate degree in Computer Science or STEM, or a compelling narrative about your alternative path
  • Drive and a track record of going above-and-beyond expectations
  • Technical leadership as well as team motivation, direction and pace
  • Well-organised, self-starting and able to deliver to schedule
  • Professional manner interacting with colleagues, partners, and community
  • Deep experience with at least one of Go, Rust, Python or C
  • Subject matter expertise in your engineering domain
  • Conscientiousness and detail orientation, with a focus on performance
  • Professional written and spoken English
  • Experience with Linux (Debian or Ubuntu preferred)
  • Excellent interpersonal skills, curiosity, flexibility, and accountability
  • Passion, thoughtfulness, and self-motivation
  • Excellent communication and presentation skills
  • Result-oriented, with a personal drive to meet commitments
  • Ability to travel twice a year, for company events up to two weeks each

Additional skills that you might also bring

  • Experience with container technologies such as LXD, Docker and Kubernetes
  • Experience with highly concurrent, distributed systems
  • Experience with embedded systems
  • Performance engineering – from kernel to web – benchmarks, optimisation
  • Experience with software security – fuzzing, tabletop threat models, analysis, audit
  • Experience build systems and toolchains, including for cross-compilation
  • Experience with public clouds or OpenStack
  • Experience with Debian/Ubuntu packaging
  • Experience with systems programming or scalable web services
  • Deep quality and test engineering
  • Web or Flutter front-end experience
  • REST and gRPC API experience
  • SQL and NoSQL data store expertise
  • Experience with public clouds or OpenStack
  • Experience with Debian/Ubuntu packaging
  • Experience with systems programming or scalable web services

What we offer you

We consider geographical location, experience, and performance in shaping compensation worldwide. We revisit compensation annually (and more often for graduates and associates) to ensure we recognise outstanding performance. In addition to base pay, we offer a performance-driven annual bonus. We provide all team members with additional benefits, which reflect our values and ideals. We balance our programs to meet local needs and ensure fairness globally.

  • Distributed work environment with twice-yearly team sprints in person
  • Personal learning and development budget of USD 2,000 per year
  • Annual compensation review
  • Recognition rewards
  • Annual holiday leave
  • Maternity and paternity leave
  • Employee Assistance Programme
  • Opportunity to travel to new locations to meet colleagues
  • Priority Pass, and travel upgrades for long haul company events
Canonical

Canonical