Il tourne à chaque push, rend son verdict en moins de dix minutes, et bloque la fusion en cas d'échec. Ordonnez les étapes du moins cher au plus cher : lint et vérifications de types, tests unitaires, puis tests d'intégration contre de vraies dépendances en conteneurs, puis un seul artefact de build que vous promouvez au lieu de le reconstruire par environnement. Gardez-le déterministe, mettez les tests instables en quarantaine au lieu de relancer à l'aveugle, et rendez les mêmes vérifications exécutables en local.
Pourquoi les recruteurs posent cette question
Le recruteur veut savoir si vous traitez la CI comme un filet de sécurité ou comme une formalité. Les signaux sont la vitesse, parce qu'un pipeline que personne n'attend se fait contourner, l'ordre des étapes pour un échec rapide, la construction unique de l'artefact et sa promotion, et une vraie position sur les tests instables. Dire que la CI doit être reproductible en local montre que vous avez vécu la douleur d'un pipeline vert et d'un portable rouge.
Comment structurer votre réponse
- Commencez par la boucle de retour et un budget de temps.
- Ordonnez les étapes du moins cher au plus cher.
- Construisez une fois et promouvez le même artefact.
- Énoncez une politique explicite sur les tests instables.
Exemple de réponse
La première propriété, c'est la vitesse, parce qu'un pipeline qui prend quarante minutes est un pipeline que les gens contournent. Je veux que le lint et les vérifications de types échouent en moins d'une minute, les tests unitaires en quelques-unes, et l'ensemble sous dix minutes. Les étapes vont donc du moins cher au plus cher : vérifications statiques, tests unitaires, puis tests d'intégration contre de vrais Postgres et Redis en conteneurs plutôt que des mocks, parce que les bugs qui m'intéressent vivent à la frontière. Ensuite il construit un seul artefact, une image de conteneur étiquetée avec le sha du commit, et tous les environnements suivants déploient exactement cette image. Reconstruire par environnement veut dire que ce que vous avez testé n'est pas ce que vous avez livré. Sur les tests instables je suis strict : une relance automatique est une façon de cacher une vraie course, donc un test instable est mis en quarantaine et quelqu'un est responsable de le corriger dans la semaine. Et je veux les mêmes commandes exécutables en local, en général derrière un makefile, parce que déboguer en poussant des commits pour voir ce que dit la CI est une façon lamentable de passer un après-midi.
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 marcheQuestions de relance à prévoir
- Comment accéléreriez-vous une suite qui prend trente minutes ?
- Quelles vérifications feriez-vous tourner sur main mais pas sur les pull requests ?
- Comment gérez-vous les secrets en CI ?
Autres questions pour Ingénieur logiciel
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