Google | Interview Experience | SE - Full Stack | Virtual Interview
Summary
I recently participated in virtual interviews for a Software Engineer - Full Stack role at Google India, which consisted of three technical coding rounds and one behavioral round focusing on situation-based questions.
Full Experience
Hello, I recently had the opportunity to interview virtually at Google, India for a Software Engineer - Full Stack Developer role. This position was for experienced professionals. The interviews were conducted over Google Meet, with each interview typically on a separate day, a schedule I discussed and arranged with my recruiter. The interview process comprised four rounds: three technical coding rounds, each approximately 45 minutes long, with no system design components, and one 45-minute behavioral round.
Round 1:
I was presented with a grid of dimensions n x m, composed of 0s and 1s, where 0 denotes a free cell and 1 a wall. The challenge was to determine if a robot, starting at (0,0), could reach the end cell (n-1, m-1) by breaking at most one wall in the grid.
Round 2:
This round focused on OS job scheduling, presenting a more open-ended discussion. I wasn't provided with a concrete input format, but the core task was to discuss how to return the sequence of execution and the starting time for each job, given their arrival and execution times, based on a First Come First Serve (FCFS) principle. The interviewer then posed a follow-up question: how would the algorithm change if each job had an associated priority?
Round 3:
I was given an n-ary tree and two specific edges, identified by the vertices connecting them (V1, V2) and (V3, V4). The problem asked to return the number of vertices (nodes) in each disconnected component if these two edges were removed from the tree. This task needed to be performed for Q queries, with the assumption that the tree was fully-connected before each query.
Round 4:
This round was entirely behavioral. The questions were primarily situation-based, often starting with 'tell me about a time...' and followed by probing questions.
Interview Questions (3)
Given a grid n x m consisting of 0's and 1's, where 0 represents a free cell and 1 represents a wall. If a robot is placed at first cell, i.e. position (0,0), find whether it can reach the end cell i.e. (n-1, m-1), by breaking at the most one wall in the grid.
Given a list of jobs, with their arrival time and execution time, return the sequence of execution and the starting time of each job, on a First Come First Serve(FCFS) basis.
Follow up question: If priority is associated with each job, how will the algo change in that case.
Given a n-ary tree, and 2 edges represented by the vertices connecting them (V1, V2) and (V3, V4). Return the number of vertices (nodes) in each disconnected component, if these 2 edges are removed from the tree, basically if the tree was disconnected. Given Q queries, return the result for each query, assuming tree is fully-connected each time.