Software Engineer - LXD

Home based - Americas, EMEA

What is Canonical?

Canonical is a growing international software company that works with the open-source community to deliver Ubuntu, “the world’s best free software platform”. Our mission is to realise the potential of free software in the lives of individuals and organisations. Our services are helping individuals and businesses worldwide to reduce costs, improve efficiency and enhance security with Ubuntu.

Software Engineer - LXD

This is an exciting opportunity for a software engineer passionate about open source software, Linux, containers and virtualization. Come build a rewarding, meaningful career working with the best and brightest people in technology at Canonical, a growing international software company.

The LXD team is responsible for the development and maintenance of the container and virtual-machine manager itself (LXD), the low-level container manager (LXC), virtual filesystem for containers (LXCFS), the sqlite and raft based database behind LXD (dqlite) as well as a variety of features in the Linux kernel.

This role is focused on the development of additional services to help with LXD scalability.

We’re looking for Go developers with experience in REST API design and implementation as well as good database design and data management background.

What you’ll do

  • Design and implement and document REST APIs inside a Go codebase
  • Model data, design database schemas and implement data storage in a dqlite database
  • Integrate with external REST APIs and other external services (logging, monitoring, …)
  • Keep quality up through documentation, 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 for internal and external events

Who you are

  • You love technology and working with brilliant people
  • You are curious, flexible, articulate, and accountable
  • You value soft skills and are passionate, enterprising, thoughtful, and self-motivated
  • You have a Bachelor’s or equivalent in Computer Science, STEM or similar degree
  • You have experience programming in Go
  • You have some experience in designing or implementing REST APIs
  • You have some database and data modeling experience
  • You have interest and experience with two or more of the following: cloud computing technologies, virtualization, containers, distributed systems, python, open source community

Canonical is proud to foster a workplace free from discrimination. We truly believe that diversity of experience, perspectives, and background will lead to a better environment for our employees and a better platform for our users and customers. This is something we value deeply and we encourage everyone to come be a part of the world of Ubuntu.


Apply for this role


Location unavailable