(Note: I did not have any interviewing experience for software engineer positions — have done mostly research for the last few years — so I spent quite some time on finding out what to expect from this kind of interviewing process)
1. The first step is to get really familiar with the interviewing process. Few things you can do for this purpose:
- Check out websites like and — both offer plenty of information about what to expect from the interviews. I even took a mock interview with careercup (which helped a lot). Also bought several interview videos from careercup (this is also highly recommended — this way you can learn not only what to expect from the interviews but also what the interviewer will expect from you).
- You should also ask your recruiter as much information as possible about the interviews (for instance, you can find out in advance which teams will be interviewing you and use this info to “tune” your preparation).
- Ask friends if they know somebody that has gone through this kind of interviewing process. Talking to people that have already has this experience can be very fruitful (it was for me).
- Something else that would help A LOT (but probably is not an option for you anymore — as you will be interviewing very soon) is to have interviews with other companies. In this way, you will get a good feeling of what to expect from the Google interviews (most of the big tech companies – like Google, Facebook, Microsoft, Amazon, etc – have a very similar interviewing process). I am convinced that having (at least some) experience with this kind of interviewing system is very helpful to improve your interviewing skills (I did not do this myself but should have done it).
2. Prepare for the technical questions. Probably/hopefully you have already invested a good amount of time on this. Anyway, these are my advices:
- Again, check out places like glassdoor and careercup (there are several other sites like this). This will give you a pretty good idea of the type of questions that you can expect.
- You can also find several interviewing questions in books like “Programming Interviews Exposed…” and “Cracking the Coding Interview”. I those books you will find detailed information about how to solve those problems in addition to the solutions.
- I also checked out and solved several of the problems of online programming competitions like Google Code Jam, Facebook Hacker Cup, and Top Coder. This is much more fun than just solving (simpe/ish) interviewing problems. Some of the lessons that I took from solving those problems turned out to be very useful during my online interviews.
(Anyway, whatever the source of problems you want to use, the real key is to really solve the problems yourself, i.e., do NOT just read through the answers).
- Practice interviewing with your friends! I know it is boring and annoying for your friends, but it is really important (it will help you a lot to have a good feeling of how it is interviewing for real).
- Something else (VERY IMPORTANT): Do practice in a blackboard (preferably) or paper – bottom line: NOT on a computer. The kind of experience you will find interviewing at Google will be completely different than writing code in your computer.
3. I know that this is a difficult one, but it is an important one: be relaxed during the interviews.
- Something that will help with this (but is certainly not enough) is to be as prepared as possible for the interview.
- Having an offer from another company might also help a lot.This might take away some of the pressure (actually this may also help you to get an offer – being wanted by other tech companies says something good about you – and also in the negotiation stage).
- Something else that you should keep in mind is that you WILL BE asked tough and completely unfamiliar/unexpected questions. Being aware of this should help you not to freak out WHEN this happens.
- If one interview does not go well try to get over it as soon as possible (this is very important to avoid ruining subsequent interviews). This happens very often (and it is part of the game), just remember that screwing up one (or maybe even two) interview(s) does not mean that you are not gonna get an offer (in spite of what some people say in forums online). I have heard plenty of stories of people having 1 or 2 bad interviews and still getting a job offer. The key is to have some of the interviewers to really like you. I believe that it is better to have 1 or 2 very good feedback reports (from the interviewers) + some negative feedback rather than all “just ok” (not really enthusiastic) feedback reports.
4. A final advice: do NOT interview if you are not properly prepared. If you really want to work for Google as much as most people interviewing with them do, then spending few extra weeks (or even 1-2 extra months) preparing for the interviews makes a lot of sense (this extra time might be the difference between landing your dream-job and having to go with a plan B).
Thats it! hope you find some of this information useful. Good luck with your interviews.