Si vous conceviez une telle application en tenant compte d'un monorepo, comment la diviseriez-vous en packages, en tenant compte d'une base de code unique pour le web et les plateformes mobiles (React Native) ?
Frontend
Qu'est-ce que le mode concurrent et le rendu concurrent dans React ? Comment cela fonctionne-t-il et à quoi sert-il ?
Pourquoi React utilise-t-il MessageChannel au lieu de setTimeout pour créer une file d'attente de rendu pour les rendus lourds ultérieurs?
Vous avez mentionné que vous avez travaillé avec un monorepo — comment était-il organisé ? Avez-vous utilisé des micro-frontends ?
Avez-vous utilisé Apollo GraphQL uniquement pour les requêtes ou aussi pour la gestion de l'état local (champs uniquement côté client, champs réactifs) ?
Supposons que nous ayons une landing page d'une seule page. Une requête est effectuée, nous recevons un JSON de 50 000 lignes, et pendant qu'il est analysé, l'interface utilisateur se bloque en raison de la nature monothread de JavaScript. Que proposeriez-vous et comment optimiser la filtration et l'analyse de ce JSON pour que la page ne se bloque pas et que l'UI reste réactive?
Pouvez-vous expliquer quels sont les principes de SOLID?
Donnez un exemple du principe d'inversion de dépendance dans le développement frontend.
Avez-vous déjà travaillé avec React Native et React Native Web?
Vous avez plus d'expérience dans des tâches techniques, avec peu de mention des aspects commerciaux. Étiez-vous une sorte de leader technique qui s'occupait de l'architecture, ou bien vous occupiez-vous simplement du développement de fonctionnalités commerciales ordinaires?
Comment éviter le re-rendu en cascade des composants enfants lors de la modification de l'état dans le composant parent?
Comment fonctionne Fiber et comment la priorisation (planificateur) est-elle organisée dans React?
Donnez un exemple du principe de Ségrégation des Interfaces dans le développement frontend.
Regardez deux options de code (avec des promesses/micro-tâches récursives) et dites, quelle est la différence entre la première et la deuxième option en termes de blocage de la page.
Supposons qu'il n'est pas possible de faire la pagination côté backend et que le Web Worker n'est pas disponible. Comment résoudriez-vous ce problème?
Avec quels gestionnaires d'état avez-vous dû travailler et qu'aimez-vous, quels sont les avantages et inconvénients que vous voyez?
De quelles parties se compose la boucle d'événements?
Quel problème connu survient lorsqu'il y a un grand nombre de setTimeout séquentiels avec un délai nul?
Supposons que nous ayons une application React Native et une application web. Certaines API du navigateur, y compris Local Storage, ne sont pas disponibles dans React Native (là, on utilise Async Storage). Comment implémenteriez-vous une interface unifiée pour le stockage avec différentes implémentations pour le web et React Native?
Parlez-moi du hook useTransition — comment il fonctionne et à quoi il sert.