Are you applying to the internship?
Job Description
Junior Engineer, Ubuntu Engineering | Canonical
The Tone:
This is an early career role at Canonical, located remotely across all time zones. Canonical is a leading provider of open source software and operating systems, with its Ubuntu platform widely adopted in critical enterprise initiatives such as public cloud, data science, AI, and IoT. This role is essential for integrating the latest open source software, providing stable upgrade paths, and engineering the future of Ubuntu, a platform enabling innovation for millions globally.
The TL;DR
• Role: Early Career
• Type: Full-time
• Location: Remote
• Team: Ubuntu Engineering organization
• Mission: Integrate open source software, provide robust upgrade paths, and engineer the future of Ubuntu.
• Tech Stack: Rust, Go, Python, Flutter, C/C++
What You’ll Actually Do
• Software Engineering: Design, build, and ship new foundational systems software and applications using languages like Rust, Go, Python, Flutter, and C/C++.
• Packaging & Integration: Implement Debian and Snap packaging to integrate, test, and upload open source software into the Ubuntu repositories.
• Troubleshooting & Resolution: Debug complex issues within the Ubuntu distribution and engineer robust, effective solutions.
• Documentation & Community: Author and improve technical documentation, while also contributing to upstream and neighboring open source projects.
• Distribution Evolution: Participate in the maintenance and evolution of the Ubuntu Linux distribution and its vast repositories, including building and maintaining automation machinery.
The Must-Haves
• Background: Early Career professional, including new graduates, with an undergraduate degree in Computer Science or STEM, or a compelling narrative demonstrating an alternative path and an exceptional academic track record from both high school and university.
• Experience: Demonstrated drive and a track record of going above and beyond expectations, coupled with hands-on experience in at least one of the following languages: Rust, Go, Python, Flutter, or C/C++.
• Skills: Professional written and spoken English, excellent communication and interpersonal skills for global team collaboration, a strong passion for open source software, and the ability to travel for company events twice a year for up to two weeks each.
• Bonus: Familiarity with Linux distributions, experience with system debugging tools and techniques, familiarity with automation tooling and CI/CD systems, or prior experience contributing to open source projects.