Golang System Software Engineer - Containers / Virtualisation

Pioneer tech firm that publishes Ubuntu, one of the most important open source projects and the platform for AI, IoT and the cloud.
Lagos, Nigeria
Backend
Senior Software Engineer
Remote
1,000 - 5,000 Employees
5+ years of experience
Enterprise SaaS · Cloud

Description For Golang System Software Engineer - Containers / Virtualisation

Canonical, the company behind Ubuntu, is seeking a Golang System Software Engineer to work on their next-generation private cloud infrastructure. This role focuses on developing low-level Go code that bridges their REST API with C libraries for container and VM management. The position involves working with KVM, Ceph, and SDN technologies to create enterprise-grade cloud solutions. As part of the LXD team, you'll work across the entire software stack from kernel features to management APIs. This remote position offers the opportunity to impact modern cloud computing while working with a global team. The role requires expertise in Go, C, and system-level programming, with a focus on distributed systems and cloud technologies. Canonical offers a flexible work environment with twice-yearly team meetings and comprehensive benefits including learning opportunities and global travel. The company values diversity and maintains a remote-first culture since 2004, making it an ideal place for those seeking to work at the forefront of open source technology.

Last updated 5 days ago

Responsibilities For Golang System Software Engineer - Containers / Virtualisation

  • Design, implement and document system level Go code
  • Model data, design database schema and implement data storage in a dqlite (SQL) database
  • Maintain code quality through static analysis, unit and system tests
  • Collaborate proactively with a distributed team
  • Discuss ideas and collaborate on finding good solutions
  • Work from home with global travel 2 to 4 weeks/year for internal and external events

Requirements For Golang System Software Engineer - Containers / Virtualisation

Go
Linux
  • Experience programming in Go and C
  • Knowledge in networking and storage technologies
  • Experience with two or more of: cloud computing, virtualisation, containers, distributed systems, open source community
  • Bachelor's or equivalent in Computer Science, STEM or similar degree
  • Curious, flexible, articulate and accountable
  • Values soft skills and is enterprising, thoughtful and self-motivated

Benefits For Golang System Software Engineer - Containers / Virtualisation

Education Budget
Parental Leave
Mental Health Assistance
  • Distributed work environment with twice-yearly team sprints in person
  • 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
  • Priority Pass, and travel upgrades for long haul company events

Interested in this job?

Jobs Related To Canonical Golang System Software Engineer - Containers / Virtualisation

System Software Engineer - GCC/LLVM compiler, tooling, and ecosystem

Senior Software Engineering role at Canonical focusing on GCC/LLVM compiler development and tooling for Ubuntu, offering remote work and global collaboration opportunities.

Senior Software Engineer - Python/MongoDB

Senior Python Software Engineer role at Canonical, building managed MongoDB solutions with focus on cloud deployment and infrastructure automation.

System Software Engineer - GCC/LLVM compiler, tooling, and ecosystem

Senior Software Engineer role at Canonical focusing on GCC/LLVM compiler development and tooling for Ubuntu, working remotely with a global team.

System Software Engineer - GCC/LLVM compiler, tooling, and ecosystem

Senior Software Engineer role at Canonical focusing on GCC/LLVM compiler technology and ecosystem for Ubuntu, working remotely with occasional travel.

System Software Engineer - GCC/LLVM compiler, tooling, and ecosystem

Senior System Software Engineer position at Canonical focusing on GCC/LLVM compiler development and tooling for Ubuntu, offering remote work and global collaboration opportunities.