Question d'entretien pour Développeur full stack

Quand le rendu côté serveur justifie-t-il vraiment sa complexité face à une application rendue côté client ?

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

Réponse rapide

Le rendu serveur se justifie quand la vitesse du premier affichage, la visibilité pour les robots d'indexation, ou les appareils peu puissants comptent, parce que l'utilisateur reçoit du HTML utile avant qu'aucun JavaScript ne s'exécute. Une application rendue côté client convient très bien derrière un login où les moteurs de recherche n'ont aucune importance et où les sessions sont longues. Le vrai coût du rendu serveur, c'est l'hydratation, une deuxième exécution côté client, plus un runtime serveur, un cache et une récupération de données dont vous êtes maintenant responsable.

Pourquoi les recruteurs posent cette question

Le recruteur veut savoir si vous savez justifier une architecture par des résultats pour l'utilisateur plutôt que par les réglages par défaut d'un tutoriel de framework. Il écoute l'hydratation, parce que c'est la partie que les gens oublient, et le fait que le rendu serveur ajoute de la surface d'exploitation. Dire que le rendu serveur est toujours meilleur est une réponse plus faible que de nommer le cas précis où une simple application côté client est le bon choix, moins cher.

Comment structurer votre réponse

  • Nommez les résultats utilisateur que le rendu serveur améliore.
  • Nommez le cas où le rendu client est le meilleur arbitrage.
  • Expliquez l'hydratation et pourquoi elle n'est pas gratuite.
  • Mentionnez le rendu statique ou mis en cache comme voie médiane.

Exemple de réponse

Exemple parlé, à la première personne

Tout dépend de qui attend et de si un robot doit lire la page. Pour tout ce qui est public, pages marketing, listes de produits, contenu, le rendu serveur est quasiment obligatoire, parce que l'utilisateur voit du vrai contenu dès la première réponse au lieu d'un spinner pendant qu'un bundle se télécharge et se parse sur un téléphone Android milieu de gamme. Pour un outil interne ou un tableau de bord authentifié lourd, une application rendue côté client me va très bien ; personne ne l'indexe et la session dure une heure, donc le chargement initial s'amortit. Ce que je veux que les gens comprennent, c'est l'hydratation. Le rendu serveur ne veut pas dire moins de JavaScript par défaut ; les mêmes composants s'exécutent souvent à nouveau côté client pour attacher les gestionnaires, donc vous pouvez livrer le HTML vite et avoir quand même une page qui ignore les clics pendant deux secondes. C'est pour ça que les Server Components et le streaming comptent, puisqu'ils réduisent ce qui doit être hydraté. Quand les données changent rarement, je préfère rendre au moment du build ou mettre le HTML en cache en périphérie et sauter complètement le travail serveur.

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 qui provoque une erreur d'hydratation et comment la déboguez-vous ?
  • Comment le streaming avec Suspense change-t-il le chargement perçu ?
  • Quand choisiriez-vous plutôt la génération statique avec revalidation ?

Autres questions pour Développeur full stack

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