Taro Logo

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

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
Mid-Level Software Engineer
Remote
1,000 - 5,000 Employees
3+ years of experience
Enterprise SaaS
This job posting may no longer be active. You may be interested in these related jobs instead:

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

Canonical, the company behind Ubuntu, is seeking a software developer to work on dqlite, their distributed SQLite database that uses a custom Raft library for consensus and replication. This role combines low-level systems programming with distributed systems expertise, focusing on both C and Go development. The position offers the opportunity to work on fundamental computing technologies used in projects like MicroK8s and LXD.

The role involves designing and implementing features, debugging issues, improving testing infrastructure, and engaging with both the open source community and commercial partners. The ideal candidate should have strong experience with distributed systems (particularly Raft), C programming, and asynchronous programming patterns.

As a remote-first company since 2004, Canonical offers a modern work environment with twice-yearly in-person team sprints. The company provides comprehensive benefits including a personal development budget, annual compensation reviews, and various travel opportunities. This position represents an excellent opportunity to impact modern computing while working with a global team at the forefront of open source technology.

The role requires a blend of technical expertise and communication skills, as you'll be working with both code and community. Canonical's commitment to excellence and innovation makes this an ideal position for someone looking to advance their career in distributed systems and database technology while contributing to significant open source projects.

Last updated 2 months ago

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

  • Design and implement features across dqlite
  • Debug and fix issues encountered by users
  • Improve Jepsen tests, traditional HA database automated testing and stress tests
  • Participate in engineering process through code and architectural review
  • Engage with the open source community and commercial partners

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

Go
  • Experience with distributed systems (preferably with Raft)
  • Good C programming experience
  • Solid understanding of asynchronous programming and concurrency patterns
  • 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

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

Education Budget
Parental Leave
  • 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?