Question d'entretien pour ingénieur data

Une équipe amont renomme une colonne sans prévenir et votre pipeline casse. Que faites-vous, et que changez-vous ensuite ?

Ce que le recruteur cherche à évaluer, comment structurer votre réponse et un exemple parlé à adapter.

Réponse rapide

À court terme, rétablissez le service : mappez le nouveau nom dans la couche de staging, relancez les partitions concernées et vérifiez que les chiffres en aval se réconcilient. À long terme, cessez de compter sur la bonne volonté. Mettez en place un contrat de données avec l'équipe source, validez le schéma à l'ingestion pour que les échecs soient attrapés à la frontière avec un message clair, et faites atterrir les payloads bruts sans typage, pour qu'un renommage ne détruise pas le chemin d'ingestion lui-même.

Pourquoi les recruteurs posent cette question

Les recruteurs veulent voir à la fois la réponse à incident et la pensée systémique, et comment vous travaillez entre équipes. Les meilleures réponses évitent d'accuser l'équipe amont et construisent plutôt des défenses : validation de schéma en bordure, contrats avec alerting, et une couche brute résistante au changement. Ils veulent aussi que vous vérifiiez si d'autres pipelines partagent la dépendance.

Comment structurer votre réponse

  • Corrigez en avant dans la couche de staging et relancez les partitions concernées.
  • Vérifiez qui d'autre consomme cette source et prévenez-les.
  • Déplacez la validation de schéma à la frontière d'ingestion.
  • Proposez un contrat de données avec versionnement et préavis.
  • Rendez la couche brute tolérante, pour que l'ingestion ne casse jamais sur un renommage.

Exemple de réponse

Exemple parlé, à la première personne

Dans l'immédiat, c'est un petit correctif : aliaser la nouvelle colonne dans le modèle de staging, relancer les partitions concernées, et réconcilier deux ou trois agrégats de confiance pour être sûr que rien n'a changé de sens en plus du nom. Je vérifie aussi dans le catalogue les autres consommateurs de cette table, parce que si cela nous a cassés, cela a probablement cassé quelqu'un d'autre qui ne l'a pas encore remarqué. Puis vient la partie systémique. Je préfère de loin que l'échec survienne à l'ingestion, avec un message disant colonne customer_id attendue, customer_identifier trouvée, plutôt que trois modèles plus loin avec une colonne nulle. La validation de schéma part donc à la frontière, et la couche brute stocke le payload tel quel, ce qui veut dire que l'ingestion continue de fonctionner et que seule la couche typée proteste. Et j'irais parler à l'équipe source, non pour me plaindre mais pour poser un contrat : voici les champs dont nous dépendons, voici l'alerting, merci de nous donner un préavis de livraison. Nous avons fait cela dans mon poste précédent, et cela a transformé un problème récurrent de 6h du matin en un message Slack une semaine à l'avance.

Vous passez cet entretien bientôt ? GhostPilot écoute votre appel en direct, repère la question dès qu'elle est posée et affiche une réponse structurée à l'écran en temps réel. Essayez-le lors de votre prochain entretien blanc, ou prenez un Session Pass à $29, sans abonnement, pour le jour J.

Voir comment ça marche

Questions de relance à prévoir

  • Que met-on dans un contrat de données, et qui le fait respecter ?
  • Comment détecteriez-vous un changement sémantique quand le nom reste le même ?
  • Comment versionnez-vous une table pour que les consommateurs migrent progressivement ?

Autres questions pour ingénieur data

Votre recruteur posera sa propre version de celle-ci. Collez votre véritable fiche de poste dans le Question Predictor gratuit et obtenez les 20 questions que ce poste a le plus de chances de poser, avec ce que chacune cherche vraiment à sonder.

Prédire mes questions

Répétez les questions difficiles avant qu'on vous les pose

Entraînez-vous avec un copilote en direct, puis présentez-vous prêt. Un Session Pass à $29 vous accompagne pendant l'entretien, sans abonnement et sans engagement.

Obtenir GhostPilot