Google

  www.google.com
Work in HR? Unlock Free Profile

Google Software Engineer Interview Questions & Reviews

Updated Jul 23, 2014
All Interviews Received Offers

Getting an Interview  

36%
21%
16%

Interview Experience  

47%
34%
17%

Interview Difficulty  

Average Difficulty
866 candidate interviews Back to all interview questions
Relevance Date Difficulty
in

No Offer

Negative Experience

Average Interview

Software Engineer Interview

Software Engineer
Sydney

I applied through a recruiter and the process took 6 months - interviewed at Google in September 2013.

Interview Details I was contacted by a recruiter from google india. Had 2 phone interviews. But the recruitment process was really slow and the recruiter replied very late. i got the last reply after 4 months of the 2nd phone interview. It was really frustrating to wait for such a long period..

Interview Question – There are n integers in disk. Memory has m space. how to sort the data efficiently.   View Answers (2)


2 people found this helpful

Accepted Offer

Positive Experience

Average Interview

Software Engineer Interview

Software Engineer
Sydney

I applied through a recruiter and the process took 2 weeks - interviewed at Google in October 2013.

Interview Details Process was expedited due to another offer. I went from a single phone interview to an inhouse interview with potential future team members. Recruiters were all helpful, and the internal company paperwork took up the majority of the process.

Negotiation Details – Have competing offers.


1 person found this helpful

No Offer

Positive Experience

Average Interview

Software Engineer Interview

Software Engineer
Sydney

I applied through a recruiter and the process took a day - interviewed at Google in October 2012.

Interview Details Contacted by recruiter for a initial phone interview. Later a week, i got a call from a person in Google sydney office. He was very polite and trying to get best out of me by giving hints. Interview went well. One puzzle and one simple problem. I used java to solve it. But later one week, they had mentioned, though interviewer were impressed with your accomplishments, they felt my experience was not strong match for current requirement.

Interview Question – Suppose that you earn 100% annual interest (APY) on $1 initial deposit. How long before you'll be as rich as Bill Gates ($63 billion)?

Given a number, e.g., 314159, as an array [3,1,4,1,5,9], increment it: change it to [3,1,4,1,6,0].
  View Answers (11)


No Offer

Positive Experience

Very Difficult Interview

Software Engineer Interview

Software Engineer
Sydney

I applied online and the process took 2 days - interviewed at Google in April 2008.

Interview Details Phone interview asked standard code related questions, about object oriented code, defensive
programming, etc. did well at that. one to one interview was similar but more in-depth

Interview Question – how many golf balls could you fit into that building?   View Answers (2)


No Offer

Neutral Experience

Difficult Interview

Software Engineer Interview

Software Engineer
Sydney

The process took 4 months - interviewed at Google in January 2011.

Interview Details I was contacted in September via linkedin. I sent the recruiter my CV and haven't heard from them for a month. After contacting them again the recruiter scheduled me for a phone screening. Just a week after the first phone screening I was scheduled for another one which I took a month later. Both phone screenings lasted exactly 1 hour. On the phone I talked to junior/average Engineers, who asked quite simple questions about Data Structures. After the second interview I was invited for the 1:1 meeting. Again there were some delays in organising the interview and I ended up going to Sydney in January.

I was interviewed by 4 people, with increasing difficulty. The questions weren't too hard, consisting of coding, estimation and design questions. I did struggle in understanding a simple question and ended up spending a lot of time discussing the task. The impression from the interview was good, but two weeks later I got a rejection. No information was provided.

Generally, you need to prepare for the interview in overall. Don't just focus on learning algorithms. Rehearse behavioural parts before going to the 1:1.

Interview Question – Estimate the total storage size of GMAIL   View Answer


2 people found this helpful

No Offer

Positive Experience

Difficult Interview

Software Engineer Interview

Software Engineer
Sydney

I applied online and the process took 3 months - interviewed at Google in April 2011.

Interview Details The interview process usually consists of 2 phone interviews and 4 onsite interviews. Additionally I have done two post onsite phone interviews. The latter interviews were focused on scalability questions and coding skills. The process was quite good. Recruiters were responsive and supportive. Generally Google test three areas: Algorithms, Scalability and Coding. I have got positive feedback on Algorithms and Scalability. The negative part was the Coding skills part.

Interview Questions

  • C++ versus Java.
    Reverse a singly lined list.
      View Answers (2)
  • How to add a counter to www.google.com to track the billionth user.   View Answers (4)
  • You have a 64bit interger counter set to 0. How long it will take to overflow the counter given that you are incrementing it at 4Ghz speed.   View Answers (7)
  • Comparisons of trees and hash tables.
    What are the tradeoffs of using one versus another.
      View Answers (2)
  • Quickly estimate 2^64 without using a pen/papar.   View Answers (7)

No Offer

Negative Experience

Difficult Interview

Software Engineer Interview

Software Engineer
Sydney

I applied through college or university and the process took a day - interviewed at Google in June 2008.

Interview Details There were 3 interviews scheduled in the morning. The flight from Melbourne to Sydney was also booked for the same morning. The flight got delayed and I reached Sydney only at the time the interview was to start. I reached their office which was very difficult to locate as it was on the top floor of a building with IBM on it.
Interviews were doable, but I was exhausted after having woken up really early and not having eaten much in the flight and having had to rush from the airport. First interview was really bad as I had a tough time concentrating. After lunch there were 2 more interviews and I did well in bot of them. But I knew I had blown it with the first one. I didn't know they had a policy of flying people in the previous evening for early morning interviews. Kinda felt cheated.

