Graduate Software Engineer at Canonical
Closed
A globally remote graduate role contributing to Ubuntu and other open-source or commercial systems using languages including Python, Go, Rust, C/C++ and JavaScript.
- Location
- Remote
- Advertised region
- Home based - Worldwide
- Work arrangement
- remote
- Technologies
- Python, JavaScript, Java, C++, Kubernetes, Linux, Go
Create a free application profile — Keep your skills and projects in a reusable profile. Private by default; you choose when to share. Apply for this job directly with the employer.
This opening is not confirmed as active. Check the employer source before applying.
Role overview
Canonical is recruiting 2025 and 2026 graduates across multiple engineering teams. Assignments can involve open-source products or business systems; teams are usually aligned by EMEA, APAC or Americas time zones. The role is globally remote, with in-person company sprints twice a year and colleagues available for coaching and mentoring.
Responsibilities
- Write reliable, efficient code for products and developer tools, with attention to user experience.
- Take part in product-roadmap discussions at company sprints every six months.
- Deepen skills in Linux and the programming languages used by the assigned team.
- Engage with users and open-source communities through code reviews and issue trackers.
- Respond to customer problems and incorporate security into design and implementation.
Qualifications
- A degree in computer science, business informatics, mathematics or another STEM subject with programming courses, plus the academic record requested by the employer.
- Ability to deliver quality code in at least one of Python, Rust, C/C++, Go, JavaScript or Java.
- Experience using Ubuntu or another Linux distribution and evidence of software projects beyond coursework.
- Professional written and spoken English, organisation, curiosity and accountability.
- Willingness to travel internationally twice yearly for company events; open-source contributions and presentation skills are advantages.
Technology in this role
- Python: Python JavaScript Java C++ Kubernetes Linux .
- JavaScript: Python JavaScript Java C++ Kubernetes Linux .
- Java: Python JavaScript Java C++ Kubernetes Linux .
- C++: Python JavaScript Java C++ Kubernetes Linux .
- Kubernetes: Python JavaScript Java C++ Kubernetes Linux .
- Linux: Python JavaScript Java C++ Kubernetes Linux .
- Go: Python JavaScript Java C++ Kubernetes Linux .
- C: Python JavaScript Java C++ Kubernetes Linux .
- Golang: We have teams that work in a variety of languages, typically Python, Golang, Rust, C/C++, JavaScript and of .
- Rust: Ability to deliver quality code in at least one of Python, Rust, C/C++, Go, JavaScript or .
- Bash: Listed by the employer as part of the role’s technical requirements.
- CAN: Assignments can involve open-source products or business .
Role-specific candidate guide
Preparation notes based on the employer’s stated responsibilities and qualifications.
Understanding the scope. This Graduate Software Engineer, Open Source and Linux, Canonical Ubuntu position at Canonical is best assessed through the work described in the employer’s posting, rather than the title alone. The available role overview says: “Canonical is recruiting 2025 and 2026 graduates across multiple engineering teams. Assignments can involve open-source products or business systems; teams are usually aligned by EMEA, APAC or Americas time zones. The…” Read that statement together with the responsibilities below to understand the likely balance between delivery, coordination and technical decision-making. The role belongs to the embedded and systems software area, but that label is only a guide to the work; the employer’s own requirements remain decisive. Before applying, check the original listing for reporting lines, product or team assignment, employment terms and any details that may have changed since this copy was checked. Where this page says a fact is not specified, treat it as an open question rather than an implied promise.
What the responsibilities signal. The posting specifically names “Write reliable, efficient code for products and developer tools, with attention to user experience.”; “Take part in product-roadmap discussions at company sprints every six months.”; “Deepen skills in Linux and the programming languages used by the assigned team.”. For each duty, identify a project where you performed comparable work and be ready to describe the context, your own contribution, constraints, decisions, and measurable result. Explain how you moved from the initial need to implementation, review, release or operational follow-through, where those stages apply. If the work involved other teams or users, distinguish your decisions from the group’s contribution. Avoid presenting a technology keyword as proof by itself: connect it to the problem you solved, the scale or complexity involved, and what changed after your work. The source may contain additional duties; review it directly before preparing your application.
How to read the requirements. The listed qualifications include “A degree in computer science, business informatics, mathematics or another STEM subject with programming courses, plus the academic record requested by the employer.”; “Ability to deliver quality code in at least one of Python, Rust, C/C++, Go, JavaScript or Java.”; “Experience using Ubuntu or another Linux distribution and evidence of software projects beyond coursework.”. Mark each requirement as demonstrated, adjacent experience.
Benefits
- We consider geographical location, experience, and performance in shaping compensation worldwide. We revisit compensation annually (and more often for graduates and associates) to ensure we recognize outstanding performance. In addition to base pay, we offer a performance-driven annual bonus or commission. We provide all team members with additional benefits which reflect our values and ideals. We balance our programs to meet local needs and ensure fairness globally.
- Distributed work environment with twice-yearly team sprints in person
- Personal learning and development budget of USD 2,000 per year
- 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 publishes Ubuntu and develops open-source products for cloud, AI, connected devices and enterprise infrastructure. It describes most engineering roles as home based, with periodic in-person team gatherings.
Employer websiteHow to apply
Check the original posting to confirm the role is still open before applying.
Check employer postingSource checked: 2026-10-16
Browse job categories
Related jobs
- Graduate Software Engineer, Open Source and Linux at Canonical — Canonical
- Senior AWS Cloud DevOps Engineer at Bosch — Bosch
- Senior AWS Cloud DevOps Engineer — Bosch
- Senior AWS Cloud DevOps Engineer — Bosch
- Open Source Performance Engineer at Canonical — Canonical
- Security Software Engineer at Canonical — Canonical