My Google Interview Experience

Google is a dream company for many software engineers. I had the chance to Interview at Google, a month ago. Although I could not make it through, in all, it was an amazing experience interviewing at Google, as it was also my first ever interview exper…


This content originally appeared on Level Up Coding - Medium and was authored by Taniya Gupta

Google is a dream company for many software engineers. I had the chance to Interview at Google, a month ago. Although I could not make it through, in all, it was an amazing experience interviewing at Google, as it was also my first ever interview experience.
Image from Unsplash.com

I would like to explain the whole process and mistakes I made, so that other fellow programmers can avoid those mistakes during the interview. So, if you are going to interview at Google in the coming days, do have a read!

Application

I applied on Google Careers for the University Graduate Role. After a week, I was contacted by a Google Recruiter that they would like to line up an initial discussion to progress further with my application.

Before the initial call, they wanted me to complete a questionnaire that consisted of basic questions like:

  1. When is my graduation date?
  2. Why I am interested in Google?
  3. Which other companies I am applying to (if any)?

Initial Recruiter Call

The Initial call was to get to know me better and assess my technical competency. It was a generic conversation that began with a brief introduction from both sides. Then there was a rapid-fire round, consisting of 7–8 questions focused on Big-O/Data Structures and Algorithms.

Example questions were (Note: These are the example questions, not the exact questions.)

  1. Which is the most inefficient sorting algorithm among the following: Insertion, Bubble, Merge, or Heap Sort ~ Bubble Sort
  2. Which is better in terms of Space Complexity: Merge Sort or Heap Sort? ~ Heap Sort

Other 5–6 questions were on Heaps, Priority Queue, Graphs, and Self balancing Binary Search Trees.

Then, the recruiter asked me about my strongest programming language. Hereafter, I was asked 1-2 language-specific questions (C++).

Example Questions:

  1. What does STL find do when the element is not in the container? ~ End
  2. Can we modify strings in-place in C++? ~ Yes

This was a basic round. If you are well versed with Data Structures & Algorithms, this won’t be difficult for you. After this, I was invited to a video interview.

Video Interview

The interviewer was a Software Engineer, working in the Google Search Team, based out of Zurich Switzerland.

The interview started with basic greetings and the interviewer pasted the question on Google Virtual Interview Platform, in which I have to write code.

Question

The question was related to Strings. It was similar to problem https://leetcode.com/problems/longest-string-chain/, but was different in way/order the chain can be formed.

Apologies, I cannot put up exact question here, that was asked. :)

My Proposed Solutions

First, I asked 2–3 clarifying questions like: Would the final chain that is formed must be necessarily starting from index 0 or not? Are the words lower case only or can they be uppercase? Is there a possibility given vector is empty or there will be at least one element always.

I suggested a brute force solution that would cost the time complexity of O(n²). The interviewer clarified whether it would be good to go with solution or there can be a better approach.

Then, I suggested a Dynamic Programming approach. The interviewer was not well satisfied with the approach. He wanted to know further optimizations.

Hereafter, I suggested using Trie Data Structure to come at the solution. The interviewer was quite satisfied with the approach. He asked me the time complexity of the solution. Also, he wanted me to implement a Trie Data Structure as well.

So, I clarified, should I implement the Trie Data Structure first or go onto first implementing the logic to solve the given question. He said, I can do it anyways I want, but he’d like to see Trie Implementation for sure.

I thought a bit and moved on to implement Trie Data Structure first. I started coding the Trie Data Structure well. Here I assumed the input to trie would be alphabets only and mentioned size explicitly. The interviewer clarified what’s the size variable. I explained it to him.

But, now, I think I should have explained it before he would have to clarify :(

Finally, I coded the Trie Data Structure. Then he clarified will the code work on malfunctioned input i.e numbers given as input, instead of characters. I answered no and suggested, we can implement a function to check for the input. He said it’s fine and we don’t need to implement that function as of now.

Next, I clarified: Can I assume input is given in the form of Trie? He said no and told me that you can take it as array or vector.

Then I implemented the basic function that would call the Implemented Trie function and build the trie out of given words. Then I was moving on to implement the logic for the given problem, which was our main question. But…………..:(

Boom! He told, we are running short on the time, so instead of completing the code, I should explain the exact logic that would give the answer to the given problem statement using a Trie.

At this point I realised, I made a big mistake and took up a long time to write code :(

But, I explained the approach well. Then he clarified for some edge cases and corner cases. (Here, I should have clarified edge cases myself, before he would have asked, based on interview feedback.)

Then, he further asked if I had any questions. I told him, I would like to know more about the team/project he is working on at Google. He explained his work and also told me that feedback will be given by your recruiter within 1–2 weeks. The interview ended.

Interview FeedBack

After 4–5 days, I received an email from the recruiter that they are not moving forward with candidature.

Google Interview Feedback Screenshot

I requested detailed feedback. The recruiter booked a Google meet up call to provide the feedback.

Key Points were:

  • Data Structures / Algorithms knowledge, understanding, and usage was very good.
  • Conveyed my ideas of the solution clearly.
  • I could reach the optimal solution easily.

Shortcomings / Areas of Improvement:

  • Speed Factor — Lacked the Speed. It took me a long time to completely write the code. (They are very strict about the time duration down to the minute).
  • Communication — It was good, but not up to the mark. There were instances of silence, while writing code, during the interview.
  • Used Hints — There were few bugs in the code, which were corrected using the hint from the interviewer. Couldn’t cover edge cases, before it was asked by the interviewer. (That counted as a hint)

That was my Google Interview Experience.

If you are reading this, Best of luck for your Interviews!
Do keep in mind that you did not end up using Hints from the Interviewer, Write almost bug free code, Have a very Good communication & maintain speed while writing your code.

I hope you can learn from my mistakes and crack the interview!

Thanks for reading :)


My Google Interview Experience was originally published in Level Up Coding on Medium, where people are continuing the conversation by highlighting and responding to this story.


This content originally appeared on Level Up Coding - Medium and was authored by Taniya Gupta


Print Share Comment Cite Upload Translate Updates
APA

Taniya Gupta | Sciencx (2021-03-10T13:58:09+00:00) My Google Interview Experience. Retrieved from https://www.scien.cx/2021/03/10/my-google-interview-experience/

MLA
" » My Google Interview Experience." Taniya Gupta | Sciencx - Wednesday March 10, 2021, https://www.scien.cx/2021/03/10/my-google-interview-experience/
HARVARD
Taniya Gupta | Sciencx Wednesday March 10, 2021 » My Google Interview Experience., viewed ,<https://www.scien.cx/2021/03/10/my-google-interview-experience/>
VANCOUVER
Taniya Gupta | Sciencx - » My Google Interview Experience. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2021/03/10/my-google-interview-experience/
CHICAGO
" » My Google Interview Experience." Taniya Gupta | Sciencx - Accessed . https://www.scien.cx/2021/03/10/my-google-interview-experience/
IEEE
" » My Google Interview Experience." Taniya Gupta | Sciencx [Online]. Available: https://www.scien.cx/2021/03/10/my-google-interview-experience/. [Accessed: ]
rf:citation
» My Google Interview Experience | Taniya Gupta | Sciencx | https://www.scien.cx/2021/03/10/my-google-interview-experience/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.