Interview Questions

  • Reverse the bits in a 32 bit integer. Write C code for that.   View Answer
  • Non programming. The mouse in the maze problem. Shortest paths to reach outside.   Answer Question
  • Given a web system which gets disconnected, how would you debug it. Also where would you add resources to maximise throughput given some constraints.   Answer Question
  • Given a statement which took an integer, incremented it by 1 and then branched to another location which you provide, implement addition of two numbers multiplication, etc using just that statement (or command).   Answer Question

63 people found this helpful

Accepted Offer

Positive Experience

Difficult Interview

Software Engineer Interview

Software Engineer
Mountain View, CA (US)

I applied through an employee referral and the process took 4 weeks - interviewed at Google in April 2014.

Interview Details Direct onsite because I interviewed in the past and did well that time. From the time I sent my resume to interview day: 2 weeks. From interview day to offer over the phone: 2 weeks.

The syllabus for the interviews is very clear and simple:
1) Dynamic Programming
2) Super recursion (permutation, combination,...2^n, m^n, n!...etc. type of program. (NP hard, NP programs)
3) Probability related programs
4) Graphs: BFS/DFS are usually enough
5) All basic data structures from Arrays/Lists to circular queues, BSTs, Hash tables, B-Trees, and Red-Black trees, and all basic algorithms like sorting, binary search, median,...
6) Problem solving ability at a level similar to TopCoder Division 1, 250 points. If you can consistently solve these, then you are almost sure to get in with 2-weeks brush up.
7) Review all old interview questions in Glassdoor to get a feel. If you can solve 95% of them at home (including coding them up quickly and testing them out in a debugger + editor setup), you are in good shape.
8) Practice coding--write often and write a lot. If you can think of a solution, you should be able to code it easily...without much thought.
9) Very good to have for design interview: distributed systems knowledge and practical experience.
10) Good understanding of basic discrete math, computer architecture, basic math.
11) Coursera courses and assignments give a lot of what you need to know.
12) Note that all the above except the first 2 are useful in "real life" programming too!

Interview 1:
Graph related question and super recursion

Interview 2:
Design discussion involving a distributed system with writes/reads going on at different sites in parallel.

Interview 3:
Array and Tree related questions

Interview 4:
Designing a simple class to do something. Not hard, but not easy either. You need to know basic data structures very well to consider different designs and trade-offs.

Interview 5:
Dynamic programming,
Computer architecture and low level perf. enhancement question which requires knowledge of Trees, binary search, etc.

At the end, I wasn't tired and rather enjoyed the discussions. I think the key was long term preparation and time spent doing topcoder for several years (on and off as I enjoy solving the problems).

Conclusion: "It's not the best who win the race; it's the best prepared who win it."

Negotiation Details – You can and should negotiate politely. You are in a stronger position if you have another offer, but even otherwise, you should ask for more of every type of payment!


23 people found this helpful

Accepted Offer

Positive Experience

Difficult Interview

Software Engineer Interview

Software Engineer
Mountain View, CA (US)

I applied through a recruiter and the process took 4 months - interviewed at Google in March 2014.

Interview Details I was not looking to switch jobs, but I was contacted out of the blue by a recruiter on LinkedIn. I was happy with my job that I held with the same company since college graduation (10 years). However, I decided to give Google a shot. If anything it would probably teach me something about myself.

The recruiter set up a phone interview for roughly 1 month later. I apparently did well as the recruiter contacted me about 2 hours after the interview to say I passed. I was forwarded off to a recruiter in Mountain View that set up an on-site interview for about 1.5 months later. I'm sure the time frames here could have been quicker, but for each step I wanted time to study.

During the on-site interview, I met with 5 different engineers (4 where feedback was taken and 1 lunch interview). Each interview lasted between 45 minutes and 1 hour. I interviewed with members from 2 specific teams, the potential ones I would be joining if offered a position. Despite the fact the lunch interview was not supposed to count, I was told that the lunch interviewer was instrumental in getting me hired.

It took quite a long time after the on-site interview until I received an offer. It took 2 weeks to collect interview feedback and 1 week to get the go-ahead to put me through the hiring committee. It took 2 weeks to go through the hiring committee and an additional week to go through the executive committee. At that point I had an offer, but it took another day or two to negotiate the details. I initially wanted to decline the offer since I was leery of moving my family, but the recruiter gave me the weekend to think about it.

I verbally accepted after the weekend. It took another two days to choose a relocation package and 1 more day to receive a formal offer letter which I electronically signed.

I hope I made the right choice! I am worried that I took a step or two down in responsibility, but the compensation was a little bit better than what I was making even cost-of-living adjusted. If anything I'll have an interesting experience to talk about and Google on my resume.

Interview Question – However, I received 2 different dynamic programming problems which I didn't expect and I found to be quite difficult. 3 of the interviewers had me do whiteboard work but only 1 of them actually had me do any coding, which was a basic singly linked list type problem.   Answer Question

Negotiation Details – I negotiated an additional $8K in base salary and an additional $5K signing bonus. Google would not budge on the RSU, though.


10 people found this helpful

Accepted Offer

Neutral Experience

Software Engineer Interview

Software Engineer

Interviewed at Google

Interview Details I am student at IIT Guwahati and take up Google interview. Total 5 rounds held prior final HR round and finally got selected for Google US. The final evaluation was done by google US. The questions are mostly algorithmic

Worked for Google? Contribute to the Community!

The difficulty rating is the average interview difficulty rating across all interview candidates.

The interview experience is the percentage of all interview candidates who said that their interview experience was positive, neutral or negative.

Your response will be removed from the review – this cannot be undone.