Question d'entretien pour Développeur backend

Votre API se met à renvoyer des expirations sous charge, mais le CPU de la base est bas et les requêtes semblent rapides. Où regardez-vous ?

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

Réponse rapide

Cette combinaison pointe vers un épuisement du pool de connexions ou une limite de concurrence similaire, pas vers une base lente. Regardez le temps d'attente du pool et les connexions actives contre inactives : les requêtes font la queue pour une connexion pendant que chaque détenteur la garde trop longtemps, souvent à cause d'un appel externe lent dans une transaction, d'un délai d'expiration manquant, ou d'une connexion fuitée jamais rendue. Corrigez d'abord la durée de détention, puis dimensionnez le pool délibérément.

Pourquoi les recruteurs posent cette question

C'est un incident réaliste où la métrique évidente semble saine, donc ça teste si vous raisonnez sur tout le chemin de la requête. Le recruteur veut entendre parler d'attente sur une ressource, du danger de faire des appels réseau dans une transaction, et de pourquoi un pool plus grand est souvent la mauvaise correction. Savoir que la taille du pool doit se rapporter à la capacité de la base plutôt qu'au nombre d'instances montre une vraie expérience opérationnelle.

Comment structurer votre réponse

  • Reformulez le symptôme comme une attente sur une ressource, pas des requêtes lentes.
  • Nommez les métriques qui le confirment : temps d'attente du pool, connexions actives, saturation.
  • Listez les causes courantes de détention prolongée d'une connexion.
  • Expliquez comment vous dimensionnez le pool et ce qui arrive si vous vous contentez de l'augmenter.

Exemple de réponse

Exemple parlé, à la première personne

Des requêtes rapides plus des demandes lentes signifient que le temps est passé à attendre quelque chose, et le pool est le suspect habituel. Je regarderais le temps d'attente du pool et la durée de détention des connexions, plus le comptage côté base des sessions actives contre idle in transaction. Un tas de idle in transaction est révélateur : quelque chose a ouvert une transaction puis a fait un travail qui n'est pas du travail de base de données. C'est presque toujours la cause, un appel HTTP à un prestataire de paiement ou une sérialisation lente à l'intérieur d'une transaction, donc chaque requête garde une connexion une seconde au lieu de cinq millisecondes et le pool se vide à une fraction du trafic. La correction consiste à raccourcir la section critique : faire l'appel externe avant ou après la transaction, ajouter des délais d'expiration au niveau instruction et transaction, et s'assurer que chaque chemin rend sa connexion même en cas d'erreur. Seulement ensuite je toucherais à la taille, et prudemment, parce que chaque instance la multiplie. Augmenter le pool sans corriger la durée de détention ne fait que déplacer la file vers la base et transforme un endpoint lent en panne globale.

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

  • Comment décideriez-vous la bonne taille de pool pour dix instances applicatives ?
  • Qu'indique idle in transaction, et comment le repérez-vous tôt ?
  • Où un proxy de connexions aide-t-il, et que ne résout-il pas ?

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

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