Graduate Software Engineer

March 8, 2026

Are you applying to the internship?

Job Description

About the Job at 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. Canonical 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.

Graduate Software Engineer (2025 & 2026 Intake)

We are hiring 2025 and 2026 Graduate Software Engineers into engineering teams around the world. As a global platform company, Canonical offers a wide range of software engineering challenges in both open source products and commercial business systems.

Our engineering teams work with a diverse tech stack, covering a broad spectrum of software development:

  • Languages: Typically Python, Golang, Rust, C/C++, JavaScript, and Bash.
  • System Levels: From the very lowest levels of the Linux system (BIOS, boot loaders, firmware, kernel, drivers) all the way up to desktop applications and containers.
  • Hardware & Scale: From tiny devices like the Raspberry Pi and new RISC-V boards, up to supercomputers, clouds, and Kubernetes clusters.
  • Specialized Areas: Compilers and toolchains, security, cryptography, performance, and documentation.
  • Team Focus: Some teams focus on packaging thousands of pieces of software, while others contribute deeply to a single body of code.

If you are passionate about the potential of open source for humanity and the enterprise, possess an outstanding academic record, and are eager to contribute to the open source stack, this is an exceptional opportunity to join Canonical. We will collaborate with you to identify teams and projects that align with your skills and motivations. Please be aware that the application process is highly competitive, requiring significant effort and excellence to succeed.

Most of our engineering teams operate in a remote-first environment. We strive to align single teams within specific time zones: EMEA (Europe, Middle East and Africa), APAC (Asia Pacific and Indian Ocean), and AMER (North, South and Central Americas). Despite working remotely, we ensure you have colleagues for coaching, mentorship, shared problem-solving, and pair programming. Larger projects may involve multiple globally distributed teams. We are adept at working within the transparent ‘fishbowl’ of open source engineering and engage actively with the open source community.

This is a full-time role, five days a week, often involving challenging problems and significant responsibility. While we prioritize work-life balance with good holidays and generally avoid weekend/night work, we expect productive and intense engagement from Monday to Friday.

All engineering teams gather in person twice a year for intensive ‘sprints’. These events foster cross-team discussion, enable diverse career development paths, and provide a fantastic opportunity to:

  • Demonstrate and develop your software skills.
  • Learn about a wide range of technologies.
  • Make a meaningful impact on open source.
  • Visit interesting new cities around the world.

If you are captivated by the open source stack and have consistently excelled academically throughout your school and university career, this role promises a challenging and exciting start to your professional journey.

Location

This is a Globally Remote Role.

Key Responsibilities of the Role

  • 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 applications.
  • 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 and developing an understanding of enterprise requirements.
  • Developing skills and awareness of security in software design and implementation.

What We Are Looking For

  • 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 (e.g., Debian, Fedora, Arch, Nix, or others).
  • Leadership and organization skills.
  • Presentation and writing skills.
  • Business and commercial interests.

What We Offer Colleagues

We consider geographical location, experience, and performance in shaping compensation worldwide. Compensation is reviewed annually (and more often for graduates and associates) to ensure outstanding performance is recognized. In addition to base pay, we offer a performance-driven annual bonus or commission. All team members receive additional benefits reflecting our values, with programs balanced to meet local needs and ensure global fairness.

Benefits include:

  • 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.

About Canonical

Canonical is a pioneering tech firm at the forefront of the global move to open source. As the company that publishes Ubuntu, one of the most important open source projects and the platform for AI, IoT, and the cloud, we are actively changing the world of software. We recruit globally and maintain a very high standard for new team members, expecting excellence to ensure our continued success. Most colleagues at Canonical have worked from home since its inception in 2004. Joining Canonical means stepping into the future, challenging you to think differently, work smarter, learn new skills, and elevate your performance.

Canonical is an equal opportunity employer. We are proud to foster a workplace free from discrimination. We believe that diversity of experience, perspectives, and background creates a better work environment and superior products. Whatever your identity, your application will receive fair consideration.