Company guides
π¦ Google β Frontend Interview Guide
Emphasis: Web fundamentals, accessibility, performance, and raw DOM/JS β often framework-agnostic. Google cares that you understand the platform, not just a library.
Related: Company index Β· ROADMAP
The loop (typical)
| Round | Focus | Prep section |
|---|---|---|
| Phone screen | JS/DOM coding | 03-javascript |
| Coding 1 | DSA + a DOM/UI twist | 16-machine-coding |
| Coding 2 | Machine coding (vanilla-friendly) | 16-machine-coding |
| Frontend system design | "Design X" | 15-system-design |
| Behavioral / Googleyness | Collaboration | β |
What they emphasize
- Platform fluency β DOM APIs, event delegation, the event loop, browser rendering.
- Accessibility β semantic HTML and keyboard support are frequently scored.
- Performance β Core Web Vitals, minimizing reflows, efficient rendering.
- Clean, framework-agnostic code β be comfortable in vanilla JS, not just React.
Frequently asked (community-sourced)
Machine coding
- Build an Autocomplete β flagship
- Build a Carousel β system design flagship
- Build an accessible Modal / Tabs β 16-machine-coding
- Build Infinite Scroll β flagship
System design
- Design a News Feed β flagship
- Design Google Docs β flagship
- Design an autocomplete/search β flagship
JavaScript / fundamentals
- Event loop, microtasks/macrotasks β 02-browser
- Event delegation,
this, closures β 03-javascript - Debounce/throttle β flagship
Prep plan (2 weeks)
- Lock fundamentals + browser internals.
- Grind JS utilities in vanilla JS.
- Do 3 accessible components with keyboard support.
- 3 mock system designs, focusing on perf + a11y trade-offs.
π’ Green flags Β· π΄ Red flags
π’ Do: clarify requirements before coding Β· reason about the platform (DOM, event loop) Β· make it keyboard-accessible Β· name performance trade-offs Β· write clean framework-agnostic code. π΄ Avoid: reaching for a framework when vanilla is enough Β· skipping accessibility Β· ignoring edge cases (empty/error/loading) Β· over-engineering a simple ask.
π Sample interviewer prompts
- "Implement an accessible autocomplete without a library."
- "How would you make this component fully keyboard-navigable?"
- "Walk me through what happens from typing a URL to first paint."
Interviewed at Google? Add the questions you got (role + year) via a PR.