The process consisted of 3 rounds:
Round 1 - Technical Screening
Questions covered:
Flatten nested array without using Array.prototype.flat
React reconciliation
JavaScript execution context
Event loop
Differences between var, let, and const
Closure and asynchronous loop output questions
Equality (==) vs strict equality (===)
null vs undefined
Round 2 - Managerial / Technical Discussion
Topics covered:
Designing a frontend architecture for an ecommerce application (Amazon/Flipkart-like)
Feature-based folder structure with examples
Atomic design pattern with examples
JavaScript execution model
Preventing repetitive API calls
API retry strategies
Applying DSA concepts in frontend applications for large datasets and state management
JavaScript scope and this behavior output questions
Round 3 - Client Technical Interview (Conducted via Karat)
The round consisted of two parts:
Reviewing multiple React code snippets and identifying bugs, performance issues, and implementation concerns.
A live coding exercise in vanilla JavaScript.
The coding exercise involved:
Fetching and displaying comments from an API
Polling for new comments every 5 seconds
Using pagination (skip) to simulate new comments
Highlighting newly added comments
Removing highlights after 5 seconds
The interviewer was interactive during the coding exercise and provided feedback while implementation was in progress. Candidates should be prepared to explain their thought process continuously while coding and to adapt to feedback during the session.
Overall
The process covered a broad range of JavaScript, React, frontend architecture, state management, API handling, and live coding topics. Candidates interviewing for senior frontend roles should be comfortable with JavaScript fundamentals, browser APIs, asynchronous programming, React internals, frontend architecture patterns, and implementing solutions under time constraints.