Présentation de PgDog
PgDog est une startup de base de données basée à San Francisco, avec une équipe globale. L'objectif est de mettre à l'échelle la base de données la plus populaire, PostgreSQL. PgDog est déjà en production et utilisé par des dizaines d'entreprises, grandes et petites.
Fonctionnement technique
Le poste nécessite une polyvalence, avec des compétences en Rust, Postgres, infrastructure, networking, systèmes distribués, etc. Les tâches consisteront à développer des fonctionnalités qui seront directement mises à la disposition des clients. La technologie utilisée est principalement Rust, qui offre une sécurité de type et une concurrence sans peur, ainsi qu'un écosystème open source riche en bibliothèques.
Architecture et développement
La répartition du temps de travail sera d'environ 30% pour la correction de bogues, 60% pour les nouvelles fonctionnalités et 10% pour les éléments d'infrastructure. Le développement se fera principalement en Rust, avec des références à la documentation Postgres et à des articles de Wikipedia pour comprendre les principes de base. Les exemples de code seront essentiels pour comprendre les mécanismes de la base de données distribuée.
Implications et limites
Le défi est de grande envergure, mais l'opportunité l'est tout autant. Le problème de mise à l'échelle de Postgres est complexe, mais la solution peut être décomposée en tâches plus petites et gérables. L'utilisation de Rust et des principes de base permet de simplifier le processus de développement et de réduire les risques de bogues. L'expérience de l'équipe, notamment avec Instacart, montre que la mise à l'échelle de Postgres peut avoir des résultats significatifs, avec une croissance de 5x en quelques mois.