Auf einen Blick
Canonical sucht einen Softwareentwickler zur Fokussierung auf dqlite, eine verteilte SQLite-Datenbank mit eigenem Raft-Bibliothek für Konsens und Replikation. Sie werden Enhancements an libraft, dqlite und go-dqlite entwickeln und umsetzen.
💰 $80.000–140.000/Jahr
📊 Mid-Level
🕒 Vollzeit
🌍 Remote
🗺️ EMEA
- Erfahrung mit Raft und verteilten Systemen
- Gute C- und Go-Programmierungskenntnisse
- Verständnis von Concurrency und asynchroner Programmierung
- Bachelor in Informatik oder STEM
C
Go
Distributed Systems
Raft
Asynchronous Programming
✅ Geeignet für
- Ingenieure mit Erfahrung in verteilten Systemen
- C- und Go-Programmierer, die an Infrastruktur arbeiten möchten
- Remote-Worker in der EMEA-Zeitzone
🚫 Weniger geeignet
- Frontend-Entwickler ohne Systemprogrammierungserfahrung
- Anfänger in der Softwareentwicklung
- Kandidaten außerhalb der EMEA-Zeitzone
💡 Gut zu wissen
- Reisen 2-4 Mal jährlich erforderlich für Team-Sprints
- Tiefes technisches Verständnis von Datenbanken und Raft erforderlich
- Starke englische Kommunikation notwendig
Über das Unternehmen
Canonical ist ein führender Anbieter von Open-Source-Software und Betriebssystemen für globale Unternehmens- und Technologiemärkte. Das Unternehmen hat über 1000 Kollegen in mehr als 70 Ländern und arbeitet seit seiner Gründung 2004 dezentralisiert. Ubuntu ist eine der wichtigsten Open-Source-Projekte für Cloud, Datenwissenschaft, AI, IoT und Engineering-Innovation.
Deine Aufgaben
- Design und Implementierung von Verbesserungen an libraft, dqlite und go-dqlite
- Entwicklung in diesen Softwarekomponenten sowie Bearbeitung von Issues und Benutzeranfragen
- Debugging und Behebung von Fehlern, die von Benutzern entdeckt werden
- Verbesserung von Jepsen-Tests, traditionellem HA-Datenbank-Testing und Stress-Tests
- Teilnahme am Ingenieurprozess durch Code- und Architektur-Reviews
- Zusammenarbeit mit der Open-Source-Community und kommerziellen Partnern
Deine Voraussetzungen
- Erfahrung mit verteilten Systemen (vorzugsweise mit Raft)
- Gute C-Programmierungserfahrung
- Solides Verständnis von asynchroner Programmierung und Concurrency-Patterns
- Fähigkeit, sich schnell in neue Systeme einzuarbeiten
- Starke schriftliche und mündliche Kommunikationsfähigkeiten
- Bachelor-Abschluss oder gleichwertiger Abschluss in Informatik, STEM oder ähnliches
Benefits
- Verteilte Arbeitsumgebung mit zwei jährlichen Team-Sprints vor Ort
- Persönliches Lern- und Entwicklungsbudget von USD 2000 pro Jahr
- Jährliche Vergütungsüberprüfung
- Anerkennungsprämien
- Jährlicher Urlaub
- Elternzeitregelung
- Reisemöglichkeiten, um Kollegen an neuen Orten zu treffen