Junior Software Engineer at Canonical

Job Description
Canonical; the company behind Ubuntu is hiring Junior Software Engineers from anywhere in the world. If you’re passionate about open source, eager to grow, and excited about working with a global team, this is a standout opportunity.
About the Role
As a Junior Ubuntu Software Engineer, you’ll contribute to the development, packaging, testing, and evolution of Ubuntu one of the world’s most widely used open-source platforms. You could work with several engineering teams, including Foundations, Server, Desktop, or Debcrafters.
Your work may involve:
- Building and shipping software in Rust, Go, Python, C/C++, or Flutter
- Packaging and integrating open-source projects
- Debugging and delivering long-term, stable solutions
- Collaborating with distributed teams across time zones
- Contributing to upstream open-source communities
This role is ideal for early-career engineers looking to build real-world experience in Linux, automation, distributed systems, and open-source software.
What You Need
- A strong academic background or a compelling alternative journey
- Degree in CS/STEM (or equivalent practical experience)
- Experience with at least one of: Rust, Go, Python, C/C++, Flutter
- Love for open-source technologies
- Excellent written and spoken English
-
Ability to travel twice per year for team meetups
Nice to Have
- Familiarity with Linux distributions
- CI/CD or debugging experience
-
Contributions to open-source projects
Why You’ll Love Working Here
Canonical offers:
- Fully remote work across all time zones
- Annual learning budget ($2,000)
- Yearly compensation reviews & performance bonuses
- Team retreats in beautiful international locations
-
Generous leave, parental benefits, and wellness support
If you’re excited to help build the future of Ubuntu while growing your engineering career, this role is an incredible entry point into the world of open-source development.