C, Golang Software Engineer working on dqlite, a Raft extension for SQLite

Contract type
Ongoing
Work mode
Remote · EMEA
Experience
3 years

Job description

A software developer role focused on dqlite, Canonical's distributed SQLite database built on its own Raft library, and the related libraft and go-dqlite components. The role involves designing and implementing features, fixing user issues, and improving automated testing for these components used in MicroK8s, LXD and other projects.

At a glance

Employment
Full-time
Work mode
Remote · EMEA

What you'll do

  • Design and implement features across dqlite
  • Debug and fix issues encountered by your users
  • Improve Jepsen tests, traditional HA database automated testing and stress tests
  • Participate in our engineering process through code and architectural review
  • Engage with the open source community and commercial partners
  • Design and implement enhancements to the libraft, dqlite and go-dqlite components consumed in MicroK8s, LXD and other projects
  • Respond to issues and user inquiries

What we're looking for

  • Experience with distributed systems (preferably with Raft)
  • Good C programming experience
  • Capacity to learn quickly about new systems and techniques
  • Strong written and verbal communication skills
  • Bachelor's or equivalent in Computer Science, STEM or similar degree

Nice to have

  • Solid understanding of asynchronous programming and concurrency patterns

Your team

dqlite

The team working on dqlite, a distributed SQLite database using Canonical's own Raft library, available as a pure C library or through a Go package, with bindings planned for Python and other languages.

Benefits

  • 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
  • Performance-driven annual bonus

Apply

About Canonical

A pioneering tech firm at the forefront of the global move to open source

Canonical is a leading provider of open source software and operating systems to the global enterprise and technology markets. Its platform, Ubuntu, is widely used in enterprise initiatives such as public cloud, data science, AI, engineering innovation and IoT. The company is a pioneer of global distributed collaboration, with 1000+ colleagues in 70+ countries and very few office based roles.

Mission

To be at the forefront of the global move to open source, publishing Ubuntu as the platform for AI, IoT and the cloud

Key facts

  • 1000+ colleagues
  • 2004
  • Open source software and operating systems
  • Publishes Ubuntu, one of the most important open source projects
  • Remote-first company since its inception in 2004
  • 1000+ colleagues in 70+ countries
  • Founder led, profitable and growing
  • Teams meet two to four times yearly in person

What they value

  • Excellence
  • Fairness globally
  • Diversity of experience, perspectives, and background