Google
4.2 of 5 2,101 reviews
www.google.com Mountain View, CA 5000+ Employees

Google Software Engineer Interview Questions & Reviews

Updated Apr 16, 2014
All Interviews Received Offers

Getting the Interview 

34%
21%
16%

Interview Experience 

45%
35%
18%

Interview Difficulty 

800 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 Answer

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

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.

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

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 (10)

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

No Offer

Positive Experience

Very Difficult Interview

Software Engineer Interview

Anonymous Interview Candidate
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)

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

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

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

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 Answer
  • Quickly estimate 2^64 without using a pen/papar.   View Answers (7)
Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

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
Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

89 people found this helpful

No Offer

Positive Experience

Easy Interview

Software Engineer Interview

Software Engineer
Mountain View, CA (US)

I applied through an employee referral and the process took 5 days - interviewed at Google in September 2013.

Interview Details Round 1:

1. Explain and Write KnapSack Algo with Memorization
2. Given a undirected graph, clone it. Now if the undirected graph has the neighbors with the nodes as same data - how do you make sure you create the exact same branches and also how do you make sure you don't run into loops for the exact node. He gave a empty directed graph and asked me write code after that.
3. Given two Btrees. these trees "may" have right and left branches swapped. Now compare it.

Round 2:
1. Given a N different open and close braces in a string "( { [ } ] )". How do you check whether the string has matching braces.
2. Given a unsorted array. Create a balanced BTREE
3. Print a tree like (Parent ( leftchild (leftchild, rightchild), rightchild(leftchild,rightchild) ) )

Round 3:
Given a kernal code in "0"th machine. How soon you can replicate the kernal across N machines. Now if the machines has upload and download bandwidth constraints, how can you impove the copy time.

Round 4:
1. Design Short URL.
2. Given a List with duplicate Strings, how do you remove duplicate Strings

Round 5:
1. How do you design a Maze and what kind of data structures you use for Maze.
2. Now print the shorted path from start to end point.

Interview Question – For future applicants, you need to get all rounds straight. I kind of flunked 3rd round.   View Answers (5)

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

10 people found this helpful

Accepted Offer

Positive Experience

Difficult Interview

Software Engineer Interview

Anonymous Employee
Los Angeles, CA (US)

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

Interview Details I was first contacted by a recruiter. He emailed me out of the blue, and said he really liked my github profile.

Honestly, at first, I didn't believe it was real. We emailed back and forth a few times, but I wasn't really looking to moving to the Bay Area, so I never actually sent in my CV.

About a month goes by, and he emails me back. He just wanted to follow up. Said that he never received the resume, and hoped I would get back in touch. So I told him about my situation, and he mentioned that they had an LA office. This was news to me, and much closer to home. So I sent in my resume, and he connected me to a recruiter who was closer to me.

All in all, I talked with about 4 different people in recruiting. All of them were incredibly nice and helpful. My first "interview" was with the second recruiter. It was really just getting to know me, what my interests were, and trying to get a feel for my fit with the company.

After that interview, we scheduled a technical phone interview. Gave me to weeks to study up. Lots of review material was sent my way, which was awesome. Ended up reading my algorithms text book again, it was quite a nice read, but I don't believe I would have done poorly on the phone interview, even had I not read it. The tips/references they sent to me were extremely helpful. They sent me Titles/Authors of some amazing books, I recommend reading them even if you aren't interviewing with Google.

After passing the phone interview, we had an on-site scheduled about a week later. This was much harder than the phone interview. I get the idea that the phone was just to weed out the weaker candidates. The on-site consisted of 5 one-on-one interviews, plus one lunch "interview" where I was able to ask all of my questions. All of them were about 45 minutes each.

Every interviewer I talked to was very interesting, and we always had something in common to talk about. The questions were all very interesting problems. There was one point in one of the questions where one of the interviewers put a star next to a line I wrote to remind him to go back and follow up on a comment I made that sounded interesting. I enjoyed the interviews, because it felt like I was back in college, talking to my peers about fascinating problems.

There were one or two interviews that I feel I didn't do so hot on. I only managed to get through one of the questions on two of the interviews. However, I figured they really just wanted to see how I approached the problems, so I made sure to explain myself very thoroughly.

Interview Question – I can't go into details about the problems. But I wish I had studied my graph algorithms a little more closely.

Make sure you know your big-O algorithm classifications. Almost every interviewer asked me something to do with that.
  View Answers (2)

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response

3 people found this helpful

No Offer

Neutral Experience

Software Engineer Interview

Anonymous Interview Candidate

I applied online and the process took 2+ weeks - interviewed at Google.

Interview Details First, a person will contact you to arrange time for the interview. For internship, I have two 1-hour phone interviews in the same day. It'd better to have at least 2 weeks to prepare after you get the contact from Google. Also the phone signal might be bad so be prepared to have alternative way to contact. The first question is about bitwise operation. Study from Cracking the Interviews might help.

Interview Question – Design a class where you can add elements, and return the mean of the latest N elements.   View Answer

Was this interview helpful?  
Yes | No
Flag Interview  |  Add Employer Response
RSS Feed Embed
Interviews for Top Jobs at Google

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.

Glassdoor is your free inside look at Google Software Engineer interview questions and advice. All 800 interview reviews posted anonymously by Google employees and interview candidates.