Un data contract est un accord explicite et versionné entre l'équipe qui produit une donnée et celles qui la consomment, qui fixe son schéma, sa signification, sa fréquence de mise à jour et ses règles de qualité.
Le contrat décrit les champs, leurs types, les valeurs autorisées, le délai de livraison attendu et la procédure en cas de changement incompatible. Il est écrit dans un format lisible par les machines (souvent YAML) et vérifié automatiquement : un changement qui casse le contrat est bloqué avant d'atteindre les consommateurs.
Le problème qu'il règle est courant : une équipe applicative renomme une colonne, et les tableaux de bord ou les modèles de machine learning qui en dépendaient cassent en silence.
On le croise dans les organisations data matures, souvent avec une approche data mesh. Il s'appuie sur des standards comme l'Open Data Contract Standard, des outils de tests de qualité (Soda, Great Expectations) ou un registre de schémas pour les flux Kafka.
Pourquoi ça compte quand on recrute
C'est un sujet de Data Engineer confirmé ou de lead data, autant organisationnel que technique. Le bon signal : un candidat qui a fait adopter un contrat par une équipe produit, pas seulement écrit un fichier YAML. Demandez comment il a géré le premier changement incompatible. Exiger cette compétence dans une petite équipe data sans producteurs multiples est souvent prématuré.
