Junior Ubuntu Software Engineer

Canonical Ltd.

United States

Remote

USD 65,000 - 95,000

Full time

14 days+

Get a reply from this employer

Your resume and cover letter, tailored to exactly what they’re hiring for.

Get past ATS filters

Job summary

Canonical is hiring junior engineers to work across the breadth of our Ubuntu Engineering organisation. You will contribute to designing, building and shipping foundational systems software and applications across Rust, Go, Flutter, and Python.

Remote roles are available in every time zone, with in-person team gatherings a few times a year. You will join a globally distributed engineering team, sharing knowledge and contributing to the Ubuntu repositories and open source projects.

Qualifications

  • Academic excellence with strong records in high school and university.
  • Undergraduate degree in Computer Science or STEM.
  • Drive and a proven willingness to go beyond expectations.
  • Passion for open source software.
  • Experience with Rust, Go, Python, Flutter or C/C++.
  • Professional written and spoken English.
  • Excellent communication and interpersonal skills.
  • Willingness to travel twice a year for company events.

Responsibilities

  • Design, build and ship software in Rust, Go, Python and C/C++.
  • Packaging, integrating, testing and uploading open source software to the Ubuntu repositories.
  • Collaborate as part of a globally distributed team.
  • Contribute to upstream and neighboring open source projects.
  • Document and communicate technical work clearly.

Skills

Academic excellence
English communication
Team collaboration

Education

Undergraduate degree in Computer Science or STEM

Tools

Rust
Go
Python
Flutter
C/C++

Job description

Canonical is a leading provider of open source software and operating systems to the global enterprise and technology markets. Our platform, Ubuntu, is very widely used in breakthrough enterprise initiatives such as public cloud, data science, AI, engineering innovation and IoT. Our customers include the world's leading public cloud and silicon providers, and industry leaders in many sectors. The company is a pioneer of global distributed collaboration, with 1200+ colleagues in 75+ countries and very few office based roles. Teams meet two to four times yearly in person, in interesting locations around the world, to align on strategy and execution. The company is founder led, profitable and growing. We are hiring junior engineers to work across the breadth of our Ubuntu Engineering organisation - engineers who care deeply for quality, performance and resilience in software, engineers who are just as comfortable designing and engineering new software as they are packaging, integrating, testing and shipping the incredible catalog of open source software provided by the Ubuntu repositories. Our engineers integrate the freshest open source software, provide robust upgrade paths and engineer the future of Ubuntu. Ubuntu is not just the world’s most deployed open source operating system, it's a platform that enables innovation for millions of users across the globe. Our community represents the full breadth of the developer experience; from students, hobbyists and freelancers to high performance engineering and creative teams in corporate and academic environments.

The four key teams that ship Ubuntu
  • Foundations: maintaining foundational software: architectures, package managers, compilers, toolchains, bootloaders, filesystems and core utilities
  • Server: leading the design, evolution and future of our Ubuntu Server distribution
  • Desktop: driving Ubuntu Desktop, our future immutable desktop: Ubuntu Core Desktop, WSL, gaming technology, and a suite of modern applications for the desktop crafted with Flutter
  • Debcrafters: a new team responsible for the forward movement, maintenance and overall health of the Ubuntu archive: one of the most abundant repositories of open source software available today

Bring your existing expertise and learn new skills by working on one of the most prolific pieces of open source software.

Categories you could work on
  • Development: design, build and ship new foundational systems software and applications in Rust, Go, Flutter, and Python
  • Architecture: engineer the integration of open source from boot firmware to cloud applications deployment
  • Packaging: a combination of Debian and Snap packaging to ship software in the distribution
  • Automation: build and maintain the machinery responsible for building, testing and shipping Ubuntu
  • Distro Engineering: the maintenance and evolution of a Linux distribution and its repositories

If you have skills in those areas, or you have other skills you believe could contribute to Ubuntu, and you're keen to get started building your career in open source, then this is the role for you. Our junior career path caters for both new graduates and early careers engineers. At Canonical, you will have the opportunity to engage with and contribute to the broader open source community. We're looking for individuals who can help build a thriving community and contribute with enthusiasm and precision to a broad range of technologies.

Location

We have remote roles open in every time zone.

The role entails Based on the first round of interviews, we identify specific teams where you might be an excellent fit and conduct second-round interviews with those teams.

Our engineers are
  • Designing, building and shipping software in Rust, Go, Python and C/C++
  • Packaging, integrating, testing and uploading open source software to the Ubuntu repositories
  • Debugging issues, then designing and delivering robust solutions
  • Authoring and improving technical and community documentation
  • Contributing to upstream and neighboring open source projects
  • Collaborating as part of a globally distributed team
  • Continuously learning and progressing their technical and professional skills
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
  • A passion for open source software
  • Experience with Rust, Go, Python, Flutter or C/C++
  • Professional written and spoken English
  • Excellent communication and interpersonal skills
  • Ability to travel twice a year, for company events up to two weeks each
Nice-to-have skills
  • Familiarity with Linux distributions
  • Familiarity with system debugging tools and techniques
  • Familiarity with automation tooling and CI/CD systems
  • Experience contributing to open source projects
What we offer you

We consider…

Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Junior Ubuntu Software Engineer
Junior Ubuntu Software Engineer

Canonical • United States

Remote
USD 75,000 - 110,000
Learning budget
Annual pay review
Holiday leave
+3
Ubuntu Software Engineer
Ubuntu Software Engineer

Canonical • United States

Remote
USD 110,000 - 190,000
Distributed work environment
USD 2,000 learning budget
Annual compensation review
+4
Ubuntu Engineering Lead
Ubuntu Engineering Lead

Canonical • United States

Remote
USD 120,000 - 180,000
Learning budget USD 2,000/yr
Annual compensation reviews
Recognition rewards
+5
Ubuntu Engineering Manager
Ubuntu Engineering Manager

Canonical • United States

Remote
USD 140,000 - 210,000
Distributed work with team sprints
Learning budget USD 2,000 per year
Annual compensation review
+1
Graduate Software Engineer, Open Source and Linux, Canonical Ubuntu
Graduate Software Engineer, Open Source and Linux, Canonical Ubuntu

Canonical Ltd. • United States

Remote
USD 85,000 - 110,000
Personal learning & development budget
Annual compensation review
Twice-yearly team sprints in person
+1
Graduate Software Engineer, Open Source and Linux, Canonical Ubuntu
Graduate Software Engineer, Open Source and Linux, Canonical Ubuntu

Canonical • United States

Remote
USD 85,000 - 120,000
Team sprints twice a year
Learning budget USD 2,000/year
Annual compensation review
+5
Senior/Staff/Principal Engineer
Senior/Staff/Principal Engineer

Canonical • United States

Remote
USD 150,000 - 230,000
Distributed team environment
Learning budget USD 2,000/yr
Annual compensation review
+6
Software Engineer, Open Source and Linux, Canonical Ubuntu
Software Engineer, Open Source and Linux, Canonical Ubuntu

Canonical Ltd. • United States

Remote
USD 100,000 - 150,000
Learning budget
Annual review
Recognition rewards
+5
Senior/Staff/Principal Engineer
Senior/Staff/Principal Engineer

Canonical Ltd. • United States

Remote
USD 180,000 - 240,000
Twice-yearly team sprints
Learning budget USD 2,000/year
Annual compensation review
+6
Software Engineer, Sustaining Engineering
Software Engineer, Sustaining Engineering

Canonical • United States

Remote
USD 140,000 - 170,000
Distributed work environment
Learning budget USD 2,000/year
Annual compensation review
+6