
Remote opportunity at
CanonicalJunior Ubuntu Software Engineer
Canonical is hiring junior engineers for its Ubuntu Engineering organisation. The role suits new graduates and early-career engineers who want to build a career in open…
Career Tools
About This Role
Canonical is hiring junior engineers for its Ubuntu Engineering organisation. The role suits new graduates and early-career engineers who want to build a career in open source. Engineers work across the Ubuntu teams: Foundations, which maintains core software such as package managers, compilers, toolchains, bootloaders and filesystems; Server, which shapes the Ubuntu Server distribution; Desktop, which handles the desktop experience, WSL, gaming tech and Flutter-built apps; and Debcrafters, which looks…
Job Description
Canonical is hiring junior engineers for its Ubuntu Engineering organisation. The role suits new graduates and early-career engineers who want to build a career in open source. Engineers work across the Ubuntu teams: Foundations, which maintains core software such as package managers, compilers, toolchains, bootloaders and filesystems; Server, which shapes the Ubuntu Server distribution; Desktop, which handles the desktop experience, WSL, gaming tech and Flutter-built apps; and Debcrafters, which looks after the Ubuntu archive.
Engineers write and deliver software in Flutter, Go, Rust and Python, package and integrate open-source software in Debian and Snap formats, and build the automation that builds, tests and ships Ubuntu. They also debug issues, write technical and community documentation, and contribute to upstream and neighbouring open-source projects. After a first round of interviews, candidates are assessed by the teams that best match their skills.
Roles are remote, with openings in every time zone. The posting looks for real enthusiasm for open source, a habit of exceeding expectations, and hands-on use of Flutter, Python, Go, Rust or C/C++.
Responsibilities
- Create, compile and deliver software in Go, Rust, C/C++ and Python
- Package, integrate, test and upload open-source software to Ubuntu repositories
- Debug problems and deliver robust solutions
- Write technical and community documentation
- Contribute upstream and to neighbouring open-source projects
- Work with a globally distributed team and keep learning
Requirements
- A strong academic record from high school and university
- An undergraduate degree in computing or a STEM discipline, or a well-argued alternative route
- Drive, and a habit of exceeding expectations
- Enthusiasm for open-source software
- Experience in at least one of Flutter, Python, Go, Rust or C/C++
- Professional written and spoken English, with good interpersonal and communication skills
- Able to make two trips a year to company events, each up to a fortnight
Qualifications
- Familiarity with Linux distributions
- Comfort using system debugging tooling
- Comfort with automation tools and CI/CD pipelines
- Prior contributions to open-source work
Core Skills
Benefits
- Home-based work plus in-person team sprints twice a year
- Yearly allowance of USD 2,000 toward training
- Yearly pay review and recognition awards
- Yearly holiday leave, plus maternity and paternity leave
- Employee Assistance Programme
- Chances to visit new places and meet coworkers
- Priority Pass access and travel upgrades on long-haul company trips
- Performance-based annual bonus
Frequently Asked Questions
Answers are based only on the employer’s listing; where it doesn’t say, neither do we.
Is the role remote?
Yes, the posting says remote roles are open in every time zone.
Who is the role suited to?
It suits new graduates and early-career engineers who want to build a career in open source.
Is salary information included?
The posting does not specify a salary.
Sample Interview Questions
AI-generated questions tailored to this specific role — a preview of the full practice set.