Graviton Research — SDE 2 Frontend Interview experience
Overview
The candidate applied for a Frontend SDE 2 position at Graviton Research via LinkedIn and received a response from HR approximately three weeks later. The interview process was structured into four rounds: three technical assessments followed by a managerial interview, with the final rounds conducted in person at the company's office. While the candidate found the rounds challenging and engaging, they ultimately did not receive a positive outcome.
Interview Rounds
Round 1: Problem Solving + Web Fundamentals
This round commenced with introductions, followed by two coding questions, each with a 20-minute time limit. The session concluded with a 20-minute rapid-fire question segment and a Q&A period.
- Question 1: A LeetCode-medium difficulty string manipulation problem involving strings with brackets and asterisks. The task was to determine if the string could be transformed into a valid parentheses string, adhering to specific constraints, within O(N) time complexity.
- Question 2: An object manipulation task that involved fetching data from an API and transforming it into a specific output object. The task necessitated implementing custom group-by functionality along with other logic.
- Rapid Fire: A series of approximately 7-8 output-based JavaScript questions. These questions covered typical JavaScript concepts such as promises,
setTimeout, IIFEs, object references, and the behavior ofthisin asynchronous versus function statements.
The candidate felt less confident about their solution to the first question, but successfully answered the second question and all rapid-fire questions correctly.
Round 2: JavaScript LLD
This round assessed the candidate's understanding of core JavaScript concepts. The candidate was given a single, substantial question to solve within 20-30 minutes. Upon solving the initial problem, the interviewer progressively introduced new requirements, extending the round to approximately one hour.
The question was described as a LeetCode medium-hard level queue-based design problem. The candidate was tasked with creating a constructor function named Analytics SDK. This SDK was to include functions such as send event, flush, and track event.
Specific conditions dictated that events should be queued using the track function and transmitted with a one-second delay from the time they were queued. The send event function was designed to transmit a specific event, while the flush function was to transmit all queued events at once.
The discussion then shifted to strategies for sending all events in parallel, which led to the candidate implementing a custom polyfill for Promise.all.
The candidate believed they provided a robust solution that addressed the provided constraints and edge cases.
Round 3 & 4:
The content does not explicitly describe rounds 3 & 4. They are only mentioned as the last rounds that were to be conducted offline.
Key Takeaways
Despite solving the question in Round 2 comprehensively within the allotted time and addressing various constraints, the candidate's interview process concluded without a positive outcome. It was suggested that the position may have been filled or the hiring process concluded.
Original Source
This experience was originally published on medium. Support the author by visiting the original post.
Read on medium