Utilisez gRPC pour les appels internes de service à service où vous maîtrisez les deux bouts et voulez un contrat strict, un encodage binaire, du streaming et une latence plus faible. Utilisez REST sur JSON pour les API publiques, les clients navigateur et tout ce qui gagne à être lisible, cacheable et déboguable avec curl. L'arbitrage, c'est un schéma généré et versionné plus de meilleures performances contre un outillage universel et une interopérabilité facile.
Pourquoi les recruteurs posent cette question
Ça teste si vous évaluez les protocoles sur des propriétés réelles plutôt que sur la nouveauté. Le recruteur veut entendre parler d'application du schéma, de génération de code, de streaming, et de la limite navigateur qui pousse les équipes vers une couche proxy. Il écoute aussi du pragmatisme, parce que la plupart des systèmes n'ont pas besoin du débit supplémentaire et que faire tourner un second protocole a un vrai coût en outillage, observabilité et intégration des nouveaux.
Comment structurer votre réponse
- Découpez la réponse entre consommateurs internes et externes.
- Nommez les gains concrets de gRPC : schéma, génération de code, streaming, cadrage binaire.
- Nommez les coûts : support navigateur, débogage, infrastructure.
- Terminez par une recommandation pour le système en question.
Exemple de réponse
Je découpe selon qui est le consommateur. Pour tout ce à quoi un navigateur ou un tiers parle, je reste sur REST avec JSON, parce que tout le monde peut l'appeler, on peut cacher en périphérie, et quand quelque chose casse à deux heures du matin on peut le reproduire avec curl. Pour le trafic interne de service à service où je possède les deux côtés, gRPC gagne sa place. On obtient un fichier proto comme contrat imposé, des clients générés dans tous les langages pour que personne n'écrive un sérialiseur à la main, du vrai streaming bidirectionnel, et bien moins d'octets sur le fil. Les coûts sont réels cela dit. Les navigateurs ont besoin d'une couche proxy, votre répartiteur de charge doit gérer HTTP/2 correctement, et déboguer une charge utile binaire demande plus de mise en place. Sur un système où j'ai travaillé, on a gardé la façade publique en REST et utilisé gRPC entre la passerelle et les services internes, ce qui nous a donné du typage sûr en interne sans demander à un seul client de changer quoi que ce soit.
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 faites-vous évoluer un schéma proto sans casser les anciens clients ?
- Comment géreriez-vous les reprises et les délais limites à travers des appels gRPC ?
- Qu'est-ce que le streaming gRPC vous donne que les server sent events ne donnent pas ?
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