Canonical - We deliver open source to the world faster, more securely, and more cost-effectively than any other company. We develop Ubuntu, the world’s most popular enterprise Linux from cloud to edge, together with a passionate global community of 200,000 contributors. Ubuntu means 'humanity to others. We chose it because it embodies the generosity at the heart of open source, the new normal for platforms and innovation. Together with a community of 200,000, we publish an operating system that runs from the tiny connected devices up to the world's biggest mainframes, the platform that everybody uses on the public cloud, and the workstation experience of the world's most productive developers. Secure and reliable, elegant and intuitive, and open for innovation - Ubuntu is the future of open source, which is why it's the fastest-growing Linux in the world despite already being the most widely deployed.
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.
Responsibilities
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
Requirements
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