The process began when I responded to an unsolicited contact from a Google recruiter. We scheduled a phone screen interview.
During the phone screen, I was asked a number of questions that essentially verified that my skills and experience listed on my resume were correct. We then worked through a few basic design and coding questions.
A day or two later, I was notified that Google wanted to bring me in for an onsite interview, scheduled for about three weeks later. Google advised me to study up on algorithms and data structures, big-O analysis, and so on, which I did.
At the onsite interview, I was interviewed by five different software engineers, each interview lasting approximately one hour. Each interview consisted of one or more challenging software design or coding problems. In all cases, I was asked to do big-O analysis on the runtime and/or memory requirements of my solution.
I experienced performance anxiety towards the end of the day and performed poorly on two of the interviews, where I froze up on questions I should have been able to answer.
A few days later, after the hiring committee considered my application and interview results, the recruiter called to notify me that Google was declining to offer me a position. However, due to excellent personal recommendations and very good feedback from most of my interviewers, I was encouraged to re-apply in 12 to 18 months.
Design a system to find all Googlewhacks.
Analyze its efficiency in terms of memory, storage, and run time.
Analyze its scalability characteristics.
The following metrics were computed from 748 interview experiences for the Google Software Engineer role in Mountain View, California.
Google's interview process for their Software Engineer roles in Mountain View, California is very selective, failing most engineers who go through it.
Candidates reported having very good feelings for Google's Software Engineer interview process in Mountain View, California.