I once had an opportunity of being interviewed at Google. Though I fear if I can share the questions here, I feel I can share the experience.
After I applied to Google, I got a call from them after about a month time. The HR scheduled telephonic interview and they really went well. Since I have done far better than I have expected (really? :P), I was sure I would get a call for a face to face interview but I was like “Did I really do well?”. After a week time after the telephonic are done the HR got back saying they have some “Good News” for me. I felt wow, they have called me for a face 2 face interview. Now I started feeling a bit nervous and made up my mind saying “Buddy be cool, there is nothing you are gonna loose if you screw it up! give your best shot and don’t worry about the result”. I have revised my basics well, practised a lot (I really mean it!) of coding questions since I heard they test our coding standards a lot.
Now the day has come, Google has arranged a cab for the interview in Bangalore office. I reached there at around 9:45 AM. My first round was a design question. Initially I came up with an idea that “works” in the given case, then they have added some more constraints. As I kept on solving them they further added few more constraints. And let me tell you, the way they catch what you are saying is amazing (Of course that is why they are there). If by any chance they find you are missing the track, they set your path right. That round went well than I thought I would do.
Second Round : This is typical Google style question on algorithmic concepts (complexity and so on) which has a matrix kind of stuff in the question. I was able to relate the question to some of the concepts I have learnt and gave some 3 working approaches, the interviewer asked me to write a code for the best among the 3 solutions. He wanted me to write a proper working code that would compile if its fed to a compiler. I started writing that, but since this one is a bit TUFF, I ended up writing a pseudo-code.
Now I had break, I met my friend there and we went for the lunch. The lunch was pretty awesome. Then he took me around the office and showed me various stuff around. Then I had to go back to my interview room for the other rounds.
Third Round: This one is also a coding round. This time I was able to write a proper code that would surely get compiled/run and give you an answer. The interviewer was quite satisfied. Then I was asked to write test-cases on how would I test my code. I have written some test cases and made him run through my code, how they are handled. He was satisfied :). I think the Lunch had some effect on my mind LOL.
Fourth Round: This too is another algorithmic coding round. (God I think I have written much of coding in one single day on various question just that day </jus kidding>). The first question was on trees which I was able to answer quickly. Then I got a bit tuffer one, this took some time to code and the interviwer (as said above) was directing me to proper path if I was missing track. At the end I was able to finish it up.
At the end, I felt that I have done far far better than I have expected . I felt very happy for getting a chance to visit Google office and a chance to interact with few best minds.
Some thing to learn here:
1. Be thorough with the basics. They can interview you on any subject you want them to ask. If you say you are good at playing poker, they can still ask you questions on that. Note: Dont take POKER too seriously 😛
2. They are really very very smart.
3. The one good thing I found with the Googlers is that they make you feel very comfortable in the interview.
4. What I felt is that, Its not just sufficient to crack all the rounds in the interview, you need to have some strong background.
5. Another good thing is that they are not gonna ask questions on some specific technologies like Java etc. You are free to write code in any language in interview (Be prepared to answer any question in it). I had an experience with a start-up which was more bothered about some specific language than your actual stuff, that start-up guy said something like ” what am I gonna do with algos in the front end?”, I was shocked hearing these words.
Fun Note : If at all you go for a face to face interview don’t miss the food there. Its really (yummy) tasty 🙂
That’s it for now. Any comments invited.