text:
Follow me on Twitter for my latest adventures!
My Job Interview at Google
Two weeks ago I had an on-site interview at Googleplex! The job interview with Google was an interesting experience and I want to tell you about it.
The position I was interviewing for was a Google SRE. SRE stands for Site Reliability Engineering. Site reliability engineers (SREs) are both software engineers and systems administrators, responsible for Google's production services from end-to-end.
There were eight separate interviews. The first three were phone interviews and the remaining five were on-site. The first interview was with the recruiter and was not very technical but the other seven were very technical.
All interviews went pretty well but I just learned that I won't be getting hired. I personally think that I did really well. I answered all the questions but it seems they were not satisfied. Google and the recruiter didn't give me precise reasons. He said that "the morning interviews were not that great" and "I should get more experience to work in their mission critical team."
Update: This article has been translated to Japanese.
Update: This article has been translated to German.
Here is how it all happened.
Shortly after I published the "Code Reuse in Google Chrome" post I was contacted by a recruiter at Google. The email said:
I recruit top notch Software Engineering talent at Google. I recently came across your name as a possible world class Engineer and am intrigued to know more about you. I promise to exchange some detailed info about us as well.
Interested to hear more? Want to be an impact player at Google? Then please respond with a current (English) copy of your resume and I'll be happy to call you and discuss.
At first I thought I would be applying for a software developer position, but after we went through my skillset, the recruiter concluded that I would better fit as an SRE. I agreed with him. This seemed like a perfect position for me. I love systems administration as much as I love programming.
First Interview (phone)
The first interview was on 10th of September with the recruiter. He explained the Google recruitment process to me and we went through my skill set. I had to rank myself from 0 - 10 in a bunch of areas such as C programming (8), C++ programming (7), Python programming (6), networking (6), algorithms and data structures (6), distributed systems (5), Linux systems administration (9), and others.
Based on my answers we concluded that SRE was the best position for me. An SRE basically has to know everything: algorithms, data structures, programming, networking, distributed systems, scalable architecture, troubleshooting. It's a great hacker position!
The second half of the interview had some basic technical questions, just to make sure I knew something. The questions were about Linux systems administration, algorithms, computer architecture and C programming. I can't go into any details because I signed a non-disclosure agreement. (Update: NDA expired, so I posted all the interview questions at the bottom of this post.)
I made some factual mistakes but he was satisfied and we scheduled the next phone interview. He warned me that it will be very technical and I should do really good prep. I asked him to give me a plenty of time for the preparation and we scheduled the next interview on 22nd of September.
He also told me that each phone interview is going to be 45 minutes to 1 hour long.
I started preparing like crazy. I found three presentations on what SRE is all about:
- Engineering Reliability into Web Sites: Google SRE
- Google SRE: That Couldn't Happen to US... Could It?
- Google SRE: Chasing Uptime
Then I found all the other blog posts about interviews and interview questions at Google:
- Corey Trager's Google Interview
- Rod Hilton's Google Interview
- Ben Watson's Google Interview
- Shaun Boyd's Google Interview
- How I Blew My Google Interview by Henry Blodget
- Get That Job at Google by Steve Yegge
- Tales from the Google's interview room
- Google Interview Questions
- Google Interview Questions -- Fun Brain Teasers!
- And some others...
I printed and read four Google research papers:
- The Google File System
- Bigtable: A Distributed Storage System for Structured Data
- MapReduce: Simplified Data Processing on Large Clusters
- and just for fun Failure Trends in a Large Disk Drive Population
I also went through several books:
- the best book on basics of networking "TCP/IP Illustrated"
- the best book on algorithms "MIT's Introduction to Algorithms" + my notes on algorithms
- a book on scalability "Building Scalable Web Sites"
As I did not know if I might get specific programming language questions, I went through a few tens of recipes in C++ Cookbook, Python Cookbook, and Perl Cookbook.
Second Interview (phone)
The second phone interview was with an engineer from Google. He worked on the Ads team which is responsible for running AdSense, AdWords and other advertisement stuff.
The interview was very technical and started with an algorithmic problem which was too large to fit in computer memory. I had to tell him precisely how I would get around this problem and what data structures and algorithms I would use. He also asked me to think out loudly. The interview continued with questions about data structures, DNS, TCP protocol, a security vulnerability associated with TCP, networking in general, and Google itself.
The questions basically where:
- You've 100GB file but only 1GB of memory. How would you sort it?
- Tell me about your favorite data structure.
- How does DNS work?
- Can DNS work over TCP?
- How do DNS root servers work?
- How does BGP work?
- How does TCP work and what is 3-way handshake?
- How does TCP session spoofing works and how is it prevented?
- What would you change at Google?
After the interview the engineer had to write feedback on me. It was positive and I could move on with the interviews.
Third Interview (phone)
I gave myself more time to prepare and the third interview was on the 1st of October. It was with an engineer from the Google traffic team.
In this interview I had a very simple programming question and I had to do coding over phone. I was free to choose the language and I chose Perl as it is my most favorite programming language. It was impossible to dictate Perl syntax over phone "for my dollar sign element open paren at data close paren open curly brace ... close curly brace" so I submitted my Perl program over the email.
The question was: Write a program to find set difference. Given two sets A and B, find elements in A-B, or in other words, find elements in set A that are not in B.
Then the same problem was taken to the next level, what if the data we are working on is gigabytes in size, terabytes in size. How would my program/solution change?
Finally I had a question about DNS again, then HTTP protocol, routing, and TCP data transfer.
The questions were:
- How does DNS work?
- How does HTTP work?
- If a HTTP request fails, does operating system retry it, or the browser?
The feedback was positive and I could prepare for the on-site interviews. In my conversation with my recruiter I got to know that there will be five on-site interviews, each exactly 45 minutes long. One on my previous work experience, one on algorithms and data structures, one on troubleshooting and networking, and two on software development with focus on C and C++.
My recruiter suggested that I read a few more documents:
- Google C++ Style Guide
- Web Search for a Planet: The Google Cluster Architecture
- Algorithm Tutorials on TopCoder
Fourth Interview (on-site)
The fourth interview was finally at Googleplex! At 10am I met my recruiter and we had a 15 minute discussion about the interviews. He told me I would have two interviews now, then one of Google engineers would take me to lunch to one of Google's restaurants and then I would have three other interviews.
At 10:15am the first on-site interview began. It was about my previous job experience. I have had a lot of job experience in the past and I decided to tell about a physical security notification system that I coded in C on Linux a few years ago. The system would receive messages through the serial port and send out emails and text messages.
In the last minutes of the interview he asked me some basic Unix filesystem questions. What is an inode?
In all the on-site interviews I was writing and drawing on two big whiteboards.
Fifth Interview (on-site)
The fifth interview began at 11am. It was a coding session and began with a trick question and not a real coding problem. The trick question was: What's the angle between clock hands when it's 3:15. Then I was asked to implement the solution in C for arbitrary hour:minute. The solution was a mathematical expression that was a one-line return statement. No big coding there. Then I was asked to write an implementation of a binary tree. While coding I made a mistake and forgot to initialize part of a data structure that I had malloc()'ed. The program would have segfault'ed in real life and I would have noticed the error. I said there were no errors here but the Google engineer pointed out I hadn't initialized data.
After this interview I was taken to lunch by the engineer who interviewed me on the second (phone) interview. She told me she was working at Google for two years and was very happy about it. We went to Asian food restaurant (located in Googleplex). Then she showed me around Googleplex.
Sixth Interview (on-site)
The sixth interview began at 12:45pm. It was a troubleshooting and networking interview. The interviewer drew a network diagram on the whiteboard and had imagined a problem in there. I had to ask a bunch of specific networking questions to locate the problem. He was satisfied and in the last few minutes of the interview he asked me some specific networking device questions, like what's the difference between a router and a switch and what's OSI model.
Seventh Interview (on-site)
The seventh interview began at 1:30pm. It was a coding session. I was asked to implement a simple string manipulation subroutine that finds common characters in two C strings. I could use either C or C++. I chose C. Unfortunately I made an off-by-one mistake there - the most common programming mistake in the history of mankind. The whole interview focused on this one problem.
Eighth Interview (on-site)
The last, eight, interview began at 2:15pm. It was algorithms and data structures interview. The problem presented here was similar to the problem in the 2nd interview. Not only was it a problem too large to fit in computer memory but it also was distributed. How to sort data that doesn't fit in memory and you've 100 computers to sort it. I had to do all kinds of trickery to solve it. The interview was very free-style and we talked back and forth about the problem. I arrived at the correct solution near the end of the interview and he said that not many candidates get that far in the solution. I was also asked if I knew mapreduce and of course I knew mapreduce as I had read the Google paper. This was basically a mapreduce problem.
After the interview the engineer escorted me out to the lobby and I took a cab back to my hotel.
The End
Overall the Google interviews were super fun. I love trivia questions like they ask in interviews. The interview questions were technical but not very challenging or difficult.
Thanks for the opportunity Google!
Update: Now that my NDA has expired, here are some of the interview questions that I remember.
- Tell me about one of the projects on your resume.
- What technologies did you use to get this project going?
- What if your project had 5000 or 50000 or 5000000 users?
- What's an inode?
- What's the angle between clock faces when it's 3:15?
- Write a C function that returns angle between clock faces for any (hour, minute).
- Write a binary tree.
- How would you troubleshoot this problem - network diagram prestented.
- What's the difference between a router and switch?
- Implement a routine in C that counts number of characters in a string.
- Given 100GB file and a computer with 1GB of memory, how would you sort it.
- Can you make it parallel and solve it on 100 computers?
- What's a priority queue?
- How does BGP work?
- Can DNS use TCP? In which cases DNS uses TCP?
- Implement set difference in any language you like.
- How does HTTP work?
- How does 3 way handshake work in TCP?
- What's
void *?
- What's the system call for creating files?
- Order by execution time: reading disk, accessing memory, context switch, writing a cpu register.
Peter: I am a regular reader of your awesome blog. You rock! It's sad that you didn't get into GOOG this time. I am sure you'll succeed in the future. All the best :)
Dito :)
I would have refused the position as Site Reliability Engineer. Being Software engineering and System Administration (even if topnotch) very different things and I find the latter not quite interesting. I wouldn't do it for a load of money - not even for google - but obviously this is just my opinion.
Often Google recruiters pull the trick of proposing people for unexpected stuff - and often driven by a burning desire to join Google people go along.
I am not saying it's your case - but I had an experience with a close friend (who had relevant experience as a developer) and Google recruiters were trying to steer towards a role called smt like "Content Validation Monkey". At start he was excited (as the interviews were pretty interesting and technical) - but then around the third interview he made clear he wasn't interested in such a position and they told him he wasn't suitable for the position.
I think you were too good for Google. ;)
hey Peter,
with your drive and talent, you can be the next google. don't bother with soul-less corporations.
take care
That's a pretty nice comment :) I wish I had comments like that on my coding blog - hah!
Good post. Best of luck to you next time.
Sounds like an interesting experience, though I'm curious why you did not end up getting hired. Any clue?
Im tellin ya, one day Google is going to Rule the World!
Sounds like you had a fun experience!
Anyway, there are lots of options and a mega corp is just one of them :-)
That's awesome, thanks for sharing. I have a friend who interviewed for Google too. He wasn't hired but it was quite similar to your story. They paid for all his expenses too!
You should have got an "experience" moustache : http://www.folklore.org/StoryView.py?project=Macintosh&story=Moustache.txt
Sounds like great fun!
One question though, after reading a lot of Google interview posts around the Internet I understand that they focus a lot more on the theoretical side of things, with algorithms and data structures being the main course, whilst at places like Microsoft they focus more on practical coding and software engineering prowess. Do you think that, if Microsoft were to come calling for you, you would be a more ideal fit there? After all, Google aren't the only big company around and with news of your Google interview I'm sure that another company wanting to snap you up wouldn't be too far away.
Your story reflects well on both Google and yourself. It is a scary story for me to read, because I would get nowhere near as far as you did in the series of interviews. It's a shame, because I believe that I have solved AI but Google would never hire such a misfit as myself. Good luck!
Not to be an ass, but I suspect you didn't get the job due to the reasons which they stated. Chief amongst, lack of experience.
Technical abilities aside, experience would have told you that you had one phone screen (not an interview), two phone interviews, and one on-site interview with five different people.
I have no doubt that you're smart as they come, but experience does count at most places.
Thanks for sharing your experience. I think what you take away from this will be very valuable down the road. Hopefully this did not discourage you at all - keep moving ahead.
Hey Peter!
Thanks for writing about it, I often heard about the grueling process but never from someone with first-hand experience! Well, it certainly sounds fun and interesting and hope you get in next time.
Hi Peter,
I'm so sorry to hear that. But don't bother yourself. You are in the way and more vacant positions are waiting for you. Just concentrate and never give up :)
aah am sure life has something better for you :) all the best !
I'm actually a Google engineer...
It sounds like you did all the right things to get in and did pretty well in the interviews, because you got all the way through to the end.
I would like to point out that we know very well that our interview process leaves some good people "on the table"; the reason is that a bad engineer can be extremely destructive to the development process. I'd say that about half the candidates I interview that I'm sure are going to get in, don't.
In order to get in, you can't have made a lot of mistakes, and at least two people have to be very enthusiastic. If I knew anything at all about your interview in specific :-D I wouldn't say anything but my guess is you got right to the end to the committee and on the balance they said, "Slightly too many goofs, slightly too little enthusiasm from interviewers, next time."
I'm very glad that you had a good time otherwise, and would like to thank you for applying and all your hard work (and would note to you that we allow people to apply again after a year, hint hint...)
nice post :)
there are not enough cats at google!
It sounds like Google wastes too much time interviewing. If they cannot figure out if a candidate is worth hiring by the 8th interview, then their process is pretty poor. I guess this might explain the all of the crappy applications that have come from google. Out side of search and maps, the rest of the applications are a waste of time or just copies of other apps that are out there. Where is Google's innovation? All of these brilliant minds aren't producing squat. Gmail is just another mail app, Google Talk is just IM, Chrome is just a browser. I guess their plan is to make a Google version of everything that already exists. Sounds like a boring place to work.
BTW, I read the article mentioned by a poster above: "AI has been solved". Might I politely say that instead of writing about how you've been oppressed, a short clear description of what your idea is would speak volumes: but an impressive demo would be indisputable.
Computer science is unlike other technical fields. If I write a theoretical paper about astrophysics, I'm not expected to go out and detect the phenomenon I'm describing: but computer science is so young that theory lags behind practice in many cases.
If you have something new, show it to us. It can be a toy demo, but it should do one new thing, or demonstrate clearly one new technique.
To be honest, just the formulation is unconvincing. There is no "problem of AI" - there are hundreds or thousands. Some of them we've already almost solved (like voice recognition/speech to text) - some of them we have made little progress in 50 years (like reasoning about facts taken from text).
Your Mentifex model has some aspects of interest: it reminds me to some extent of Hawkins' writings in "On Intelligence", which I commend to your attention. And he doesn't have a demo either. :-D
But he does have a lot of corroborating information from neuroscience, which is fairly convincing. And he has the monster track record. :-D
My suggestion if you want to get read:
1. build a demo; and/or
2. find some actual experiments that corroborate your results, or even:
3. propose an experiment where your theory makes specific predictions that other theories do not.
(and if you're trying to publish in scientific journals, lose the fancy name - it sounds like "TimeCube" or something - give your paper a descriptive name without advertising claims like "A multi-level model of the human brain.")
"It sounds like Google wastes too much time interviewing. If they cannot figure out if a candidate is worth hiring by the 8th interview, then their process is pretty poor."
He didn't have eight interviews; he had two phone screens and ONE onsite interview with 6 engineers. And he sounds like a good candidate! In any interviewing system, there must be borderline candidates...
We lose more than half the candidates at each step. However, the candidates who get eliminated early write a lot fewer articles. :-D
Your interview experience matches what a few other people I know went through when interviewing with Google. They wasted a month of your life and put you through eight interviews and you still didn't get the offer. You are a patient person with a good attitude if you'd consider this a good experience. I'd be very angry and insulted.
Google employees need to get over themselves. The people working there aren't gods. On average, they aren't any smarter than any other large technical organization. I've worked with tons of really smart engineers, and none of them had to put themselves through eight interviews to get their jobs.
Their "interviewing" process pretty much guarantees that only masochists will make it through. Consider yourself lucky.
Mr. Ryan you are not listening to Mr. T.Human who has clearly said that "he had two phone screens and ONE onsite interview with 6 engineers". You are probably a sour grape.
I have to agree with Ryan; I'm afraid this is what happens when you let a bunch of engineers run HR; they consider coding to be some kind of high and pure art form and are incredibly snotty about it to boot. One can only imagine what fun it's like to work there given this filtering process..!
I've been contacted by Google recruiters several times, and turn them down each time because I've heard that the interview process is so tortured. To dispute what T. Human said, this is 8 interviews with 8 different people, the last five of which were at one location campus. That's still 8 interviews, and 8 sets of opinions from 8 interviewers.
Thanks very much Peter for posting this writeup; I hope you achieve your goal of working at Google if that's your aim, and continued success to you.
The interview process is just fine. One or two phone screens, for obvious reasons, to avoid wasting time of 4-5 engineers onsite. Then a day of interviews onsite, which is pretty standard. Generally, they'll make the decision after that, or, in borderline cases, they might ask for another interview. I went through it, and I thought every interviewer was respectful and competent. The whole process may take a few weeks, or months, but if you're patient and not in a hurry, it's a positive experience.
Right. This process is not very different from Microsoft, Amazon, or Facebook - all of which I have been through. The biggest difference is that kind of questions and a certain kind of vibe that I get from Google engineers that somehow feels distinct. It's hard to describe.
This is not 8 different interviews as if you have noticed he wrote that same topics were repeated and the 6th interview was easier than earlier ones. So ideally the interview were of same level and on same different topics with 6 different engineers. diffedifferent people an
The problem is when 6 engineers interview with same level of toughness then same topics are bound to be repeated. 2) finally Google doesn't know the difference between mistake and error. From the post it seems that Google takes errors seriously as well, in this they loose better guys than one who joins them as error is NOT mistake. And if error is so seriously taken then why go upto 8th round
I'm not sure if it's a waste. When you feel prepared for a Google interview, you are going to feel prepared for any software engineering interview. It's good practice - and they pay all of your expenses! I'd say for the purpose of interviewing practice it's an amazing bargain.
You didn't get the job because you didn't come from one of Google's "blessed" schools: Stanford, Berkeley, CMU, UIUC, or (for biz dev), the Ivies.
Yep, need to be sucking someone's cack at an Ivy League to gain employment at Jewgle.
>>The program would have segfault'ed in real life >>and I would have noticed the error,
Which is why this was an error that should be of no consequence in an interview. You (the human) are not a computer. The computer tells you the error. You fix it.
This sounds almost exactly like my experience interviewing at eBay, including T.Human's description of what likely went on behind the scenes. Pretty standard routine for hiring at well-established tech companies.
Nope, they just have to be more careful than most, as Google and eBay have both screwed over so many people, they are wary of revenge seekers.
Thanks Peter for sharing your experiences.
Interesting and good experience! Can help you to get a good job somewhere else or maybe at Google another time.
Regarding potential reasons why you were not hired:
1) Choice of location. I guess in Europe the competition is slightly less and it would be easier to get in. You most probably could transfer to CA later, if you really want to.
2) Mistakes during interview. In your article you mention at least 3 mistakes you made during interviews. Too many. I occasionally need to hire some people and then this can be very crucial. If somebody makes less mistakes than others, he most probably is more serious and thinks through everything before starts doing. Can save a lot of money for company.
3) Somebody just could be better. Have more experience, more knowledge, etc. :) Not to worry, in 3-5 years you will as good experience or even better. Just keep trying! ;)
I would differ on this. There is a big difference between error and mistake. And a senior who has spent more years in technology will be able to judge that. The latent potential and the displayed potential is not same all the time. Many people might not commit error but there knowledge might be much lesser than one who made errors. Even after thinking also u can skip some important thing, that's not coz u don't know but that is cozu might have thought the otherway round. ONLY SOMEONE WHO IS MUCH SENIOR Will be able to judge which is due to lack of knowledge and which is just an error due to hurry.
Am I the only person on the planet who has turned down an offer to join the "Do no evil" guys after (at the time) 5 interviews
good lord and I thought 5 was a lot, when did they bump up to 8?
still, better than old school Novell, I had 2 phone interviews with each of 3 departments, followed by 2 (day and a half really) days of interviews that blurred into each other as interviewers came and left, ahh the good old days of "What do you know about IPX/SPX?"
Very good post. very informative. It helps a lot for the people who are going to apply for Google.
Hello mam, can you help me about my future ,i am just finish my MCA ,i need your help ,if u will reply, i always thankfully for you ...........
Hello mam, can you help me about my future ,i am just finish my MCA ,i need your help ,if u will reply, i always thankfully for you ...........
When I interviewed with Google about 6 months ago, just after the interviewer said her name, she told me that I could not disclose any of their interviewing procedures, including schedules and questions. And I had to agree to that "NDA" in order to continue.
Did you not have that condition placed upon you?
After reading the first comment, I thought I have missed something. Based on the blog you wrote (and some of your other articles I've read), I was sure you are writing about how you got into Google. Couldn't believe that Google did not take you. The only reason that makes to me is as was pointed out already, you're too good for them. However, Google should have told you that. This incident kinda casts a shadow on Google's recruitment policies in my mind.
The main issue iswhen Google was just 300 people company did they have 8 interviews 15 years back? But they hired people with much fewer interviews, overlooked simple errors as that time they were just a small company that needed to grow. But those recruits 15 years back are those pople who made Google 37000 employee company. So weren't they good without facing 8 interviews. It's said that when u have name and fame, one can throw a party at 7 star hotel for pet cats engagement. Does that CAT understand whether he needed a 7 star treatment by his master or the idea was to show the world his money power.
i did get through 16 interviews for me to land my job in Oracle.
They told me they know I am good, but they want to make sure all the VPs and Senior Directors have good feelings about me.
I am not there anymore, but I didn't feel bad at the end. maybe because I got the job.
Ahh, it seems like I need to brush up on my C++
Hey if Google can't see how good you are, their loss! I could sure use a guy like you here @ Sun. Yes, we're hiring. Don't give in to all the media crap surrounding us.
You ever want more info, just e-mail me. I'd be happy to work with you anytime. Cheers!
You mean Oracle?
He posted that comment in 2008, when Sun was still independent from Oracle ;)
Several people mentioned that the first phone call or two was not an "interview" but a "phone screening". If the "phone screening" tried to evaluate the person in any way -- of course it did -- it was also an "interview". Giving a kind of interview a special name doesn't make it not an interview.
If you are going to whine about something so petty, at least be right.
It is clear you're motivated, intelligent, competent, and self-actualized. You would be a valuable asset to any company. It seems Google wants only intellectually 'safe' candidates who fit within their corporate monoculture. Internally they are a bit like a cult, and I do not mean that in a good way. Just keep on your present path and you will eventually find a place where you will appreciated for your good qualities rather than any ability to fit into a clique.
xlnt post!
and here's to you getting the position you desire with the company you'd like to work for and contribute all you can to
(stumbled in via delicious)
Peter, did they have the courtesy to let you know you didn't get the position or did you have to call them?
That sounds awesome! I would love the free food. But I don't think I'll survive all the technical questions there.
Google passes up too many highly qualified and motivated candidates. I suspect their business will soon reflect this fact.
Great article! Good luck if you choose to try again!
--from reddit
Google has lost a chance to hire significant talent, I'm sure you will find a much better fit for your skills.
Google Interview SECRETS:
In at least one interview you have to say 'that's such a stupid question, I'm not wasting my time with that' and hang up.
If you don't insist on playing one of the arcade games, they assume you don't really love technology
At the cafeteria, if you can guess how many grains of rice on your plate within 5% - you got the job!
Two congrats:
1. You are probably good
2. You are not working for the stealth evil
I would have been suspicious immediately, as the recruiter's e-mail has several spelling errors and sounds suspiciously like spam.
Good luck with your future endeavors.
Thanks for such an interesting post. To be honest with you, the interview sounds like a nightmare, and it's pretty insane that you got nailed for an initialization error and an off by one when you had less than 45 minutes to receive specs, write a solution, deliver it on paper, and then listen to the criticism.
I own my own company and do very well. I recommend you do the same - you are a good developer and you will have a better and more prosperous life working for yourself than for a place like google. Instead of wasting your time with this process, they could have learned everything they needed about your skills from your website.
Thanks for the post :) .
I just had an interview for a Software Engineering position in Google Zurich. Almost had the same experience and came with the same conclusion.
I was not accepted too unfortunately and was also told that I needed to get more experience.
google USED to be good. now it sucks. I work there and most of us are working on our own starup on their dime. Have to work the system or it works you.
One of my old roommates just interviewed for a similar position! I'm going to forward this to him, small world. 8 interviews? Crazy. Do they think we're sitting around with nothing to do?
Google performs very well. As performance becomes less of a problem due to competing platform as a service, Google becomes less important. Google is at its peak. Start your own company.
Interesting experience. I think, though, that smart and talented people should focus more on becoming the next Google - and knocking Google off their perch - than on joining Google as a rank and file employee!
The best advice for anyone going in for a technical job is to stop being technical and correlate your tech experience to the business at hand and make the interview about you and what you can offer the business instead of you and how much you can memorize.
"Google Interview SECRETS:
In at least one interview you have to say 'that's such a stupid question, I'm not wasting my time with that' and hang up."
Hah! :-D Don't do that.
In fact, I have had people do basically just that to me. I had one candidate (overseas) tell me in a phone screen that my questions were "too elementary" for him, "he was a manager." (And these were "general knowledge" warmups - things every engineer should know.)
The second time he said that, I pointed out that politely that everyone goes through the same process, senior or not, that whether this was right or not, we felt that engineering management needed to know how this stuff works. (And we're talking elementary here - "how fast is sorting? what sorts of collections are there?" - and the recruiters do warn the candidates that it's a "technical interview".)
After about 35 minutes it was clear I wasn't getting anywhere, so I told him we were out of time, and asked if we had any questions. "No!" he said, then hung up with some force (BANG!)
I was unfailingly polite, even though he really was pretty rude from start to finish. "This is too elementary for me" hah!
Conversely, I had a brilliant candidate from Hungary I had a phone interview with and I asked him a hard question. "Oh, that is of course a well-known question..." he says. "So what's the answer?" [extremely correct and terse answer follows] and I thought, "Well-known to *you*!" We hired him, of course... (This joke's better if you can imagine a Hungarian accent...)
Given your description I'd guess they had a question about your ability to translate ideas to error-free code, or perhaps your ability to mentally test your own code. That would be why the 7th interview was all coding, and somewhat boring. You don't mention if you found the seg fault error or off by 1 error in your code or if it was pointed out to you after you stated the solution was correct. That makes a tremendous difference. Given your description I'd guess they weren't able to strongly say there is little risk of you adding subtle errros to the code base. If at the end of the day the interviewers did not strongly feel you would write error-free (as possible) code, then they would likely pass.
(Experience here might simply be getting burned by subtle errors enough to step back and really examine a solution before declaring it correct.)
Again this is just a guess from your description of the interview process.
Someone in the interview process didn't like you -- probably the girl who you ate with.
I was offered a job at google but i opted to become a world class magician instead !
Mate actually I had a similar experience. I had spent a few days brushing up everything in algorithms and data structures and algorithm complexities, you name it.
I was totally dissapointed with the quality of the interview. I got picked on "one-of" errors and one of the engineers showed extreme "ingenuity" by rattling off a question I found so many times on several interview-question sites.
To me it seemed like the interviewers wanted a day off to show off how smart they were rather than trying to find out about the candidate or asking anything relevant or useful.
Ironically I thought I had sucked in the phone interview, which I was told that I had done really well and unlike other candidates they did not want to do a second phone interview before progressing to the on-site interview.
To make it all worse, my rejection letter was a standard template "you did well but not well enough". What the? Id have expected some hints at where I lacked. Nothing at all.
Well congrats to all who did get in any way :D
When T. Human, who asserts that he is a Google engineer, comments on my own Mentifex comment up above at 4:14 p.m., he says that "an impressive demo would be indisputable," and I wholeheartedly agree with him. The Mentifex AI Mind has two (2) demo versions available, one at http://code.google.com/p/mindforth/wiki/ForthMindTextFile in Forth, and another out on the Web in JavaScript. The Forth AI has even spawned an offspring at http:AIMind-i.com, so there is no lack of a demo for the AI theory. Meanwhile, right now today, the Mentifex AI is up for discussion at http://www.reddit.com/r/programming/comments/7fd9h/ai_has_been_solved/ on Reddit -- so people please help my AI project by modding me up there on Reddit. And once again, good luck to Peter!
Yay! Congratulations! You're one step away from being a 'world class engineer'!! :D
Ryan and Enzo I strongly agree with you.
I have to tell one thing or two
1.Welcome to the modern slavery
that is driven my superego (this one is anonymous)
2. Perfect is the enemy of the good (this one from Voltaire)
And to T.Human,
Thanks for helping us. I believe we all going to have a chance of being Google Engineer like you :) There is nothing better I can imagine...
Peter Krumins, good luck ;)
Hay I understand how you probably feel now after going through so many interviews.
But i think you did well...if you were not good enough they wouldn't test you until the 8th interview.
I guess this happened for good. Best of luck next time.
It also can be an attitude. Some questions were too easy? Well maybe they were monitoring also reaction, attitude, style of response, and maybe there they saw something "not ready yet". Just my wild speculation.
Not ready yet for what? A paycheck?
Had the same experience a few years ago only with the Dublin branch. http://www.aigarius.com/blog/category/google/
Let Google feel bad for missing you. Live on your own.
Well done; You deserve better :P
And btw, what was that most common programming mistake in the history of mankind? forgetting the semi-column? :D
Hey it looks like you made it pretty far!
Personally without knowing the specifics my guess is that you did everything more or less right but just weren't a shooting star. At the moment we've just slowed hiring a bit which is understandable given the current macroeconomic situation. Bad timing :(
If you want that job at Google, here's what I would do: work work work (get more experience, practice and spend time on the side with OSS projects - where you can meet more Googlers) for a year, maybe even two. Once you have a chance, try to contact the Googlers you interviewed with (and recruiters) and let them know about your plans. Tell them you're interested when they are, follow up on anything interesting you might have discussed onsite, maybe even stay in touch (without being naggy). When things are going up again at Google, be there with your packet and contact the people you were in contact with directly to express your desire to get the process started again.
IMO working for Google is worth giving it another shot; take your time and get the timing right next time then things will work out.
peter, job well done...
and I am not talking about the interview.
The way I look at it, I think the most important part of an interview is how you take it, before, during or after. And although I have only your text to understand how it all went 'during' the interview, I am sure that you certainly aced the 'after' part pretty well.
Frankly, I love to work at Google. Who doesn't, but taking a rejection so 'in your stride' is something that isn't easy. Or at least not as easy as it seems from reading this post.
For that, a Salute :)
Besides that, I believe that sometimes things happen that one can't comprehend. My friend, in my current office is going to be fired, and although she really 'loves' he company, and although now everyone knows that its probably a wrong decision, the management is something you aren't able to fight all the time. After a while, one starts accepting it as something that ;just happens' and move on.
Its always for the best...
And all the best for the next year... who knows, it might just be T. Human taking the rounds next time :)
Just curious: why would you want to join them after their IPO? The really good money has already been made. Find someone who hasn't gone public yet.
Question do you have a degree from a large university? Berkley? Stanford? MIT? In general they want people from Top universities. That is a huge deal to them. I know some people who work internally, and it's sort of an unwritten requirement. Also cultural fit as well. So if you are married chances are you will have a harder time there. They want people they can milk 12 hours a day from. I know this from other's first hand experiences working there.
Sure the perks are great but working there is not the best. As bobby said. It USED to be good. Now it just sucks and exploits new people in the workforce. You may have had the experience. They just are yanking your chain hoping you will fall into line. Something you said did made it difficult for them to consider you.
I'm not a programmer myself, and I don't wanna sound like an ass but I gotta ask you something, why did a company such as google accept your application towards SRE when in your description you mentioned that you are a physics mayor? I know you also mentioned to have skillfully learned computer science on your own, but, shouldn't a candidate be required to have a formal degree in the field of work he's going to apply?
You're a star in my book. I have learned so much from your sed and awk tutorials.
Perhaps your real gift is teaching. You obviously have a deep understanding of the subjects you write on, only those with such understanding can make things so clear to us mere mortals.
Good luck if you decide to pursue Google further, but don't limit your talents to them. I'm sure I speak for others when I say you have a far larger audience than Google, Inc.
Keep on keeping on, you inspire me.
Call them back and tell them how desperately you want to be with Google. Tell them you'll sweep floors, etc., if in the end they'll let you code.
By the way, all those interviews are a bit much. Seems more like the vetting process for the Obama Administration does it not?
Excellent posts :) .. I found your Video Tutorial on algorithms extremely good..
And the cheat sheets for my yahoo-india interview preparations.
I've actually learn new things by checking Peter blog, and I'm not a CS guy, but like other poster said he does a pretty good job at teaching with his blog and naturally I assumed he was a CS major, just now with his recent Google interview post is that I bothered to check his credentials and found that he was a physics major.
Congrats on getting the opportunity, but I'm sorry to hear you didn't get a job.
Google is a bunch of elitist fags who are so full of themselves one more cock up their ass wouldn't even cause them to notice.
You do NOT want to work for Google my friend. That is if you value a real life. I have several friends who work at Google and call me with mundane bullshit like "hey, I'm playing volleyball at Google or having dinner in the restaurant on Friday night" or some other bullshit....to which I reply "really? I'm eating dinner with my wife and kids at the park..."
The sooner these tools figure out that living for yourself is the only way to go, the better..but Google will still find young, retarded dorks who think that living their lives in a techno commune is cool....
oh well...
Very hateful. Jealousy and sour grapes on your part perhaps. Hope you don't transmit such attitudes to your kids.
Please pass on to your children the ability to think for themselves.
Hey Peter,
Some times it so happens in companies that they feel there is need of one highly skilled person but after 2 months they don't feel the need anymore. This is what might have happened with you, it just happened with a friend, and i know as I work in the company which interviewed him.
Also as Engineer from Google trying to give you a hint, which surely is apply after one year, they might have an opening, and they'll take you without much trouble.
This clearly indicates what happened.
Grt article lad. All the best for ur near future!!
What do you people mean with your "interview sounds like a nightmare"? Didn't you read the actual post? :D Having to pay a visit to have a nice day showing off your skills is a most compulsory step of the natural process of getting a decent job. If you can't take that with ease, you better grow your intellect (emotional part).
Not sure about the university argument. I heard at least in Zurich there were people from tens of countries not containing Berkley or Stanford or MIT.
Google knew before hand that you do not have the experience. So that should not have been the basis of their rejection and particularly after 8 rounds of gruelling interview.
Better luck next time!!
i'd ask for a chance to acquire the experience you apparently lack working at any other suitable position in the most appropriate place for gaining google experience - probably google ireland considering your background... now that they've given you a grilling - why can't they let you swim with some smaller fish...? if you really want to work for them, of course!
hmm... interesting
Well, hopefully Peter will check back on us and answer the question on my first post.
As always props to you and your blog for the amazing work you do in it!
so basically C frecked you up, eh? :D...nice try though. A friend of mine was also emailed by a google recruiter but he only got it to the three phone calls :).
:) Well, afaik google is laying off some programmers (http://www.webguild.org/2008/11/google-layoffs-10000-workers-affected.php). You could be right fit, but not at the right time (you know, reccesion ;) ). All the best wishes from lv people.
p.s. we also seek programmers ;)
Too bad you didn't get the job! Sounds like you had a good experience though.
Thanks for writing this article and giving others an insight into the Google interview process!
If you don't mind telling us:
How did you rank yourself from 0-10 in a bunch of areas like C programming, C++ programming, Python programming, networking, algorithms and data structures, distributed systems, Linux systems administration, and others?
Thanks, Toby
I think You were good for google! Too bad you didn't get the job there. Best of Luck for next time.
Indeed interesting. And its really sad for you to have bowed out after such long process. But well done!
How much did the resources from the above posted links helped you during the interview?
is there article on the web ,that has more comments than these one? ;)
thanks for sharing
nice stuff... many ideas got cleared....
I would like to say, I have only just found your blog - but I found this article extremely interesting. Whilst I have no intention of working for Google, due to my interests lying in the games industry, you have underlined the importance of preparation and professionalism in the job interview process. Your confidence has inspired me to try that little bit harder in the hope of getting a good job in the future.
James Munro
University of Lincoln, UK
I keep asking my friends if he/she or any of his/her friend attended interview with goog (to be honest I was curious to know about interview experience with google) and today I found your one here; really interesting, nice post; thanks Peter.
Man u did great job but i personally think Google needs more people in and ever more web experience in their minds. In short they are gathering the gold from the internet.
all the best in the future. Few months ago I rejected quite nice job offer from PARC.
Wish you all the good luck in the future and I hope you'll get wherever you wish. One way or another.
No prob mate. better luck next time :)
Thanks for posting about your experience in such detail, and especially the steps you took to prepare. Great material!
Thanks for sharing your experience in such detail, and especially the steps you took to prepare. Great material!
u r a true talent, it's google's loss not to hire you.
For anyone reading the mentifex post above:
For anyone reading the anti-mentifex post above:
I think Google sets a similar standards like Serge& Larry which is not a bad intention but how many such you'll find? even if you do why should they work for Google?. Google is not striking balance between "theoretical" and "practical" engineers. Besides the "search" all the products they have is free stuff which they are giving back to the community? (there could be a hidden agenda on this).
Based on my limited knowledge, the following are the most valuable things that they have improved on from Sergey&Larry's original Google system
GFS, Page Ranking, MapReduce - which is still sucks with unreliable server farm issues
Besides the above, what other things Google engineers invented besides Serge & larry? All world class engineers that are working for Google, are you practical or theoretical?
I agree that basic principles are must for any comp science engineer but if a person lacks and if he has sufficient practical system knowledge, its not a big deal to learn them. I mean person like you will just breeze through in few weeks with proper materials, and you'll do very well on applying those principles compared to any theoretical comp. science grad.
Besides few great engineers like Jeff Dean & Sanjay who else they have? what happened to all the other people they hired based on data structure knowledge?
You should not feel bad, Google should feel bad about you.
hmm, I just wish, I even got the chance to be interviewed by google engineers.. :D sounds exciting, but I guess I will end up only dreaming of it...
Anyway... Congrats!!
I really enjoyed your posting and feedbacks from users. Had you landed in GOOG Complex, you could have missed all your shortcomings and feedbacks from well wishers. Enjoy the Journey.. It is always boring to reach the END GOAL.. This is my mottoo.. What we wish, we don't get. What we get, we don't enjoy. What we enjoy is not permanant. What is permanant - ALWAYS BORING. Hope, you will and make others stronger to work in GOOG Desk. Wish you all the best...
I am pursuing my Bachelor of Engineering in Information Technology, India. This is my 8th semester. My dream is to join Google. I am interested in the Interaction Designer post. I am confident at my web skills, HTML, PERL, PHP. I would like to get some help from some of your friends at that post. I would be grateful if you can suggest me some google papers related to this field. Can i have your email id.
It would also be grateful if you can help me in getting more books or papers on PERL, PHP, Unified Modelling Language(UML), javascript, HTML.
Man I also did all the interviews (for the SRE) and ended up also not being hired, but in my case I really think I was not fully prepared to the interview, specially on the C part (I've been working with python for such a long time and I didn't study before the tests). Is really good to know that someone so cool as you didn't get called to work on google.
I just wish I had the money to hire you...
The thing about being the next google and smart people needing to be thinking about that is that those kind of people don't want to start a company (I sure don't). I don't want to be rich, nor do I want to waste my time managing a company (instead of either programming, learning or having fun).
Good luck with whatever you do, and don't worry about it you will be fine.
This reminded me of my interview at NVIDIA,
but the interview was too tiring, 4 phone interviews and 9 interviews on-site , 1 hours each at a stretch and interview during the Lunch as well, very tiring, I was feeling like raped that day.
And unfortunately, I could not make the interview, after all
like me
I am pursuing my Bachelor of Engineering in Information Technology, India. This is my 8th semester. My dream is to join Google. I am interested in the Interaction Designer post. I am confident at my web skills, HTML, PERL, PHP. I would like to get some help from some of your friends at that post. I would be grateful if you can suggest me some google papers related to this field. Can i have your email id
I think you were too good for Google .
c u later
Even I interviewed with them for a couple of times some years back, but then I took little time to solve some puzzles, that went against me as the interviewer didn't had time to ask few more.
Anyways you have it in you to get there and this is really a great technical blog.
Cheers dude, at least you got that far . Look at positive sides,u belive in urself, that matters the most.
Loads of luck to you pal!!
Google is run by a bunch of young recently college graduates much like Yahoo. In fact majority of googlers are former yahoos. These young people don't have much real world experience so interviews are usually focused more on theoretical side of things.
I've worked for Yahoo, Google, Cisco, Sun, HP, and Microsoft as a software consultant for the last 15 years. But the two companies that I would not work for are Yahoo and Google if given the chance. Google is a great company, if not the best, giving all the perks that they're giving you. But their stock is declining. Its just a matter of time, Google will implode from within. Like Yahoo, too many young developers in their 20s who think they know everything. This is the reason why Yahoo declines because they have no real proven talents. It's a matter of time Google will meet the same faith as Yahoo.
Yeah I would believe someone who mistakes "faith" for "fate". I don't think Google would want to hire someone with your ageist attitude either.
I got my 1st interview next week !
Now i am scared !!!LOL
Me too!
Peter, work for yourself, don´t enslave yourself by being an employee.
Exploit your own talent. Don´t let other people dictate what to do with it!
Bad luck about not getting the job with Google. Sometimes an outcome like that can lead you something even better.
You now have some great job interview experience anyway.
All the best for the future.
Gabriel Hasbun: +1
hi peter, your website is very helpful... do you have any suggestions so one could be selected by a google recruiter for an interview?
Does this mean you cannot ever again post articles on Google's uses of technology? Read your NDA carefully.
Interesting how your article on Chrome suddenly triggered their interest.
Start your own team, your own company, and let Google purchase it. Google's technology is not what keeps them on top. They are merely the most popular choice and that is their value.
It's often eaiser to hire or acquire your competitors, or potential competitors, than to compete with them. While they may have hired many briliant yougn coders, these coders can leave anytime.
Interviews are not so much a test of intelligence but are to see if you will be a good team player, and are likeable. Or, to use the buzzwords, a "good fit".
I think you probably know more than many coders working at Google. Because you are even more free than they are to do what you want.
Your blog is one of the best I've seen on the old UNIX tools.
And you are not afraid to think for yourself.
great man.
#1 last comment re: age of techno compianies like google and yahoo is extremely insightful. i worked for earthlink when it was a startup and most of what ;;;
yaoman said at February 23rd, 2009 at 4:47 am is true about how airhead many younbg developers get and bigheaded as well. work for yourself...you already have the toos the booglers have and i'd guess from the tone of the blog that the skillsets
reqd would be a snap for you.
google..get overyourself.
peter...dont sweat small minded people..just use the experience that will fuel your drive to successful and hopefully well compensated technically based self-expression.
i am having flashbacks of the nocal startups (circa 1995-2000) and i shuddre at the resemblance tosome of my own travails.
keep going...
Hi, I liked your post about the interviews.
You said you coded a "physical security notification" system, can you tell me more about it?
What does exactly? is it published?
I interviewed for the associate product manager position at google, you can read it up here
keep going!! I'm sure you've done it already for next time!!
How about Fuck google? They are way to over them selfs now and will crash and burn in the next 10 years.
I know there's the whole "use this for the next interview" thing people tell themselves when they don't get a job, but I'd be pissed if I had to deal with 8 interviews and still didn't get the job, especially for a company that's pretty well known for not paying their employees a lot.
At a certain point, it almost wouldn't even seem worth continuing to follow through without a job offer (I'd say around interview 3).
With all due respect to the recruiter, I would think you would make an awesome trainer or technical writer -- or a needs assessment person.
Good technical people are not easy to come by; but good technical people who can explain things are even harder to come by.
looks very cooll :-) ,you have a small picnic arranged by google yeah :-) great best luck!
I think that's is a typical Google thing to do. They drag you around and offer you free stuff, but then say no thanks and give you little info as to why they canceled you.
They couldn't tell that you didn't have enough experience at the beginning. Instead you have travel and jump through hoops?
I have one word for you - Bing.com !!
I do enjoy your blog - do your own thing, more money and freedom. Good luck!
You should consider that you might have got the job if you had done a few things differently.
I realize that a lot of your interviews, both live and in person were purely of a technical nature and that the interviewers might not have been asked to report not on just their technical assessment but on how they feel you would fit both as a Google employee and as a member of the specific team that you would be working with.
Here are some things to consider:
1) Most people don't ask enough questions. "What is the team culture like?", "What do you foresee the status of the team to be in 5 years?"
2) Most people don't qualify the position well enough. "What are you looking for in a candidate?", "Do you expect this person to hit the ground running or is there a certain amount of OJT required to properly work in this particular development environment.", "When will the selected candidate start?" "How many developers are you interviewing live?"
3) Perhaps you were culturally frowned on. I'm not saying that they are racist but do you have a heavy accent? You are clearly more than articulate in reading and writing but perhaps they would feel like there would be a bit of a communication or cultural gap when working with the team on long hours and tight deadlines.
4) Thank you letters. I know of companies and hiring managers who will, regardless of the quality of a candidate, will decline them for not sending an email to thank them for their time. This is a lot more common than you think.
5) Close them. "On a scale from 1 to 10, what do you think of me as a candidate". "Why a X and not a 10?" "What did you like about me as a candidate?" "How do I compare to other candidates that you have interviewed?" This is HUGE. Through the interview they may have seen you as mediocre but once they are put to the task of rating you, they might think, "Ya know, this guy is actually pretty friggin' good. I'm going to give him a better than average score."
To qualify my statements, I am a senior level salesperson who has sold into high tech (including development tools and services" for 20 years. Sales is extremely volatile and so is technology unless you work for IBM or well, Google. The technical people interviewing you wouldn't know what hit them if you did what I listed above.
You technical folks can say all day that tech jobs are all about knowledge but ask yourself this, would you want to work closely on a team of 5 other folks who are the best in the world making you part of an elite team despite them being a bunch of lazy, anti-social jerks or would you rather work with very good folks who can most certainly get the job done, work hard and are fun to work with?
Unfortunate reality of corporate interviewing process is that perception is everything. If someone out of several people who interviewed you felt in some way uneasy - you are done! It happenned to me on multiple occations when I learned later that some shmuck would say "I would not feel comfortable working with him" and that was it! There was no logical explanation, just someone's insecurities and emotional crap at their best. Also US has so called "affirmative action" that mandates companies to hire people by quote. For example, if gays represent 3% of population, then company must have 3% of its employees gays. Same goes for blacks, hispanics, indians etc... The rule of the thumb: the bigger company the less white people work there. Also there is influx of indian programmers in US. So I would not be surprised if they hired one of those in your place, because once you have one of them it'll be tenfold really soon. If that's the situation in Google I feel sorry for them because those guys write horrible code. Bottom line - don't regret, it was for the best, you'll see!
What a load of bigoted crock. Companies in the US are not allowed to discriminate by race, gender, sexual orientation etc. You are making a serious allegation for which a lawsuit can be brought against you.
"You are making a serious allegation for which a lawsuit can be brought against you"
Nonsense. You have NO idea what you're talking about.
Example puzzles by a Googler. Good insight into problem solving at google.
I'm not him. I just wrote about the puzzles.
Hi great to hear about you and I am not sure whether you may notice this comment. I personally want to have contact with you. I am having passion to work with Google and I constantly want to know how to shape up my career for that. So if you would like to add me can respond this comment that how can I join you in any of the social networking site.
Another view
My Experience at Interviews with Microsoft and Google
Really wonderful information Job Interview at Google. I really like your views. Thanks for sharing us.
can u help me man!!! im a diploma in compu eng studne frm India!!! my aim to get into google!!
my age s 18 plz help me!! i wanna learn more from u!! contact me plz!! firstname.lastname@example.com
You will never get there, you don't even use gmail.
Thanks for the information. That is a lot of interviews to get into Google.
awesome.. some big position is waiting for you in googleplex..
All the best dude. Thnx fr ur experiences. Those will help us fr sure.
It was an interesting read. Thank you for sharing it. If you like Google, you should try one more time.
World has a lot of other great companies you can try. Singapore is one of the best countries to live and work. Try there.
America has other great companies. Why not try Microsoft because Bill Gates has donated almost all his money for the benefit of the world and I consider this the best job in America.
I would have never said "Thank you Google" at the end of my blog post if I would have been in your shoes :)
Saying "Thank You" shows class on his part, something which you and some other bitter Google-rejects don't understand. I agree with many others that Peter will go far, with or without Google. You can't keep a good engineer down! But those folks who exhibit an "eff you Google" attitude just because Google has the moxie to enforce hiring standards while risking greater false negatives, you're precisely the type of whiny little zits Google has no intention of hiring.
How come you spend the 8th of March 2011 replying to old comments of this blog entry? You're preaching about attitude while your own manners are not the best.
Peter, you seem like a kickass programmer! Keep up the good job!
Can you please shut the fuck up, biatch?
"Can you please shut the fuck up, biatch?"
This "Ben" guy seems to get awfully butthurt. Another Google fanboy?
Nice post, Well even you havent been hired by Google, it was still a good experience for you, and that experience will challenge you more and put you in a bigger and higher position in other company or in Google in some other time.
Reading your job interview experience with them, I think they did'nt hire you coz they were afraid that you might steal their position in the future lol.
Jeez Louise, at least no one can fault your preparation. Stevens + MIT Algorithms is tough chewing!
You have a good attitude. May you go far!
My experience was a nightmare....I had 2 interviews with Google. I answered correctly every question. I have 15 year of experience and I also remembered (I don't know how :-) ) things about O(nlogn) O(n^2) and other kinds like that. I don't know experience of Google people who make the interview but I think there are a lot of things more useful that complexities one that a person know at univertity and see on Wiki if he needs it later. I waited 3 months for an answer. I asked Google many times an'answer without nothing back. After more than 3 months, maybe because I stressed them, I had the famous mail "Thank you from Google" saying that "at the moment" I don't fix blah blah blah. I wrote again to know WHY I'm not good for them. I sent the mail 3 weeks ago and maybe I have to wait again 3 months to have an answer. Maybe I'm simply… old for them (35) but I expected more from Google in terms of "people management". If they treat people as a number, maybe it's better for me not to be engaged. I'm really disappointed…
Hope you'll be more lucky.
I hear Shanghai Jiaotong U. has some good opportunities for Google hackers. Time for a little payback, eh? ;)
Best of luck.
Has it ever happened to you for the recruiter to forget to call you at the established phone interview???
Well, it happened to me with a Google recruiter...I called him to remind him, he appologised but when he called me the next time he really seemed bored.
Do you think it was a good idea to call him?
Nice write up. It showed that you are a really committed person. Maybe next time, I wish you the very best of luck :)
You apparently are very qualified for engineering tasks; what about using your knowledge to work for yourself? If even You work for Google, they pocket all the profits; if You work for yourself, that's entirely different game, entirely different satisfaction.
And by the way, You could hire good programmers for Your company - You know what they must know :)
Hi Peter,
Shouldn't "receipts" read "recipe"?
thanks for sharing your experiences. Google hiring process is strange and it has passed way too many good candidates.
your passion in programming will tell google that they were wrong about you.
Hi peter,
thanks for sharing your experienc,
great story, now I want to work for google even more
8 interviews and you dont even get in, im sick of these companies making you do so much and then not even explaining why you were not hired. Its bullshit
I have very different story here. Google recruiter called my one of friend for the interview and asked for the time. At that time Yahoo just offered him. My friend told him the truth. Now, interesting happened....!!!! Recruiter offer him direct on-site interview, no screening, no phone interviews. From this I concluded, Google need talent either by series of interviews or no interview at all.
Thanks man you are very inspiring and your articles speak volumes about the work that has gone in to your head. Google itself is searching for you. Maybe they should tune their people(page) ranking algorithm a little bit more to give the best results.....
Thank you for the great post. It saved me lots of time
Probably you are too smart for them. I am sure you will accomplish something more important than if you were a google employee. You would just be another corporate salaryman. Perhaps the people who decided not to hire you were incompetent and not real engineers. They have prestigious degrees, and are fluent puzzle solvers. But they still may not be good engineers who are fit to judge your skills.
Please continue to do your blog. I enjoy the articles.
If they let their engineers spend more time working instead of interviewing prospects they wouldn't need to hire so many new people, which in turn would free up more of the time of existing engineers, and .....
Google interview style looks really crazy!
Eight interview in one day, it's unbelievable.
That are they thinking about themselves?
I've gone through the interview process twice now with Google (once in 2007 and once in 2010), and since the more information out there for those undergoing pre-Google-Interview stress, the better, I wrote it up:
dat was really inspiring.....u really did a damn gud job....kudos to you.....
Thanks to you Peter and all the commenters too. I just had my Google screener call yesterday (haven't heard from the recruiter yet). Reading your post and all the comments has helped put things into perspective and make me relax a little about the whole thing!
Btw, who codes perfectly the first time (in an editor let alone on paper)? That's what unit tests are for!
NB: And here I was thinking that nothing useful would ever come from my Linkedin profile :D
Awaiting my phone call today and chewing my nails. I'll get crushed for sure... but it will be fun :)
Great post - As an ex-recuiter, I think of the hiring process more like the coming together of two personalities...It can be a hit and miss affair and can never been seen as an indicator of your true talent or potential!!!
Sometimes we find gems and sometimes we miss the next best thing since sliced bread!
Better luck next time Google!!!
Hi Peter,
I've only found your site recently, but it is already on top of my favourites now, you are certainly very gifted and a good coder, hope all goes well on your new project and I echo what many people have said u dont need Google they need YOU :)
good luck
Hi Peter,
I didn't go past the 2nd phone interview. I feel ashamed to call myself a software engineer. I was asked to come up with an algorithm. My solution was O(n) and I couldn't come up with a better algorithm in 15 mins.
You must be a pro to be called for an onsite interview.
That was a useful description of the interview process.
Truly inspiring!.... InshAllah
• This action proof to be a win, win situation. This is a true art work, which will be a success story.
Is there an age limit for being hired at Google? Are there any engineers, et al that are over 40? 50? 60?
Getting hired by a great company can take perseverance. Years ago, I wanted to work at Tandem Computers, HP or IBM. I interviewed at Tandem through a series of interviews and didn't get the gig. I tried again and eventually was hired. The hiring process there at that time was VERY long. Months! But-it was worth it in the end. Tandem Computers was one of the best companies to work for ever!
Hey Peter, This is the first time am visiting ur website. I am really wondering about ur ability. keep rocking!
Sounds like American Idol, my favorite candidate never wins. Interviewing for a position at Google is a GREAT EXPERIENCE. You can learn so much. I just now realized that hiring Google rejects that code in C are the people I would like to hire for my startup. We have a goal of getting out of BETA before Xmas. Anyone who loves Python is welcomed...
Hi Peter,
Thanks for sharing your interview experience at Google, Really your Awesome..
Hajee Mohamed
Sounds like you might have been a little to happy to be there, which can turn some folks off, you know what I mean?
To be honest i was invited for onsite interview , they called me today while i was working , saying " I have very good news " .. i sounded a bit disappointed there ( im sure the guy was surprised by my lack of enthusiasm : ), because i wanted to save myself all this crazy stages. But i guess i don't have a choice now .... I mean , i was playing with google saying .. no way i will get to the onsite , and there i am ... crap !! , haha
How long did it take after the interview for them to inform you that you had got through to onsite? Its been about 3 days I don't know if I made it or didnt!
Be prepared to wait between 1-2 weeks between interviews (whether it's phone screen or multiple sets of on-site interviews). Use the interim time study up some more, stay in the mindset... and relax! So much of the interview process is outside your control. Focus on your own emotional state and confidence in yourself!
I too got interviewed for SRE, my experience in my blog.
Google must pay triple rate for the kind of interview they like. Other than their search engine and probably Google Earth, I haven't seen much smart engineering to come out of there. Once a recruiter asked me to write an 'email client application' just to get a phone interview with them, I refused. Anyway, I got the phone interview – they guy was full of himself and started asking me questions that are hardly relevant to the everyday development process. Anyway, there are better paid and more fitting options.
It's quite sad to read such things as "awaiting my phone call today and chewing my nails. I'll get CRUSHED FOR SURE... but it will be fun :)" and also about that guy feeling ASHAMED and not calling himself/herself an engineer. That's the sort of problem in Google's recruiting processes.
I have a bunch of friends working for them, spread over 3 countries (England, Switzerland and a third place I can't disclose). One of them is really good and gifted (in the sense things are just easy to him, naturally) and it seems to me he went through the full process perfectly, almost like you did, but hey he succeeded. The others to be honest are cocky and not that great, they just managed to slip in, I'm sure one of them even had no college degree when hired, which shows the ivy-league education thing is a bit misleading, at least for a position in Europe. Having said that, I can't simply see a pattern here, it looks to me their all interviews and hiring processes were randomly chosen. I'd have hired just the first guy, but you know what all the others have in common? They can be milked for days, non-stop, they're singles and now have eye circles. I'd rather work for another global company, not stricly IT-related, but have a life and don't feel "crushed" neither "ashamed" - precisely what I'm doing now.
I had an interview (phone screen, hehe) with a girl from Googleplex some years ago. I'm a Linguist and had applied for a linguistics-related position there, so I thought the interview was for that job though I have plenty of computer experience IMHO. I was wrong, disappointedly it was a SRE position, Google version of one-size-fits-all, jack-of-all-trades. We thanked each other's time and I let it go. Btw, I didn't feel I was well prepared anyway.
Then I got another call from a guy also working at Googleplex. This time they contacted me first, I didn't do anything, they probably got my freaking old resume in there and wanted to give it another shot. For a SRE position, again. But this time I was already aware of the overkilling hiring processes and went like "That would be great, ok, I see, thanks a lot, ok, you know what? Let me send you my resume again and just tell me if I fit in, otherwise both of us will waste time and get upset due to the overrated expectation".
It was the best thing I've done. The guy seemed to love this objective approach, so I can only assume even to recruiters the process sounds overkill sometimes.
I'd love to work for Google, gee, I have friends in there, it would be super cool. But I've got a family, I like to sleep 7h a night and to only meet cocky people when I really want to, I don't want to be put down by "top-notch" hiring process that a quick search on Google (!) shows it frequently makes people feel depressed, not happy. What I really wanted to tell the guy was "I know I may not be the coolest kind on the block and that you think too much of yourselves like that 6th grade blond girl I loved when kid, so hey, nevermind, I'm staying with this chubby brunette". It was a good massage at my ego to know they took time to call me anyway, for that I'm grateful :-)
Best of luck, and don't focus on "getting a job on Google" but "doing what I do best, eventually it turns out awesome" instead :-)
Forgot the last bits of the 2nd interview (phone screen, damn you brain!). The guy sent me a mail days later saying he had forwarded my resume to a couple of teams for a review and the official response from him is that I was on the right track but needs to get more experience, he didn't want to specify on what or for how long. I suppose more 2 years of intense hacking would be nice, however I think by then I'll be "too old" for them, even older than I'm right now. For clarity's sake: both recruiters were absolutely polite, nice and clear. It's the process.
Hi Peter, can you suggest some good books/resources to get as a student trainee in google? I am in MSIT Ist year in IIIT Hyderabad India and searching opportunity in Google Hyderbad
Great article Peter! It sounds like you have all the desirable attributes necessary to start a successful software business of your own. Why don't you?
you rock it .. :-P next life.
by the way, this page has tracking javascripts overload who are watching the visitors..
good luck
very interesting. as all other posts..
8 round interview?? there are only 3 human parameters relevant to any human activity/work. The 4th interview should be to reveal something not apparent in 3... sounds this is part of Google's self advertising (unfortunately incredibly stressful for the attendee)
Two weeks ago I finished interviewing process with top US IT company, story would be similar.
Bitter feeling stayed for a while.
Conclusions: big companies uses their reputation to exploit potential employees, they don't care much if a bright mind would not be recruited (as they care only not to recruit a bad one, as mentioned prior in comments).
Next time I will consider of asking at least 1st class flights and some 5k usd for talking with me. And if it would not be interesting for them I will just keep working on my own things.
And one thing I thought off ... how it is possible that a developer would hire brighter minds than them self as there is such a thing as loosing job or not getting promoted.
Hi, very useful post. I've just bumped into it and found it concrete and useful, very straight to the point. With your tips and some tricks I've heard during the webinars organized by
http://www.blog.ivyexec.com I'm sure I'll easily go through next job interview. Thanks once again!
Humbling. Something tells me you are fortunate not to have 'succeeded' in getting hired by Google. Their loss, certainly, in the end. Very insightful post. Thanks for sharing.
Best wishes
Your experience is very interesting. It can help others a lot. I have applied for a job in google so many times but I never got any Interview call from them. I am a 2+ experienced guy working in NEC. I want to join my google. Can someone please guide me how should I prepare for getting a job in google as it has always been by dream Company from the starting of my career. I am working on Pasolink, a product of NEC, Japan.Your suggestions and criticism are heartily welcome.
Please also tell me I am doing C Programming, Linux in my present Company along with Testing Profile also. Will there be any good career oppurtunity in Google with these Work Profile.
I have very much passion for programming. I like to make fun with programming . But I am not from CS background. Is it possible for me to apply to google for software engineering job?
I have very much passion for programming. I like to make fun with programming . But I am not from CS background. Is it possible for me to apply to google for software engineering job?
As a headhunter with 20 years of experience,
and an observer of how Google operates,
( They get most things free or cheap. )
it looks to me like Google is using you as a patsy
to con folks into thinking that they only hire
superstars greater than you,
and they can offer other applicants less,
by contrasting them with you.
Observe that most of Google's technology and code
has been ripped off. or bought from companies
like DejaNews, the companies that created
GoogleEarth and Picasa, etc.
And no doubt Google has gleaned billions of dollars
of free creativity with their snooping and programs such
as the "10 to the 100" project.
("People from more than 170 countries submitted over 150,000 ideas..")
And who knows what intellectual property Google is stealing
by having accesss to so much email.
Google gets more benefits by turning you down,
than they would by hiring you.
As can be seen from the comments
most people have been brainwashed to
have a higher opinion of Google,
because the turned you down.
great posting and very inspiring. Also was a real eye opener for me and I suspect many, many others who are close to the skill levels desired by Google and other IT giants and those like myself who really had no idea how little I know. Over 4 years old and I still really enjoyed this posting and am amazed how well the comments sections stayed on track.
As per some of the comments, a few really stuck out, but the above by Tom Potter takes the cake... great, insightful information! If true, you would fit that "patsy" bill just right because one of the main things I've thought since I even read the headline was that, "damn, if this guy can't get in who the hell can, not me!!" Sounds like Tom really knows what he's talking about, it just makes too much sense and all the individuals putting themselves down etc is a pretty good example of the tactics effectiveness. Sadly. another comment that stuck out was by Nick, "Something tells me you are fortunate not to have 'succeeded' in getting hired by Google." is exactly how I've felt about your interview process outcome. I do believe Nick is correct. Thanks for sharing your Google experience and most of all thanks for being a GREAT teacher(like another said, You sir are a born teacher!! A very rare one who can do, as well as teach). Your site has been invaluable to me in filling in the gaps of so many tutorials, classes etc. Best of luck Peter but people like yourself make their own luck.
Dear Peter!
when is the best time for applying for Google?I'm studding software engineering but my goal is working in Google and i want to know how I can prepare myself for there?
i just completed my b.tech graduation in electronics and communication engineering.i have good enough knowledge in c programming and little bit of theory in java.i read your article..8 rounds nice..i enjoyed reading your article..thank you.
I honestly think, you shouldn't join any organization. With all the skills you have start your own company.
As others have said the outcome is a blessing in disguise. Think about what google is....They give all their products away for free! Wow! Quite a trick. But they pay really well and have free food, etc. Try running a company where you give every product away for free and then maybe a light bulb will come on. If you don't get it, definitely go work for them. One day you will get it. Then you'll have to decide.
Thanks for sharing your experience with Google interview.
I personally think they're exaggerating, I think all those big companies do. But does it really makes you happy if you work for a big IT company? You should know that if you work for Google, you work to make Google good in the first place, not yourself.
I rather have a nice girl to love her and live peacefully with her than work for Google with a lot of stress. Also, with your knowledge and expertise you can easily have a nice job or develop something which can be successful, like the big man behind Facebook.
IMHO, I guess that some people ambitions are to be the best programmers. In order to be the best, they aim to work, train and mentor with the best. They regard Google as one of those temples.
I don't think it is right or wrong with Google interview. People passed the interview process treasure it as the right path, some people failed the test or thinking too harsh may view it as a highway to hell. At the end of the day, it is your decision to open that door.
Some people think the googlers are arrogant with superegos. Maybe or maybe not. All I know is ...
You need ego to be good at something but ego can also blind you.
Would I consider the gruesome Google interview? Thanks but no thanks.
You need to follow a very organized and disciplined approach to prepare for the Software Engineering Job at Facebook/Google/Amazon/Microsoft etc.
Actually all these companies e.g. MS,Google,Amazon,Facebook,Apple follow an approach on which that measure the thought process of a candidate.
And they use different means to evaluate that, but yes most of them uses Algorithms/Data Structures/Open-ended questions(If you have applied for a software engineering job) as one of the approach to evaluate the talent.( As those are the base to develop the technologies)
To be accustomed with algos/data structure/coding , you must have understood/practiced the minimum e.g. :
(Step-1): You should have practical understanding of the Algorithms (e.g. When to use BackTracking, When to Use Divide and Conquer, Why double hashing required ?,Where brute force concept can be applied ?) (100 Hours)
(Step-2): You should have practical understanding of Data Structures e.g. (Practical use cases related to :when to use circular buffer , or when to use adjacently list or the combination of both or something else to solve the problem )
(100 Hours)
(Step-3) : You must practice several coding problems to implement the things which learn from Step-1 , and Step-2 (you may do the following choose any coding language for the choice of yours (C,C++ or Java or Python or PHP or any one else )
(100 Hours)
(Step-4): Solving the problem doesn't mean just to solve it, but to understand the best way to solve it e.g. The given technical problem can use various ways to come to solution, and you might want to use the optimal one. (How you connect the given solution with the computing/memory resources e.g. Memory/Processing Power)
(100 Hours)
Most Important One
However other than programming you might need to understand the main concept for the interview is to keep the interview active and this requires some action from your side, such as the following:
You need to talk
You need to explain
You need to discuss
You need to express your views
You need to understand clearly the questions given to you
You need to understand the interviewer's expression and mindset to un- derstand those questions
You might need to ask appropriate questions to understand the question or any other discussion item. (100 Hours)
And also :
Prepare : "Please tell me about your self" , "Your skills related positive/negative further interest" , Basics for the most needed computer science concepts or anything as you presented on your "CV/Resume"
(100 Hours)
Above is just a sample plan, you may customize the way you want(e.g. 100 hours to 10 hours or something else) - Click to Amazon, to find the best books you might need.
(Here Google doesn't mean the Google, it means any company which is very creative to introduce the computer science related products )
Interestingly, Google have decided that this system is useless:
I have to say, I'm not surprised. If you didn't pass then it's obvious that the problem was at their end.
Recruiting in IT is very hard. I've been the recruiter and I know that academic qualifications are often handed to complete idiots. But if you only look at experience then you never recruit fresh and enthusiastic graduates. It's tough to know how to go about it. As a rule of thumb, 1 in 200 applicants are capable of decent levels of programming. And that's from people applying to programming jobs!
This is a fucking awesome blog post ! ... Kudos to the author
Great article my dear,i love it!
I had a big dream of work for google as a developer.Don't know how to fulfill my dream.Currently I am working for a small Software Company since 1 year.Are there Any Prerequisite things to learn or Adhere to get job in google Please Help me.
I think you are qualified enough for google , you should get your own project after all so you can show to google that you are the best man so they will regret
I read through your story from four years ago and all the comments today in 2014. Your experience sounds so similar to mine and your reflections relived the last four months of inspirations, persistence, and emotions in me. I still couldn't believe that I made it and amazing programmers like you didn't. I am too lucky and I am not going to waste this earned + lucked-out opportunity to do mundane things. Thanks for your inspirations!
So to think, I studied for four months from the time I received the initial contact from a Google recruiter. I took advantage of the sparsely allocated interviews just like you did, except there was a xmas/new year in between which gave me even more time. After the first on-site, which was a very humbling experience, I was politely told to be not a good fit after exactly a week. And just like you, the recruiter didn't give up on me and found me another team to interview again three weeks later. I was biting on my nails everyday after the 2nd on-site; I thought there was no way I would make it through reading people's Google interview blogs non-stop. The day before I received the news, the recruiter sent me an email to ask for a call the following day. I thought it's over. I was counting down the minute she was to call me that morning and I missed call because she called earlier and I went to bathroom, ha! I called her back, and she told me I passed the hiring committee.
It's been 3 years since your last comment on getting funding with your own startup. I hope it's been going well for you!
hi cerealnoogler
congrats on getting into google. can you please help us out by explaining how you prepared for the interview . I have a call in the next month
i m a student of m.tech (power electronics and drives) and i have complete my b.tech in Electronics and Instrumentation. can i apply in Google or not . plz send me process to apply and extra qualification. kindly reply on my email id .
It is nice to know what you had to go through, I will be having the first of their phone interviews sometime next week. I am very confident, that I will not make the cut. Well on the bright side, I might not have to go through months without knowing if I was accepted.
Can you please write something about how to prepare for Google interview? Given you have experience, it would be great help.
@.@ wow! eight interviews for a position in Google @.@ Now I admire everyone who works for Google @.@ I've known that Google has a amazing work environment, I don't know that... 8 interviews... Good luck for all candidates, and I comeback to my small world (sigh)
It's good you run your own company now, as I would never trust any bigtech corp like Google not to lay off half their engineers one day.
Anybody else interested, there's a new way to hire people through stockfighter.io which is a game where after you advance x many levels a recruiter can contact you in order to offer employment.
I also think you were too good for Goog!
I've been a regular reader of your blog and books, so to me is very odd why someone with your skills wouldn't fit on such a company. It's been a while from what you experienced but I also had the same experience (early 2015): 8 interviews (three over the phone, five on-site), similar topics, and definitely the same sense that I performed pretty good on my answers but it seems there's still something they look that you and I don't have. What would it be? I would have liked to know the reason when I knew that I did not pass the interviews. But now, in retrospective, that unknown reason helped me to question myself and empower the talents that I'm certain I have.
Nice post! It's always very interesting to find out what kind of job interviews have got such top companies.
I am looking at 8 years old post. Have you tried again and got a job in google?
Not all talented people land in Google. Some are happily enjoying the life in some other good company.
Can you do me a favour, please do not remove my website.
Thank You
Hmm ... it's pretty discouraging that even after you felt you did well in the interview they did not end up giving you a hire. One thing I certainly saw with my Google interviews is that almost all questions tend to be very open-ended. The theoretically best or fastest solutions to a lot of the questions I had been asked are impossible to code in the space of an interview and sometimes even the subject of a PhD thesis, but finding a correct solution, for example by brute force, is relatively simple. It's usually exactly in that area, where you point out possible improvements, maybe theoretical bounds, and go a little beyond that you can score in Google interviews, IMHO.
For example, take the problem of finding the lowest common ancestor in a tree. It's not too difficult to solve in the space of an interview, but when one reads up on this particular problem a little more, it is amazing to realize that it can be solved in O(1), given a one-time preparation step of O(n) and pointing out how its solution can be related to the range minimum query might be worthwhile, too.
Sometimes, even when you think you have solved a problem perfectly, you might have forgotten to ask a question whose answer might have put a certain slant on the question - such as in inquiring whether an online or offline version of the algorithm is needed. Or you solved the problem exactly as it was intended, but but not confirming certain aspects you left them assumed, instead of making them explicit.
Okay ... I'm rambling on - sorry. What I'm trying to say is that the questions I was asked could not really be solved in the space of an interview. They were so open ended that one could have discussed the problem for hours, so maybe finding that tie-in to open a broader discussion is what was missing.
Then of course there is always the dreaded "cultural fit" ... I am calling it dreaded, because it is such a nebulous term to me that it sometimes seems to be used as a catch-all for any miscellaneous reasons why someone is not getting a hire.
You seem to have plenty of experience then. Just try again in six months! None of my friends who work at Google got in on first try. Maybe they only hire people on second attempt to test their stamina XD
Oops, I mean a year ... I thought it was six months for some reason.


text:
This is my first website review which actually has some awesome deals on restaurants with 50% to 90% discount so here it goes.
With food inflation at almost 17% going out for dinner is an expensive option at good places or wanted to gift my girlfriend a good massage or spa but one time visit is super expensive or want to beat stress join a gym but do not know which one is good try out for a month at throwaway price.
These are the things which I always think about before going out or gifting someone. And after surfing on the net (which is practically I do 10+ hours a day) I stumbled upon a website called SnapDeal
The funda is very simple and very clear, they give away discount coupons for eatery places, watering holes, spas, haircut saloons or gyms.
All you have to do is:
- Buy the coupon in the city which you stay in (currently they have 11 I think they are adding more)
- The deal is on for mostly 48 hours+ and offer period is mostly for a month.
- If you like the deal then click on the big red Buy button and pay via Internet/Credit card etc
- Make sure you look further down where you will see how much you have to pay to the merchant. How this helps is the initial amount is low and even if you do not go to the merchant your money is not wasted.
- When the deal is live take a printout of deal before time runs out.
- One important thing I have learned is you should read all the details before buying.
- The good part is the call center is always there to help you or you can chat to the customer service that is always ready to help you.
I have checked out few other website similar to snapdeal but the interface is very user friendly and no learning curve.
Ohh! Ya and they do give your first deal free with their code which you receive once you sign up with them. So when you buy something you get the deal as free for the first time but you should be entering your name and details after entering the Promo code.
Currently bought my sister a Swedish Massage deal @Tress Talk.

subset: commoncrawl