NinjaCart SDE 2 frontend Interview experience
Overview
This document details the interview process for a Software Development Engineer 2 (SDE 2) frontend role. The process included technical assessments covering JavaScript concepts like debouncing, throttling, promises, closures, array manipulation, and React fundamentals, followed by a machine coding round and a hiring manager interview.
Interview Rounds
The interview process consisted of three rounds:
Round 1: Technical Assessment
This round focused on core JavaScript and React concepts. The candidate faced questions on the following topics:
-
Debouncing and Throttling: The candidate was asked to explain the difference between debouncing and throttling and provide practical applications of each.
-
Promises and
setTimeout: The candidate had to predict the output of the following JavaScript code:console.log(1); setTimeout(function () { console.log(2); }, 0); Promise.resolve() .then(function () { console.log(3); }) .then(function () { console.log(4); }); -
Closures and
setTimeout: The candidate had to predict the output of the following JavaScript code:for (var index = 1; index <= 3; index++) { setTimeout(function () { console.log('after ' + index + ' second(s):' + index); }, index * 1000); } -
Array Flattening: The candidate was asked to write a function to flatten a nested array. A potential solution was provided.
-
useEffectanduseMemo: The candidate was questioned on the usage and application of these React hooks.
Round 2: Machine Coding and Problem Solving
This round involved practical coding exercises.
-
Custom React Tab Component: The candidate was tasked with creating a custom React Tab component. A solution was provided.
-
Promise Retry Function: The candidate was asked to implement a function that retries a promise if it fails.
Round 3: Hiring Manager Round
This round involved a conversational interview with the hiring manager, focusing on the candidate's experience and fit within the company.
Key Takeaways
This interview process evaluated the candidate's understanding of fundamental JavaScript concepts, React proficiency, and problem-solving skills. The machine coding round assessed the ability to translate theoretical knowledge into practical, working code. The hiring manager interview focused on assessing cultural fit and overall experience.
Original Source
This experience was originally published on medium. Support the author by visiting the original post.
Read on medium