Les Métiers

Data Engineer : celui qui rend la donnée accessible

Publié le4 min de lecture

Le Data Engineer met à disposition les données pour les Analyst et Scientist. Comprendre son rôle, quand le recruter, et comment il travaille avec vos devs backend.

Dernier profil de notre série sur les métiers de la data, le Data Engineer est celui qui rend tout le reste possible. Sans lui, le Data Analyst travaille sur des données incomplètes et le Data Scientist ne peut pas industrialiser ses modèles. C'est le profil qui structure la plomberie de vos données pour que tout le monde puisse s'en servir.

Le cœur du métier

Le Data Engineer est là pour mettre à disposition les données de l'entreprise aux Data Analysts et Data Scientists. C'est avant tout un développeur, mais un développeur qui s'est spécialisé dans le domaine de la donnée. Il connaît la majorité des bases de données du marché, les formats de fichiers, les protocoles de transfert, et peut choisir les bons outils pour répondre au contexte qui lui est donné.

Concrètement, il va concevoir et maintenir les pipelines qui transportent vos données depuis les bases de production vers des systèmes optimisés pour l'analyse : DataWarehouses, Data Lakes, ou d'autres architectures selon les besoins. Il s'assure que les données arrivent au bon endroit, au bon moment, dans le bon format, et surtout avec le bon niveau de qualité.

La collaboration avec les développeurs backend

Le Data Engineer travaille beaucoup avec les développeurs backend, car ce sont souvent eux qui créent les données et leur schéma dans les bases de données de production. Cette collaboration est essentielle et fonctionne dans les deux sens : le Data Engineer a besoin de comprendre comment les données sont structurées en production, et les développeurs backend ont besoin de savoir comment leurs choix de modélisation impactent la chaîne d'analyse en aval.

Chez Wizbii, cette collaboration a pris une forme très concrète. Quand nous avons mis en place les transferts de données entre MongoDB et BigQuery, le Data Engineer a implémenté toute la partie complexe avec Spark : le framework de transfert, les transformations nécessaires, la gestion des erreurs. Ensuite, la configuration des transferts pour chaque nouvelle collection a été confiée aux développeurs backend, qui étaient les mieux à même de décider du format des données à stocker et des champs pertinents à transférer. Ils n'avaient pas la compétence pour implémenter le pipeline technique avec Spark, mais une fois ce pipeline en place, ils pouvaient s'en servir de manière autonome.

Un rôle de SRE appliqué à la Data

Cette manière de fonctionner, construire la plateforme puis la mettre à disposition des équipes, ressemble beaucoup à ce que fait un SRE dans le mouvement DevOps. Le SRE ne fait pas tout le travail d'infrastructure pour toute l'entreprise : il met en place les outils, les patterns et les bonnes pratiques, puis chaque équipe s'approprie ces outils pour ses propres besoins.

Chez Wizbii, nous avions d'ailleurs fonctionné exactement de la même manière sur l'infrastructure : toute la complexité Terraform et Helm avait été mise en place par des SRE, puis chaque équipe backend utilisait ces outils dans ses propres repositories pour gérer ses déploiements. Le Data Engineer applique cette même philosophie aux données. Son rôle n'est pas de répondre à toutes les demandes de données de l'entreprise, mais de construire une plateforme qui permette à chacun de se servir. C'est une approche beaucoup plus scalable que de centraliser toutes les demandes sur une seule personne.

Quand recruter un Data Engineer ?

Le Data Engineer répond à des problèmes de scalabilité, de cohérence et d'industrialisation des données. Il faut donc attendre de voir ces problèmes arriver avant de considérer une embauche. C'est typiquement le troisième profil data à recruter, après le Data Analyst et éventuellement le Data Scientist.

Chez Wizbii, nous avons d'abord commencé avec un Data Analyst qui travaillait sur une base SQL simple, puis recruté deux Data Scientists qui utilisaient la même base. Ce n'est que quand nous avons constaté que cette solution arrivait au maximum de ses capacités que nous avons recruté un Data Engineer. Sa double mission était claire : mettre à disposition nos données dans un DataWarehouse scalable, en l'occurrence BigQuery, puis aider les Data Scientists à industrialiser leurs travaux pour passer du prototype à la production.

À l'inverse, chez Winter, nous avions mis en place un DataWarehouse avec Zoho Analytics assez rapidement, mais sans Data Engineer pour en assurer la qualité. Résultat : des problèmes réguliers de cohérence dans les données et des décisions plus compliquées à prendre. Ce n'est pas tant l'outil qui manquait que la compétence pour s'assurer que les données qui y arrivaient étaient fiables et bien structurées.

Si vous n'êtes pas encore prêt pour un recrutement permanent, une première option intéressante est de faire appel à une prestation sur un court terme pour mettre en place la solution, puis de laisser l'équipe existante la piloter au quotidien. Le Data Engineer construit le pipeline, documente son fonctionnement, et l'équipe backend prend le relais pour la configuration courante.

L'impact de l'IA sur le métier

Pour le Data Engineer, ce sont les outils de codage propulsés par l'IA générative qui changent la donne. La mise en place de pipelines de données, l'écriture de transformations Spark, la configuration de connecteurs entre bases de données : toutes ces tâches, historiquement longues et complexes, peuvent être considérablement accélérées avec l'aide de l'IA.

Cela ne remplace pas la compétence architecturale du Data Engineer. Savoir quels outils choisir, comment structurer un DataWarehouse pour qu'il reste maintenable à long terme, quels compromis faire entre temps réel et batch processing : ces décisions nécessitent de l'expérience et une compréhension globale de l'écosystème data. Mais l'implémentation concrète va beaucoup plus vite, ce qui permet à un Data Engineer de couvrir un périmètre plus large qu'auparavant.

En résumé

Le Data Engineer est le profil qui rend la donnée accessible et fiable pour toute l'organisation. Il construit les pipelines et les outils que les autres équipes utiliseront au quotidien, en travaillant étroitement avec les développeurs backend. Ne le recrutez pas trop tôt : attendez d'avoir de vrais problèmes de scalabilité ou de cohérence des données. Et quand vous le faites, assurez-vous qu'il adopte une posture de plateforme plutôt que de service centralisé, en mettant ses outils à disposition des équipes plutôt qu'en traitant chaque demande individuellement.