Supponi di avere risorse illimitate e di dover creare un'interfaccia con un modulo da zero come parte di una grande applicazione. Quale stack e architettura sceglieresti?
Frontend
Come capivano che il prodotto funzionava male? Come raccoglievano informazioni sugli errori, come gestivano le richieste degli utenti?
Modifica del problema della cassaforte: invece della posizione finale, conta quante volte l'ago passa per zero (intersezione del confine 99→0 o 0→99).
Come React confronta due alberi (attuale e in progresso)? Quale algoritmo viene utilizzato?
Compito in TypeScript: descrivere un tipo utente con campi nome, cognome, secondo nome opzionale e un flag di presenza del secondo nome. Scrivere una funzione di formattazione del nome completo. Descrivere un tipo di telefono che inizia sempre con +7. Trasformare un tipo con lettere minuscole in uno con chiavi in maiuscolo senza refactoring, utilizzando le funzionalità di TypeScript.
Parlami dei bug più critici degli ultimi uno o due anni. Cosa è successo e come sono stati risolti?
[nome] parlaci dei progetti in [organizzazione]. Come hanno misurato il numero di utenti, chi erano, come hanno misurato la loro soddisfazione con i prodotti?
Qual è stata la dimensione del team? Quanti sviluppatori frontend e altri specialisti?
Come hanno misurato che Formik con l'API Context rallentava? Come hanno capito che era il momento di cambiare approccio?
Descrivi cosa succede quando si clicca su un pulsante in un componente React con contatore: come funziona useState, come React capisce che deve aggiornare quella parte del DOM.
Problema della cassaforte: c'è un tamburo rotondo con valori da 0 a 99, l'indicatore inizialmente punta a 50. I numeri positivi ruotano in senso orario, quelli negativi in senso antiorario. Viene fornito un array di input con numeri, e bisogna determinare la posizione finale dell'indicatore dopo tutte le operazioni.
Perché React ha bisogno di un albero DOM virtuale? Perché non si può modificare direttamente il DOM reale? Quali sono i vantaggi e gli svantaggi dei diversi approcci?
Parlaci dello stack tecnologico utilizzato nei progetti. Ad esempio, quali kit UI sono stati usati?
L'asynchronousità è necessaria in JavaScript? Cosa succederebbe se non ci fosse? Come funziona l'Event Loop?
Guardando indietro, quali decisioni architettoniche sono state fortunate e quali no? Di cosa ti penti?