Journal
Interviews
13 posts
- The Frontend Engineer's LeetCode Blueprint, Part 5: The Grandmaster's ToolkitSmall constraints like N ≤ 16 are a signal, not a gift. The finale covers bitmask backtracking with N-Queens, bitmask DP for shortest-path-visiting-all-nodes, and the 60-minute Toptal/Codility survival protocol.JavaScriptFrontend11 min
- The Frontend Engineer's LeetCode Blueprint, Part 4: The Dynamic Programming Vault & String AutomatauseMemo and Reselect are dynamic programming with different names. Part 4 covers top-down versus bottom-up DP, the 0/1 knapsack pattern, Edit Distance, and a Trie-backed Word Search II solver.JavaScriptFrontend12 min
- The Frontend Engineer's LeetCode Blueprint, Part 3: Trees, Graphs and Solution SpacesThe virtual DOM, AST transpilation and bundler dependency resolution are all tree and graph traversal in production. Part 3 covers post-order tree recursion, topological sort and binary search on the answer space.JavaScriptFrontend12 min
- The Frontend Engineer's LeetCode Blueprint, Part 2: The Pointer & Memory PlaygroundReact Fiber and the DOM tree are linked lists in disguise. Part 2 covers fast-and-slow pointers, in-place reversal, the monotonic stack and a from-scratch LRU cache built on a doubly linked list plus hash map.JavaScriptFrontend11 min
- The Frontend Engineer's LeetCode Blueprint, Part 1: The Linear GauntletFrontend habits like map/filter/reduce chains fail LeetCode's hidden test suites. Part 1 covers V8 array internals, two pointers and sliding windows, with worked solutions for 3Sum, Minimum Window Substring and Trapping Rain Water.JavaScriptFrontend12 min
- Senior Frontend Interview Prep, Part 7: Specification Quirks and CoercionThe last ten questions in the JavaScript volume: ToPrimitive traced step by step, why `[] == ![]` is true, the four equality algorithms, `NaN` and `-0`, BigInt, and the ASI rule that silently eats a return value.JavaScriptFrontend9 min
- Senior Frontend Interview Prep, Part 6: Async, Promises, Workers and Shared MemoryFifteen questions on concurrency: promise internals, what `await` desugars to, cancellation that actually cancels, transferables and zero-copy, `SharedArrayBuffer` under cross-origin isolation, and a task pool you can paste into production.ConcurrencyJavaScript12 min
- Senior Frontend Interview Prep, Part 5: The Object Model, Prototypes and MetaprogrammingFifteen questions on what an object really is: prototype chains, property descriptors, what `class` desugars to, prototype pollution with a working exploit, and why `Proxy` and private fields do not get along.JavaScriptFrontend13 min
- Senior Frontend Interview Prep, Part 4: Scope, Closures and the Temporal Dead ZoneFifteen questions on execution contexts and environment records: what the TDZ actually is, why `let` in a loop works, how `bind` is implemented, and why one `eval` deoptimises every identifier around it.JavaScriptFrontend11 min
- Senior Frontend Interview Prep, Part 3: The Event Loop, Scheduling and Paint TimingFifteen questions on what actually runs next: microtasks against macrotasks, the rendering opportunity, libuv's phases, the nextTick ordering rule that has an exception nobody mentions, and how to break up a long task without hurting INP.JavaScriptBrowser10 min
- Senior Frontend Interview Prep, Part 2: Memory, Garbage Collection and Leak TopologiesFifteen interview questions on the V8 heap: generational collection, the scavenger, concurrent marking and write barriers, and the five leak shapes behind almost every 'the tab is using two gigabytes' report.MemoryJavaScript12 min
- Senior Frontend Interview Prep, Part 1: Inside the JavaScript EngineFifteen interview questions on how V8 turns source text into machine code — tiers, hidden classes, inline caches, elements kinds and deoptimisation — with the answers verified against a live engine.JavaScriptV812 min
- Cracking the Staff & Architect Frontend Interview: The Battle-Tested PlaybookStaff and architect interviews are not coding tests — they are risk-assessment conversations. Here are the seven technical pillars that decide the outcome, with the mechanics underneath each one.JavaScriptArchitecture19 min