Job Description
Company: Canonical
Location: Remote (Open to all time zones)
Requisition ID: 1087
About Canonical
Canonical is the company behind Ubuntu, one of the world’s most widely used open-source operating systems. We power innovation in public cloud, AI, data science, IoT, and engineering, working with global enterprises and leading technology providers.
Canonical is founder-led, profitable, and fully distributed, with 1,200+ colleagues across 80+ countries. We emphasize remote collaboration, with in-person team meetings held twice yearly in exciting locations worldwide.
Role Overview
We are hiring Golang engineers of all levels to join our distributed teams. This role is ideal for software engineers who:
- Prefer working in Go for high-performance, secure systems.
- Are passionate about Linux and open-source software.
- Want to contribute to critical infrastructure and distributed systems.
After initial interviews, candidates will be placed on the product team that best aligns with their skills and interests.
Responsibilities
- Design, implement, test, and document high-quality Golang software.
- Debug, troubleshoot, and fix user-facing issues.
- Participate in code and architecture reviews.
- Collaborate with colleagues and the open-source community on technical specifications.
- Identify opportunities to improve engineering and operations practices.
- Deploy and operate services when required.
- Advocate technically for your product team.
Required Qualifications
- Strong academic track record and/or relevant experience in software engineering.
- Undergraduate degree in Computer Science or STEM, or a strong alternative path with demonstrated experience.
- Experience designing and developing Golang software on Linux.
- Passion for Linux at the system level (Debian/Ubuntu preferred).
- For senior roles: experience building, deploying, and operating distributed systems and APIs.
- Professional written and spoken English.
- Strong organizational skills, self-motivation, and ability to deliver to schedule.
- Excellent interpersonal skills and professional conduct.
- Willingness to travel twice yearly for company events (up to two weeks).
Nice-to-Have Skills
- Ubuntu Linux development experience.
- Experience with Juju, LXD, Microk8s, Snapd, Ubuntu Core, Ubuntu Pro.
- Performance engineering and security experience.
What We Offer
- Fully distributed, remote-first environment with biannual in-person team sprints.
- Personal learning and development budget of USD 2,000/year.
- Annual compensation review with performance-driven bonus or commission.
- Holiday leave, maternity/paternity leave, and Employee Assistance Program.
- Travel opportunities and upgrades for long-haul company events.
- Recognition rewards and global performance-driven benefits.
Canonical values diversity, inclusion, and equality. We provide fair consideration for all applicants regardless of background, identity, or experience.