9 days ago

Graduate Software Engineer, Open Source and Linux

Canonical

Hybrid
Full Time
$90,000
Hybrid

Job Overview

Job TitleGraduate Software Engineer, Open Source and Linux
Job TypeFull Time
CategoryCommerce
Experience5 Years
DegreeMaster
Offered Salary$90,000
LocationHybrid

Who's the hiring manager?

Sign up to PitchMeAI to discover the hiring manager's details for this job. We will also write them an intro email for you.

Uncover Hiring Manager

Job Description

About Canonical

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.

Most colleagues at Canonical have worked from home since its inception in 2004. Working here is a step into the future, and will challenge you to think differently, work smarter, learn new skills, and raise your game.

Canonical is an equal opportunity employer. We are proud to foster a workplace free from discrimination. Diversity of experience, perspectives, and background create a better work environment and better products. Whatever your identity, we will give your application fair consideration.

About the Role: Graduate Software Engineer, Open Source and Linux

We are hiring 2025 and 2026 Graduate Software Engineers into engineering teams around the world. As a global platform company, we offer a wide range of software engineering challenges, in both open source products and commercial business systems. We have teams that work in a variety of languages, typically Python, Golang, Rust, C/C++, JavaScript and of course... Bash. We work from the very lowest levels of the Linux system - BIOS and boot loaders, firmware, kernel and drivers, all the way up to desktop applications and containers. We work on tiny devices like the Raspberry Pi and new RISC-V boards, all the way up to supercomputers, clouds and Kubernetes clusters. We work on compilers and toolchains, and we work on security, cryptography, performance and documentation. Some of our teams focus on packaging thousands of pieces of software, others focus on deep contributions to a single body of code.

If you are excited about the potential that open source has for humanity and the enterprise, you have outstanding results in your academic career, and you are excited to contribute to the open source stack, this is the best way to apply to Canonical. We will work with you to identify teams and projects that would be interesting and a good fit for your skills and motivations. The process is highly competitive, it will require effort and excellence to succeed if you apply here.

Most of our engineering teams work from home. We try to align a single team in a single time zone - EMEA (Europe, Middle East and Africa), APAC (Asia Pacific and Indian Ocean), and AMER (North, South and Central Americas). Even though you work from home, we try to ensure you always have colleagues alongside to coach and mentor you, and for the companionship of shared problem solving and pair programming. Larger projects have multiple teams and might span the globe. We work with the open source community and specialize in building teams that work well in the 'fishbowl' of open source engineering. This is full time work, five days a week, often solving hard problems with significant responsibility. We don't generally work weekends and nights and we do enjoy good holidays but we also expect productive and intense engagement Monday to Friday.

We bring all our engineering teams together in person twice a year for a deep 'sprint' with other teams to stimulate discussion and enable a wide range of career development paths. This is a fantastic way to demonstrate and develop your skill in software, learn about a wide range of technologies, make a meaningful impact to open source, and see some very interesting new cities that you might never otherwise get to visit.

If you find the open source stack amazing, and you have been a consistent high-performing student in your school and university, then this will be a challenging and exciting start to your career.

The role entails:

  • Shaping the roadmap for your product at global sprints every six months
  • Focusing on design and user experience, even for developer tooling and command line apps
  • Writing high quality, resilient and performant code, potentially serving millions of demanding daily users
  • Working towards mastery of key programming languages and Linux system knowledge
  • Engaging with users and the open source community through code reviews and issue trackers
  • Responding to customer issues as a priority, develop an understanding of enterprise requirements
  • Developing skills and awareness of security in software design and implementation

What we are looking for in you:

  • Exceptional academic track record from both high school and university
  • Undergraduate degree in Computer Science, Business Informatics, Mathematics or another STEM discipline with programming courses
  • Confidence to get started and deliver high quality code in one of Python, Rust, C/C++, Golang, JavaScript or Java
  • Experience with Ubuntu or another Linux distribution
  • Track record of going above-and-beyond expectations to achieve outstanding results
  • Result-oriented and organized, with the drive to meet commitments
  • Personal projects in technology and software engineering beyond the curriculum
  • Professional written and spoken English
  • Excellent interpersonal skills, curiosity, flexibility, and accountability
  • Personal responsibility and accountability
  • Thoughtfulness, self-awareness and the ability to reflect and develop
  • Ability to travel internationally twice a year for company events up to two weeks long

Nice-to-have skills:

  • Upstream open source contributions
  • Packaging and Linux distribution contributions - Debian, Fedora, Arch, Nix or another
  • Leadership and organization skills
  • Presentation and writing skills
  • Business and commercial interests

What we offer colleagues:

  • 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
  • Team Member Assistance Program & Wellness Platform
  • Opportunity to travel to new locations to meet colleagues
  • Priority Pass and travel upgrades for long-haul company events

Key skills/competency:

  • Python
  • Golang
  • Rust
  • C/C++
  • JavaScript
  • Bash
  • Linux Systems
  • Open Source
  • Kubernetes
  • Software Security

Tags:

Graduate Software Engineer
open source
Linux
software development
coding
design
security
community engagement
problem-solving
performance optimization
Python
Golang
Rust
C/C++
JavaScript
Bash
Kubernetes
firmware
Git
Ubuntu

Share Job:

How to Get Hired at Canonical

  • Research Canonical's culture: Study their mission, values, recent news, and employee testimonials on LinkedIn and Glassdoor. Understand their pioneering approach to global distributed collaboration and open source.
  • Tailor your resume strategically: Highlight exceptional academic achievements, personal software projects, and any contributions to open-source initiatives. Emphasize your proficiency in languages like Python, Rust, C/C++, Go, and JavaScript, and demonstrate deep Linux experience.
  • Showcase deep technical expertise: Be prepared to discuss your experience with Ubuntu or other Linux distributions, system-level programming (BIOS, kernel, drivers), and cloud technologies like Kubernetes. Quantify your achievements when possible.
  • Prepare for comprehensive interviews: Canonical seeks candidates with strong problem-solving skills, accountability, and professional communication. Practice articulating your technical approaches and demonstrating curiosity and flexibility.
  • Demonstrate passion for open source: Share examples of upstream contributions, packaging, or community engagement. Articulate why you are excited about open source's potential for humanity and enterprise.

Frequently Asked Questions

Find answers to common questions about this job opportunity

Explore similar opportunities that match your background