Role practice · the whole loop
Front end developer interview questions: browser, React and accessibility
Practice front end developer interview questions on how the browser actually behaves: loading performance, the event loop, state in React, and interfaces that work for keyboard and screen-reader users.
Free during early access. Practice runs in the app, which needs an account.
Prep sheetFrontend developer
- 01JavaScript and TypeScript
- 02Rendering and performance
- 03React and state
- 04Accessibility
01Common prompts
Front end developer interview questions by round
These frontend interview questions are practice prompts written or adapted by InterviewWare, not questions reported by any employer. They are grouped by round, with the signals an interviewer listens for and the follow-up that usually comes next.
| Question | What the interviewer listens for | Likely follow-up |
|---|---|---|
| R1 · Background & motivation | ||
| Q01 Walk me through a UI you shipped that you would build differently today. | A concrete component or page, the constraint that shaped it then, and a specific change you would make now, with the reason. | How would you migrate it without a big-bang rewrite? |
| R2 · Role depth & case | ||
| Q02 How would you diagnose a slow initial page load? | Measuring first, in the performance panel or with field data; separating network, JavaScript cost and render-blocking resources; changing one thing at a time. | Largest Contentful Paint looks fine in the lab but poor for real users. Why might that be? |
| Q03 How do you build an accessible modal dialog? | Focus moved into the dialog and returned on close, focus kept inside, Escape to close, a labelled dialog role and an inert background. | What changes if you use the native <dialog> element? |
| Q04 Explain a closure and a bug it can cause in a UI. | A clear definition, then a real example such as a stale value captured by an event handler or effect, and how to fix it. | How does React’s dependency array relate to this bug? |
| Q05 Explain the event loop. Why does a long task freeze the page, and how would you break it up? | The call stack, task and microtask queues, and when rendering happens between tasks; chunking work, yielding to the main thread or moving it to a Web Worker. | Does a resolved promise let the browser paint before its callback runs? |
| Q06 When would you keep state local, lift it up, put it in context or add a state library? | A decision based on who reads and writes the state and how often it changes; the re-render cost of context; server data treated separately. | A context value changes on every keystroke. What happens to the tree below it? |
| Q07 A list of ten thousand rows scrolls badly. How do you find the cause and fix it? | Profiling before fixing; virtualization, memoized rows and no forced synchronous layout; keeping keyboard use and find-in-page in mind. | What does virtualization break for screen-reader users, and how would you soften it? |
| Q08 Build an autocomplete input. How do you keep it responsive and avoid showing stale results? | Debouncing, cancelling or ignoring out-of-order responses, caching recent queries, and the accessible combobox pattern. | The user types quickly on a slow network. Walk through what they see. |
| Q09 Server-side or client-side rendering for a product detail page: how do you choose? | First-load speed and search visibility weighed against interactivity and server cost; caching; hydration cost; a hybrid where it fits. | Price and stock change every minute. What would you cache, and where? |
| R3 · Judgment & collaboration | ||
| Q10 A design uses text colours that fail contrast requirements, and launch is next week. What do you do? | Raising it early with evidence from a contrast check, proposing a fix that keeps the design intent, and knowing who makes the call. | The designer disagrees. How do you resolve it without escalating? |
02Try one question
Answer a frontend interview question
Draft an answer to one of the questions above. It stays in this browser until you ask for feedback.
Practice question · Frontend developer
How would you diagnose a slow initial page load?
Feedback needs a free account (one step, no card). Your draft is kept only in this browser and filled in after you sign up; nothing is sent until you submit it.
03Worked example
Our product page’s layout jumps while it loads. How would you fix it?
Mid-level answer outline, about two minutes. Illustrative sample written by InterviewWare, not a real candidate’s answer.
- 01
Measure
I’d record the page load in the performance panel and look at the layout-shift entries to see which elements move.
- 02
Cause
Usually it’s images without dimensions, late-loading fonts, or a banner inserted above existing content.
- 03
Fix
I’d give images width and height or an aspect ratio, reserve space for the banner, and pick a font-display strategy with a closely matched fallback font.
- 04
Verify
Then I’d compare the layout-shift score before and after, in the lab and in field data from real users.
04Coaching notes
How to answer frontend interview questions
What works
- T1Explain what the browser does, not just the framework API you would call.
- T2Back every performance claim with a before-and-after measurement and the tool you used.
- T3Bring up keyboard, touch and screen-reader users in any component question, before you are asked.
- T4When comparing approaches, say what each one costs the user, not only the developer.
Common mistakes in frontend interviews
- M1Answering “use React.memo” or “add a CDN” before finding the bottleneck.
- M2Treating accessibility as a few aria-labels added at the end.
- M3Explaining closures or the event loop in textbook words, with no UI example.
- M4Ignoring slow networks and low-end phones when talking about performance.
- M5Choosing a state library by popularity instead of by how the state is used.
05Tools that help
Tools for frontend interview prep
- JS · PythonPublic tests
Technical interview lab
Solve the lab’s drills in JavaScript in the browser; the LRU cache simulator is good practice for explaining a Map-based cache.
- 4 interviewersR1–R3Text · voice
Conversational AI mock interviews
Paste the job description so follow-ups use the frameworks and requirements the team actually lists.
- Spaced reviewRe-answer
Learning library with spaced review
Turn a shaky explanation, say of the event loop, into a card that comes back for review until you can say it cleanly.
More directions
Explore another direction
Early access · free
Log your first rep today.
Bring a resume or a job description — or just the role you want. The log starts with your first answer.