Overview
Software Engineer - Immutable Ubuntu Desktop 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 widely used in enterprise initiatives across public cloud, data science, AI, engineering innovation, and IoT. We employ 1200+ colleagues in 75+ countries with very few office-based roles. Teams meet two to four times yearly in person to align on strategy and execution. The company is founder-led, profitable, and growing.
We are hiring a Software Engineer on the Core Desktop team. In this role, you will join a dedicated team to build the next generation of immutable Ubuntu desktop. Our goal is to advance security, reliability, and usability for Linux desktops. We combine the best ideas of immutable Linux with the latest Linux desktop experience to provide a better platform for innovation. We primarily code in C / C++ and use Python and Shell scripting, with occasional Go and Dart / Flutter. This role offers a unique opportunity to grow and learn in a fast-paced environment. Your contributions, guided by experienced team members, will help shape the future of Ubuntu’s Core Desktop.
Location : This is a home-based position on a team in the EMEA region.
Responsibilities
- Design and develop elements of the Core Desktop.
- Work with the latest Linux container technologies – kernel namespaces, cgroups, AppArmor, seccomp, and more.
- Write high quality, defensive and performant code for millions of daily users.
- Collaborate with team members to understand the intricacies of immutable desktops.
- Participate in code reviews to understand quality standards and architecture.
- Engage with the Ubuntu community to gather user feedback and insights.
- Contribute to documentation to aid your learning and that of future team members.
- Take part in regular team meetings to discuss progress, challenges, and upcoming sprints.
- Troubleshoot and resolve user-reported issues, gaining experience in debugging and problem-solving.
What we are looking for in you
Outstanding academic results.An undergraduate degree in a technical subject or a compelling narrative about your alternative path.Understanding of software development methodologies and life cycles.A passion for technology and a drive to work with motivated colleagues.Willingness to learn and adapt, with interest in immutable desktop environments.Skills in Linux containerisation technologies – kernel namespaces, cgroups, AppArmor, or seccomp.Skills in Linux desktop environments – XDG portals, FreeDesktop specifications, systemd, GRUB, etc.Skills in C / C++, Go, Python and Shell scripting.Good communication skills for internal and external interactions.Ability to travel twice a year for company events up to two weeks long.Additional Skills That You Might Also Bring
Familiarity with Rust, Go, and Dart / Flutter is a plus.Initiative to proactively identify opportunities and solve challenges.Curiosity, flexibility, and a strong sense of accountability.A focus on soft skills, including passion, enterprise, and self-motivation.What we offer you
Distributed work environment with twice-yearly in-person team sprints.Personal learning and development budget of USD 2,000 per year.Annual compensation review.Recognition rewards.Annual holiday leave.Maternity and paternity leave.Employee Assistance Programme.Opportunity to travel to new locations to meet colleagues.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 publisher of Ubuntu, a leading open source platform for AI, IoT, and the cloud, we recruit on a global basis and maintain high standards for new hires. Canonical is remote-first and has operated since 2004, offering opportunities to think differently, learn new skills, and raise your game. Canonical is an equal opportunity employer and ensures fair consideration for all applicants.
Seniority level
Entry levelEmployment type
Full-timeJob function
Engineering and Information TechnologyIndustries
Software Development#J-18808-Ljbffr