JavaScript internals, React behaviour, browser rendering and frontend system design - the four rounds a frontend loop actually runs.
A frontend loop is not a backend loop with React questions bolted on. It runs its own shape: a JavaScript fundamentals round that goes into closures, the event loop and prototypal inheritance; a machine coding round where you build a working component under time pressure; and a frontend system design round about rendering strategy, state management and bundle size rather than sharding and replication.
The round candidates underestimate is machine coding. You get 60 to 90 minutes to build something like an autocomplete with debouncing, an infinite scroll list, or a nested comment tree - working, with edge cases handled, from an empty file. Speed matters, but so does whether you handled the loading state, the race condition on stale responses, and keyboard accessibility.
Frontend system design questions test different axes than backend ones. Expect rendering strategy (client, server, static, streaming), caching at the CDN and browser layer, state architecture, code splitting, and how you would measure and improve a Core Web Vitals regression.
45 min
Closures, the event loop, promises, `this` binding, prototypes. Often implement-polyfill style.
60-90 min
Build a working component from scratch: autocomplete, carousel, nested comments, data table.
45-60 min
Design a feed, a design system, or a dashboard. Rendering, state, caching, performance.
45 min
Usually lighter than a backend loop, but still present at big tech.
At big tech, yes - usually one round, at medium difficulty. At product companies and startups the DSA round is often replaced entirely by a machine coding round, which is a better proxy for the job. Prepare both if you are applying to a mix.
Rendering strategy, component and state architecture, data fetching and caching, pagination, real-time updates, performance budgets and accessibility. Database sharding and consensus protocols are out of scope - if you find yourself drawing a Kafka cluster, you have drifted into the backend answer.
Build the same handful of components repeatedly until the scaffolding is automatic: autocomplete with debounce and cancellation, infinite scroll, a nested comment tree, a form with validation. The goal is to spend your thinking time on edge cases, not on wiring up state.
Start with a frontend system design mock, then book a 1:1 with a frontend engineer.