Découplez le déploiement de l'activation avec un feature flag, puis montez en puissance : utilisateurs internes, un petit pourcentage, puis plus large, en surveillant le taux d'erreur et la latence contre le groupe témoin à chaque palier. Gardez l'ancien chemin intact pour que le retour arrière soit un basculement de flag plutôt qu'un redéploiement, rendez le changement rétrocompatible au niveau des données, et fixez à l'avance des critères explicites d'arrêt. Retirez le flag une fois le déploiement terminé.
Pourquoi les recruteurs posent cette question
Le recruteur veut la preuve que vous livrez des changements sans drame. Il écoute la distinction entre déployer et activer, une montée en puissance concrète avec des métriques comme garde-fous, et la conscience que les changements de base de données ont besoin de leur propre danse expand and contract. Mentionner le nettoyage des flags montre que vous avez vécu le désordre qui s'accumule quand chaque déploiement laisse une branche permanente dans le code.
Comment structurer votre réponse
- Séparez le déploiement du code de l'activation du comportement.
- Donnez les paliers de montée en puissance et les métriques qui conditionnent le passage.
- Expliquez les changements de données rétrocompatibles et le retour arrière instantané.
- Incluez l'étape de nettoyage pour que les flags ne s'accumulent pas.
Exemple de réponse
L'idée principale, c'est que déployer et activer sont deux événements différents. Le code part éteint derrière un flag, donc le déploiement lui-même est ennuyeux, puis je l'active d'abord pour les comptes internes, puis un pour cent, puis dix, puis le reste, en marquant à chaque palier une pause assez longue pour que les métriques veuillent dire quelque chose. Ce que je surveille, c'est le taux d'erreur, la latence et la métrique métier que le changement touche, comparés aux utilisateurs restés sur l'ancien chemin, puisqu'une courbe globale peut cacher une régression qui ne touche que le groupe traité. Tout changement de schéma suit expand and contract, pour que les deux chemins de code fonctionnent sur les mêmes tables à tout instant et que je puisse revenir en arrière instantanément, ce qui est tout l'intérêt : le retour arrière doit être un changement de flag, pas un redéploiement sous pression. J'écris à l'avance ce qui me ferait arrêter, parce qu'à deux heures du matin personne ne prend bien cette décision. Et le flag a un propriétaire et un ticket de suppression, puisqu'une base de code avec des dizaines de flags périmés devient impossible à raisonner.
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 gérez-vous un flag qui change de comportement en pleine requête pour un utilisateur ?
- Qu'est-ce que expand and contract pour un renommage de colonne ?
- Comment décidez-vous les paliers de pourcentage et le temps d'attente ?
Autres questions pour Développeur backend
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