
About the Role
Canonical is hiring software engineers to work across the Ubuntu Engineering organization. You will focus on quality, performance, and resilience, designing and engineering new software while managing the packaging, integration, and testing of the Ubuntu open source catalog.
Key Engineering Teams
- Foundations: Maintaining core utilities, bootloaders, filesystems, and toolchains.
- Server: Leading the design and evolution of Ubuntu Server.
- Desktop: Driving Ubuntu Desktop, including immutable desktop initiatives, WSL, and Flutter-based applications.
- Debcrafters: Managing the health and forward movement of the Ubuntu archive.
Responsibilities
- Design, build, and ship software using Rust, Go, and Python.
- Package, integrate, and test open source software for Ubuntu repositories.
- Debug system-level issues and provide robust solutions.
- Author technical and community documentation.
- Contribute to upstream and neighboring open source projects.
- Mentor colleagues and improve internal development processes.
Requirements
- Exceptional academic track record (STEM degree or compelling alternative path).
- 2 to 4 years of professional software engineering experience post-university.
- Demonstrated passion for open source software.
- Proficiency in Rust, Go, Python, Flutter, or C/C++.
- Excellent written and spoken English.
- Ability to travel twice a year for company events (up to two weeks each).
Nice-to-Have Skills
- Experience with Linux distributions and distribution engineering.
- Knowledge of software packaging and build systems/toolchains.
- Background in performance or security engineering.
Benefits
- Distributed work environment with twice-yearly in-person sprints.
- Annual personal learning and development budget of $2,000 USD.
- Annual compensation reviews and performance-driven bonuses.
- Comprehensive leave policies and wellness platform access.
- Travel opportunities and professional development support.
Open to
Worldwide
Sign in to track applications and earn points.