One month after submitting a job application at Google, I was contacted out of blue by a recruiter at Google in Sydney. You know what they say – at Google, someone human is guaranteed to look at your application (even though they receive more than 5000 a day)!
Gone are the days when one cannot land a Google interview without a top CS school degree on their resume. After all, I’m a Masters student (in Computer Science) from a no-name university in India. Your alma mater may help you land the interview. But how you proceed further in the Google recruitment pipeline depends entirely on how you perform in the interviews.
After rescheduling the recruiter screen a couple of times, I finally did the screening round.
The recruiter was very prompt; my phone rang at the scheduled time. The interview began with a short introduction to the role, and I was then asked to rate myself 1-10 in areas like Algorithms & Data Structures, Distributed Systems, Networking, Linux, C, C++, Java and so on.
Next came the horde of technical questions. This is just the recruiter testing the waters; checking whether you are indeed “Google” material; whether it’s even worth interviewing you. I would recommend you to get comfortable with the Big O of various algorithms (at the very least some sorting algorithms) and data structures. Having some knowledge of Linux internals shall also be helpful.
Make sure that you have a good phone connection. My call dropped once, but the interviewer called back within a minute. The call quality was also terrible, but we managed it somehow. Since there is no coding involved, you can use the phone as such; but it’s recommended to use a speaker & microphone set so that your hands shall be free.
Once my assigned 30 minutes were up, we concluded the interview. Within a couple of minutes, I received an email from the recruiter stating that he would like to schedule a phone interview with an engineer! Yay! I got a phone screen!
Phone Screen 1:
I was asked to give my preferred time slots for the interview, which the recruiter then pushed into some interview scheduling queue. Within an hour, I was contacted by a Recruiter Coordinator (they seems to be the one who schedules the interview), to confirm the interview scheduled for me, which I did confirm. The interview was supposed to be done through Google Hangouts (in case that fails, they shall do it through phone) and there was no coding involved in this round.
I was waiting in Hangouts, and at the scheduled time came the interviewer. He started off with a brief introduction, and then quickly turned to technical questions. I was asked questions about Linux, TCP/IP, Bit manipulation, C/C++ and about some of the projects listed on my resume.
The whole interview took less than 45 minutes, and in the remaining time I was encouraged to ask any questions. I could gather from the way we concluded the interview that I had passed. I got the email from the recruiter next morning confirming the same, and we got to scheduling the next phone screen.
Phone Screen 2:
This interview was a coding round through Hangouts, and a Google Docs was shared with me in advance for writing the code.
The interviewer was again prompt and started off with a brief introduction. The interviewer then asked questions on Linux, Bit Manipulation, and C/C++ and 1 coding question. I did struggle a bit with the coding question since it wasn’t a typical algorithmic question asked to new grad SWE candidates, but rather a real world problem. To top it off, we also had some technical faults during the call.
I received the email from recruiter next morning regarding the technical faults during the interview, but they were ready to schedule me one more phone screen.
Phone Screen 3:
This interview was a coding round through Hangouts, and a Google Docs was shared with me in advance for writing the code. The interviewer was late by about 3 minutes (I still wonder how these guys are prompt to the actual minute!), and the interview again started off with a brief introduction.
There were 2 coding questions, and I coded them up in C++. For one with some competitive programming background and a couple of weeks of interview preparation, it should be a breeze. The interviewer also mentioned that my resume was impressive (who doesn’t love a praise!), and asked about some of my projects. We completed the interview in about 30 minutes, and for the remaining time, I questioned him regarding some of the projects he had worked on at Google.
Just like the first phone screen, I knew I had impressed the interviewer. Got the email from recruiter next morning inviting me for onsite! A chance to finally try out the famed Google free food! 🙂