Coding
Implement from scratch â polyfills, utilities, data structures
Hatchling
Intermediate
Implement Debounce
The most common utility function interview question. Your implementation reveals whether you understand closures, timers, and edge cases.
Implement Throttle
Throttle guarantees a function runs at most once per interval. Implementation reveals your understanding of timing, state management, and edge cases.
Implement Deep Clone
Deep cloning reveals your knowledge of JavaScript's type system, circular references, and the edge cases that break naive implementations.
Implement Memoize
Memoization is caching for functions. Your implementation reveals understanding of closures, Map vs WeakMap, cache invalidation, and the trade-offs of caching.
Implement Array Methods (map, filter, reduce, forEach, flat)
Polyfilling core array methods tests understanding of callbacks, accumulation patterns, `this` binding, and recursive flattening. These are the most frequently asked polyfill questions.
Dinosaur
Advanced
Implement Promise.all
This tests your understanding of Promise mechanics, concurrency, and edge cases. The senior answer handles non-promises, empty arrays, and fail-fast behavior.
Implement Event Emitter
The pub/sub pattern is everywhere â Node.js, DOM events, React, state management. Implementing it tests your understanding of callbacks, memory, and API design.
Implement bind, call, and apply
These three tests whether you understand how this binding works at the implementation level â not just the API.
Implement Observable / Reactive Store
Build a reactive state container from scratch. This tests your understanding of the observer pattern, proxies, and how state management libraries work internally.
Implement a Virtual DOM
Building a simplified Virtual DOM reveals your understanding of React's core abstraction â the reconciliation between a tree of objects and the real DOM.
Implement a Simple Client-Side Router
Building a router from scratch demonstrates mastery of the History API, URL parsing, and the core abstraction behind React Router.
Implement Promise.race, Promise.any & Promise.allSettled
These three Promise combinators cover the spectrum of concurrent result handling. Implementing them reveals understanding of settlement semantics and AggregateError.
Implement Fetch API Wrapper & AbortController
Building a production-grade fetch wrapper tests understanding of the Request/Response model, timeout handling, retry logic, and AbortController â the patterns every senior engineer uses daily.
Apex
Architect