Canonical Circular Logo

C, Golang Software Engineer

Canonical Dubai, United Arab Emirates Posted: 26 Apr 2025

Financial

  • Estimate: $80k - $120k*
  • Zero income tax location

Accessibility

  • Fully Remote
  • Apply from abroad
  • Visa Provided

Requirements

  • Experience: Unspecified
  • English: Professional

Position

About the Job: Canonical is a leading provider of open-source software and operating systems for global enterprise and technology markets. Our platform, Ubuntu, is widely used in various initiatives such as public cloud, data science, AI, engineering innovation, and IoT. We support some of the world’s leading public cloud providers and silicon companies and are known for our global distributed collaboration, with over 1,000 colleagues in more than 70 countries. Most roles are remote, with team meetings occurring two to four times a year in various locations worldwide.

We are looking for a software developer to focus on dqlite, our distributed SQLite database that utilizes our Raft library for consensus and replication. Dqlite can be used as a pure C library or through a Go package, with plans to provide bindings for Python and other languages. Your work will involve designing and implementing enhancements to libraft, dqlite, and go-dqlite components, which are utilized in projects such as MicroK8s and LXD. You will also respond to issues and user inquiries and will have the opportunity to make a significant impact on modern computing technologies.

What You Will Focus On:

  • Design and implement features across dqlite.
  • Debug and resolve issues encountered by users.
  • Improve automated testing processes including Jepsen tests and stress tests.
  • Engage in our engineering process through code and architectural review.
  • Collaborate with the open-source community and commercial partners.

What We Are Looking For:

  • Experience with distributed systems (preferably with Raft).
  • Strong programming experience in C.
  • Solid understanding of asynchronous programming and concurrency patterns (a plus).
  • Quick learner regarding new systems and techniques.
  • Strong written and verbal communication skills.
  • Bachelor’s degree or equivalent in Computer Science, STEM, or related field.

Work Conditions:

  • Remote work environment in EMEA.
  • Opportunities for in-person team sprints twice yearly.
  • Personal learning and development budget of USD 2,000 per year.
  • Annual compensation reviews and performance-driven bonuses.
  • Additional benefits including recognition rewards, annual leave, and maternity/paternity leave.

Language Requirements: English proficiency is required for written and verbal communication.

About Canonical: Canonical is a pioneering tech firm, leading the global shift to open-source. As the publisher of Ubuntu, one of the most significant open-source projects, we are continuously changing the world by encouraging innovative thinking and smarter work practices. We maintain a remote-first culture, promoting a fair workplace free from discrimination, valuing diversity in experience and perspectives.

Apply now

Jobs you might like   View all jobs

About Canonical

We deliver open source to the world faster, more securely and more cost effectively than any other company. We're also the publishers of Ubuntu, the world’s most popular enterprise Linux from cloud to edge, together with a passionate global community of 200,000+ contributors.