Last Updated : 06 Jul, 2022

In March 2022, Google held GOCC44 (Google’s Online Coding Challenge ), a hackathon specifically designed for women. The team members received URLs for the coding test after completing the portal’s registration. I received a call from the recruiter asking me to come in for the onsite interview rounds based on my performance and resume screening.

Round 1: Coding Test: Platform: Google Online Challenge site Duration: 1 hour

• 2 easy to medium-level coding questions were asked in this round.
• I was able to complete both the questions but could only pass partial test cases. Almost a month later, I got a call from the recruiter regarding the on-site interview round.

Round 1: On-site Technical Interview: Platform: Google Meet Duration: 45 minutes

• This round started with the interviewer introducing himself after which he directly presented the DSA problem.
• Problem: Given a binary array (an array consisting of zeroes and ones), find the number of subarrays with maximum consecutive ones.
• I explained the solution using the brute force method first and then described the optimal approach using prefix sum array. I completed the code, performed a quick dry run, and stated the time and space complexity of the solution.
• He was satisfied with the approach and the interview concluded with me asking him a few questions about his work at Google.

Round 2: On-site Technical Interview: Platform: Google Meet: Duration: 60 minutes (45 mins DSA + 15 mins G&L )

• Similar to the previous round, the interviewer directly asked about the DSA problem.
• Problem: Given an array of some cards from a deck and the number of suites (s) and ranks (r) in each suit of these custom cards, return the highest five flushes i.e. find out a set of cards with 5 consecutive ranks in a suit and return one such set with the highest value. The suits are ranked from 1 to s and each suit ranks from 1 to r in increasing order of value. For example Input: Total number of suites = 7, Total number of ranks = 10, an array of cards S1R0, S2R2, S2R5, S2R3, S3R1, S3R4, S2R6, S2R4, S3R5, S3R2, S3R3, S5R9. Output: array of S3R1, S3R2, S3R3, S3R4, S3R5.
• I solved this using a map data structure to store the given cards with keys as suit numbers and values as ranks in those suits. He seemed satisfied with the approach so I proceeded to write the code, performed a quick dry run, and explained the time and space complexities for the same.
• The last 15 minutes of this round were devoted to Googleyness and Leadership (G&L) wherein the interviewer asked me a few behavioral questions and I answered these while highlighting my G&L skills.
• The first 2 on-site interview rounds were mandatory and you are selected for the third one depending on your performance. I got a call after an hour that I had been qualified for the third round and it was scheduled after a day.

Round 3: On-site Technical Interview: Platform: Google Meet Duration: 60 minutes (45 mins DSA + 15 mins G&L )

• This round directly started with the DSA Problems
• Problem 1: Airplane Luggage Ordering problem I explained 2 different approaches for this and coded the one with better time and space complexity.
• Problem 2: Changing delayed clock time to current time in minimum steps. The available steps are increment by 1/5/15/30/60 minutes. Methods like get_clock_time(), increment_by_5(), etc. were made available.
• I solved this problem using the greedy approach, wrote a fully functional code, performed a quick dry run, and stated time and space complexities for the same.

Final verdict: After a week, my recruiter informed me that I had been offered the Software Engineer Role at Google!

Tips:

• Along with the DSA questions, the Googleyness and Leadership rounds play a significant role in the interview process. Make sure you read about these principles before your interview and highlight the same while answering the behavioral questions.
• Google gives utmost importance to the quality of code you write. A candidate is expected to write production-level code that is fully functional, clean, and well indented with proper variable names.
• Make sure you are thorough with DSA and OOPs concepts.
• Think loudly throughout the interview process, even when you are coding. Always highlight the time and space complexities of your approaches.
• Take your time to comprehend the DSA problem and seek clarification by asking questions about it.
• Always exhibit interest in the job at the company by asking the interviewer questions at the conclusion.

Previous
Next