
Remote opportunity at
CanonicalGo (Golang) Software Engineer, Developer Tooling and Containers
Canonical, the publisher of the widely used Ubuntu operating system, is hiring a Go (Golang) Software Engineer for its Developer Tooling and Containers team. This remote…
Career Tools
About This Role
Canonical, the publisher of the widely used Ubuntu operating system, is hiring a Go (Golang) Software Engineer for its Developer Tooling and Containers team. This remote position is open to candidates located in APAC time zones. The company delivers open-source software and platforms supporting artificial intelligence, data science, the cloud, Internet of Things, and enterprise infrastructure. In this role, you will help build an innovative open-source developer experience tool designed…
Job Description
Canonical, the publisher of the widely used Ubuntu operating system, is hiring a Go (Golang) Software Engineer for its Developer Tooling and Containers team. This remote position is open to candidates located in APAC time zones. The company delivers open-source software and platforms supporting artificial intelligence, data science, the cloud, Internet of Things, and enterprise infrastructure. In this role, you will help build an innovative open-source developer experience tool designed to integrate seamlessly with modern IDEs, SDKs, and the Ubuntu desktop environment. The project aims to eliminate tedious environment setup across domains like machine learning operations and robotics. This position suits engineers passionate about crafting developer tools, possessing strong Linux system fundamentals, and valuing collaborative, peer-reviewed engineering. Canonical operates as a globally distributed organization with remote teams that gather in-person multiple times a year for strategy alignment.
Responsibilities
- Design user experiences for new capabilities within the developer tool
- Write robust and high-quality code to implement new features
- Focus on implementation correctness, performance, quality, and security
- Collaborate closely with internal and external teams
Requirements
- Professional software development experience using Go, Python, C, or C++
- Understanding of Linux system-level fundamentals such as cgroups and namespaces
- Proficiency in professional written and spoken English
- Ability to travel internationally up to twice a year for company events lasting up to two weeks
- Strong communication skills with the confidence to share ideas and exchange feedback
Qualifications
- Experience working with LXC and LXD
- Background in AI, machine learning, CUDA, or OpenVINO
- Familiarity with the internals of system and language package managers
- Undergraduate degree in a technical discipline or an alternative proven path
Core Skills
Benefits
- Distributed work environment featuring twice-yearly in-person team sprints
- Annual personal learning and development budget of USD 2,000
- Annual compensation reviews
- Performance-driven annual bonus or commission
- Recognition rewards
- Annual holiday leave
- Maternity and paternity leave
- Team Member Assistance Program and Wellness Platform
- Priority Pass and travel upgrades for long-haul company events
Frequently Asked Questions
Answers are based only on the employer’s listing; where it doesn’t say, neither do we.
Is this position remote?
Yes, this is a remote role intended for candidates located within APAC time zones.
What salary does this position offer?
The source posting does not specify the salary for this role.
Are there travel requirements for this job?
Yes, employees are expected to travel internationally twice a year for company events that can last up to two weeks.
What programming languages are accepted for this role?
Candidates must have professional software development experience using Go, Python, C, or C++.
Sample Interview Questions
AI-generated questions tailored to this specific role — a preview of the full practice set.