Job Description
We are hiring a software developer to focus on dqlite, our distributed SQLite database which uses our own Raft library for establishing consensus and replication. Dqlite is available as a pure C library or through a Go package that we also maintain, and we intend to provide bindings for Python and other languages.<p><br></p>You will design and implement enhancements to the libraft, dqlite and go-dqlite components which we consume in MicroK8s, LXD and other projects. Work includes development in those pieces of software as well as responding to issues and user inquiries.<p><br></p>This is an excellent opportunity for someone who wants to have a meaningful impact on modern computing technologies. Canonical offers a fast-paced team environment and a career full of learning and development opportunities.<p><br></p>What you will do<p><br></p><ul><li>Design and implement features across dqlite</li><li>Debug and fix issues encountered by your users</li><li>Improve Jepsen tests, traditional HA database automated testing and stress tests</li><li>Participate in our engineering process through code and architectural review</li><li>Engage with the open source community and commercial partners</li></ul><p><br></p><strong>Valuable Skills And Experience</strong><p><br></p><ul><li>Experience with distributed systems (preferably with Raft)</li><li>Good C programming experience</li><li>Solid understanding of asynchronous programming and concurrency patterns a plus</li><li>Capacity to learn quickly about new systems and techniques</li><li>Strong written and verbal communication skills</li><li>Bachelor’s or equivalent in Computer Science, STEM or similar degree</li></ul><p><br></p>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 services help businesses worldwide to reduce costs, improve efficiency and enhance security with Ubuntu.<p><br></p>We are proud to foster a workplace free from discrimination. Diversity of experience, perspectives, and background create a better work environment and better products. Whatever your identity, we will give your application fair consideration.<p><br></p>#Stack<p><br></p>