Question d'entretien pour Ingénieur logiciel

Expliquez le théorème CAP et comment il s'est appliqué à un système sur lequel vous avez travaillé.

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

Réponse rapide

CAP dit que lorsqu'une partition réseau coupe vos noeuds, vous devez choisir entre cohérence et disponibilité. Vous ne pouvez pas renoncer à la tolérance au partitionnement, parce que les réseaux tombent que vous l'ayez prévu ou non. La vraie question est donc ce que fait votre système pendant une partition : refuser les écritures pour rester correct, ou les accepter et réconcilier plus tard. Hors partition vous pouvez avoir les deux, et c'est pour ça que la latence est l'arbitrage du quotidien.

Pourquoi les recruteurs posent cette question

Le recruteur se sert de CAP pour séparer ceux qui ont mémorisé trois lettres de ceux qui ont fait tourner des systèmes distribués. Le signal, c'est de comprendre que la tolérance au partitionnement n'est pas optionnelle, que le choix ne mord que pendant une partition, et qu'au quotidien vous arbitrez en réalité la latence contre la cohérence. Un exemple concret où vous avez choisi un camp pour une fonctionnalité précise est ce qui rend la réponse crédible.

Comment structurer votre réponse

  • Énoncez que la tolérance au partitionnement est un donné, pas un choix.
  • Présentez le vrai choix comme le comportement pendant une partition.
  • Notez qu'en dehors des partitions vous arbitrez la latence, pas la disponibilité.
  • Donnez une fonctionnalité où vous avez choisi chaque camp.

Exemple de réponse

Exemple parlé, à la première personne

Le cadrage que j'utilise, c'est que la tolérance au partitionnement n'est pas un choix, parce que des paquets se perdent et des commutateurs tombent quelle que soit mon architecture. CAP demande donc en réalité ce que fait le système pendant qu'il est coupé : refuser l'écriture pour que personne ne lise de la donnée périmée, ou prendre l'écriture et arranger ça après. Ce que j'aime dans l'extension PACELC, c'est qu'elle nomme la partie à laquelle on a affaire tous les jours, à savoir que même quand tout va bien vous arbitrez la latence contre la cohérence, parce qu'une écriture avec quorum entre régions coûte des allers-retours. Sur un produit où j'ai travaillé, on a découpé par fonctionnalité. Tout ce qui touchait à la facturation passait par le primaire avec une garantie de lecture après écriture, parce que facturer quelqu'un deux fois ne se répare pas avec des excuses. Le fil d'activité lisait depuis les réplicas et pouvait avoir quelques secondes de retard, et personne ne l'a jamais remarqué. Même système, deux réponses, choisies par fonctionnalité plutôt qu'en religion architecturale.

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

  • Qu'est-ce que PACELC ajoute à CAP ?
  • Comment donneriez-vous à un utilisateur une cohérence lecture après écriture sur des réplicas ?
  • Que garantissent réellement une lecture et une écriture avec quorum ?

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

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