My First Interview With Google
Published: Updated:
Over the past year, I’ve interviewed with Google three times, two of which were on site. Thanks to a referral from a random stranger on the internet, my applications were finally noticed. Here’s how the interviews went.
Phone Interview
A couple weeks after the referral went through, a recruiter got back with a few questions about where I wanted to work and on what. We then scheduled an interview date and I got a handy document complete with study resources. Given that I had already applied (and got rejected) for the Software Engineering position, I could only apply for the Site Reliability Engineer position.
The interview has two questions. The first question was “What happens when you type google.com into your browser and press enter?”. Over the 20 minutes, I tried to explain how Google goes about searching things. The interviewer had some interesting follow up questions on things like directing traffic and processing results. Doubt that describing Google Search’s architecture is something one person can do, but whatever.
Next part was the practical portion. It was a rather simple problem where I had to manipulate toggles. Not sure why I struggled so hard on such a simple question. Time ran out and the interviewer implemented a really simple fix that would solve the problem (missing one tiny detail is going to be a recurring theme in these interviews). Honestly, I didn’t like the interviewer that much. They didn’t really seem engaged.
A week later, I got a phone call saying that I wouldn’t be moving on with the interview process. Bummer but at least I had just scheduled an on-site interview at Pivotal (which I flunked1).
Suprise Contact
In the following months, I was able to get a volunteer position which was just enough to keep me in the United States until I found a job. Didn’t have much success applying for jobs until mid March when I got an email in my inbox. It was from a Google recruiter who wanted to discuss job opportunities. This was totally unexpected and I was unsure as to how to respond until the recruiter followed up. We scheduled a time and we talked about my experience and the job opportunities at Google. We then scheduled an interview in the next three weeks. It wasn’t enough time to prepare, but I heard that Google takes its sweet time to hire and given that my OPT was expiring in June so I couldn’t delay. After some paperwork and prep docs, I spent the three weeks trying to brush up my programming skills (algorithmically and language-wise).
Heading Out To The Bay Area… Again
After my practice efforts, I headed out to San Jose on an early morning flight the day before the interview. I picked up my rental car and spent the day exploring the South Bay Area confused as I was getting used to California roads. I started off with lunch at a Brazilian Churrasso in Downtown San Jose before checking into my hotel. I then headed out to the Computing History Museum where I got a student discount despite not being a student (the attendant told me she did the same thing). There was a lot of cool computer stuff around and it’s amazing at just how much it’s developed. I couldn’t see it all and I was told by a lovely attendant that it was time to leave. So I left and went to the Intel Museum at Intel’s HQ in Santa Clara. While it wasn’t a big catalog, it still had a lot of cool exhibits, my favorite being one of their older processors which was handwoven. Their dexterity was (and still is) impressive. After exploring the museum, I headed down to Apple’s new HQ which really did look like a spaceship. I checked out their store where they had this AR model exhibit where you can examine their new campus. Apparantly it’s powered completely by renewable energy. Well done Apple. With all my exploring, it’s about time I went to bed so I could be fresh for the 5 Interviews the next day.
The Day Of The On-Site Interview
Next day I headed out to the Googleplex, underestimating traffic in the Bay Area. I got there in time, only to be confused as to how to find the entrance. I eventually figured it out and I was ready for a day of interviews. As I was applying for a Fromtend Software Engineer, their had a unique interview track different from the standard Software Engineering role.
Note: I signed an NDA so I can’t give you the exact questions so I’ll summarize how the interviews went.
The first interview was a JavaScript question which tackled closures and asynchronous programming. I did well and thought I had a solution until the interviewer told me that there was one big problem with it. Really simple but it took me 20 minutes to find it. I feel for the interviewer who really wanted to tell me what was wrong, but couldn’t. Since I used up all the time, I couldn’t ask them any questions.
Second interview was an algorithmic one. The first question was asking for general approaches to a problem. Kinda fumbled since I really didn’t get what he was looking for. The main interview portion I spend most of the time trying to understand what he was saying since I couldn’t understand his accent. I eventually did and realized that the problem needed breadth first search. I wrote it out and I was going to iron out the issues, but again I ran out of time.
The third interview in my opinion was the hardest. It was inline with what I expected all the Google Interviews would be like. I really wanna give a shout out to this interviewer because they gave me a massive hint that I completely missed. They suggested I solve another problem which would hint at the solution. It didn’t quite click until I stepped out of the room to go for lunch, but I maintain that the condition that needed to be met was ill-defined.
It was time for lunch and I picked Japanese food. Nothing too exciting about the food itself, but I got to chat with one of the engineers about life at Google. It’s interesting how easy it is to transfer to another department even in another country since if you clear the Google interview bar, you’re good anywhere. Also, you can work from any Google offices if you’re on a holiday if you don’t want it counted against PTO. They also offer breakfast, lunch and dinner so you can save money, but dinner is only served from 6:30pm so… Besides some cringe statements I made, the talk went well. I just wish that the person I talked to came from a similar place as me (non Bay Area native, skipping the New Grad job tier etc.).
Once lunch was done, it was time for the fourth interview. This was another JavaScript question which seemed to be based on the interviewer’s hatred for their previous job. Not too hard, but I also got stuck real badly here. Thankfully I figured it out and I learned a lot about handling asynchronous statements. My code was very scruffy but the interviewer told me not to worry about it. I then got to learn about the interviewer, the work they do and why they hated their last job.
The fifth and final interview was a non-technical one. This one felt the worst since I was unprepared for it. Most of the questions I blanked out. Thankfully, the interviewer saw how much I was struggling and was willing to let me “bank” questions. Even as I got back to them, I still drew blanks. The interviewer then sad “I see on you worked as a Resident Assistant. Maybe that might help?”. I was so embarrassed. Like, I knew it was there, I just never thought it would be relevant. The interview got better from that point and we had a really good Q&A session. Apparantly the interviewer had an academic background, but has worked in industry for about 10 years across the Bay Area. I was unsure as to how the academic background came in handy so I asked. Turns out it helps with ads. At Google, he now works with one of their frameworks. I also asked why Google makes so many chat apps to which he told me that he really didn’t know since Google has thousands on employees working on dozens of projects. Makes sense.
Time ran out so I explored a bit more of the Google campus before I headed for dinner. For dinner I decided to go to Bonchon which are known for making Korean fried chicken. That chicken was truly the best I’ve ever had in my life. Great seasoning and the texture was out of this world. After that I headed back to the hotel and got some much needed rest.
The day after I checked out, had breakfast, flew out of San Jose, nearly missed my connection2 and drove through lots of traffic to head home. I then collected all the receipts, sent them over and sent the recruiter my feedback.
Waiting for Feedback
From what I read Google’s interview process takes forever. In about a week the recruiter emailed me asking for a good time to talk. We set up a time and my spirits were crushed since it seemed that I was rejected given what I had read online (thanks Blind).
The day of the call came and I got rejected. Shocking I know but the recruiter decided to share feedback. The main notes were:
- Good communication
- The algorithmic interview went abysmally
- The JavaScript interviews were fine except the code that the interviewers didn’t mention I had to tidy up was ugly and I should have fixed it. Still won’t forgive them for that.
- The behavioral interview went great.
Thankfully I spent the past two days feeling sad over the rejection so this didn’t sting. Also getting feedback is nice as it showed me what to do next. The thing which worries me the most about these is that I basically need to be perfect. As much as they say “we care about your thought process”, they want you to know exactly what you’re doing, write it up neatly and work in the allotted time. The “failed the question but communicated well” card won’t buy you out of this one.
Another Interview
A few days after the rejection, I got a request to interview for another position for something called gTech. I didn’t know what it was but it sounded like a job where you develop software for their business and sales division rather than consumer products. Apparently not as prestigious but I was out of leads at that point. I would have talked about it here but this article has become longer than I had planned so I’ll write on it another time along with some other interviews I’ve had.
Flunking is my theme since graduation. It gets exponentially worse with each passing day. ↩︎
I was supposed to miss it but I think they were nice enough to “delay” the flight. Detroit has a massive airport and the train wasn’t working. As I sat down at my seat I was like “man this seat is spacious” only to realize it was a Premium Economy seat. Ah well. The guy behind asked if I was supposed to sit there and I said no to which he replied “me neither”. ↩︎