Chiarimento: l'applicazione era desktop nel browser o nativa?
Frontend
Parlami dell'ultimo progetto: di cosa si trattava, quali sono stati i risultati chiave e il tuo contributo?
In quali parti si può dividere una richiesta HTTP?
Quali sono gli altri metodi di richiesta HTTP oltre a GET? Come si chiamano?
Come funziona internamente una tabella hash (HashMap)?
Hai lavorato con WebSocket, Server-Sent Events, long polling? Racconta di loro.
Conosci le diverse versioni del protocollo HTTP (HTTP/1, HTTP/2, HTTP/3)? Qual è la differenza tra esse?
Quali sono gli svantaggi di FSD? Quando non lo implementeresti?
Perché prima vengono eseguite tutte le microtask e poi le macro task? Perché non al contrario?
Come hai misurato l'accelerazione dell'onboarding dei nuovi sviluppatori del 30-40%?
Cosa non vuoi nel progetto?
Sei stato un feature owner, hai progettato l'architettura dell'applicazione e i dashboard — cosa ti è mancato nel tuo attuale ruolo?
Cosa vuoi dal nuovo lavoro? Di cosa hai bisogno per crescere?
Per quanto riguarda l'ultimo lavoro, dove hai lavorato per tre anni e mezzo, è scritto che sei responsabile dell'architettura frontend e delle soluzioni tecniche. È un ruolo formale per te?
Compito in JavaScript: determinare l'ordine di output nella console per un codice che utilizza setTimeout e Promise (micro e macro task).
Qual è la complessità (Big O) del metodo unsubscribe nella tua implementazione?
Conosci il pattern EventEmitter? Implementa una classe con i metodi subscribe, unsubscribe e fire.
Come hanno migliorato esattamente le prestazioni delle pagine pesanti? Cosa rallentava esattamente il rendering? Come hanno misurato — da 5 secondi a 150-250 millisecondi?
Cosa succede quando una tabella hash si riempie e non può più contenere nuovi elementi (rehashing)?
Il bundle era di 1,5 megabyte, ora è di 700-800 kilobyte. Come hai ridotto esattamente il bundle? Come inizieresti ora a ottimizzare un bundle di 2 megabyte?