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

Google Software Engineer Interview Questions & Reviews

Updated Apr 10, 2014
All Interviews Received Offers

Getting the Interview 

34%
21%
16%

Interview Experience 

45%
35%
18%

Interview Difficulty 

795 candidate interviews Back to all interview questions
Relevance Date Difficulty
in
88 people found this helpful

No Offer

Positive Experience

Easy Interview

Software Engineer Interview

Software Engineer
Mountain View, CA

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

8 people found this helpful

Accepted Offer

Positive Experience

Difficult Interview

Software Engineer Interview

Anonymous Employee
Los Angeles, CA

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 Answer

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

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.   Answer Question

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

We want your feedback – Is this interview information helpful to you?  Yes | No

No Offer

Neutral Experience

Average Interview

Software Engineer Interview

Anonymous Interview Candidate

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

Interview Details – I was contacted by a recruiter from Google. We then arranged a time for a phone interview. Basically talked about my background and he then introduced google working environment and advantages. He then arranged a phone screen for me after half a month. The questions on the phone screen are not difficult, but very tricky. You need to be very familiar with algorithms and data structure, and also be very experienced to code with your most preferred language. The materials sent by the recruiter is very helpful. I was graduating during the time, so I didn't have enough time to practice coding. I didn't pass it.

Interview Question – Design a cache with O(1) search time and delete time.   View Answer

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

Declined Offer

Neutral Experience

Software Engineer Interview

Anonymous Interview Candidate

Interviewed at Google

Interview Details – 4 45min interviews done in one day, most of which was technical. One interview was dedicated to non technical stuff but all others were pretty much 95% technical.

Interview Question – Asking about performance complexity of items.   Answer Question

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

No Offer

Positive Experience

Average Interview

Software Engineer Interview

Anonymous Interview Candidate

Interviewed at Google

Interview Details – Had initial contact from a recruiter over email, had a short 20 minute phone conversation where recruiter asked about my professional background and asked me to rate myself in a few technical areas, then asked some trivia questions. We scheduled a phone interview a few weeks later. Interview took about 45 minutes with 10 minutes at the end to clean up code and then ask questions to the interviewer. Interview was a success, scheduled a second phone interview in another couple weeks.

Interview Question – Code was done in Python on a Google Docs document. First weeder question was implementing binary search. Next question was about text processing and after the initial solution was given, additional constraints were added to encourage me to make a better solution.   View Answer

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

No Offer

Neutral Experience

Software Engineer Interview

Anonymous Interview Candidate

Interviewed at Google

Interview Details – I submitted my CV online and and was contacted by a recruiter. After communicating with the recruiter a technical phone interview was scheduled with a coding session via a shared Google doc. Following the phone interview a follow second technical phone interview was scheduled. Google decided not to proceed after the second interview.

Interview Question – The coding questions weren't particularly difficult, however they were very open ended. This means discussing your thoughts out loud as you progress through the question is the most important factor.   Answer Question

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

1 person found this helpful

No Offer

Neutral Experience

Software Engineer Interview

Anonymous Interview Candidate

Interviewed at Google

Interview Details – Got an phone interview from Google. The interviewer was very good, and the question was not that hard. However, I took too many time to figure out the first question, and not remaining much time for the 2nd question. The interview takes 45 minutes. For each interviewee, it should take 20~25 minutes to tackle the problem and during the process, discuss with the interviewer.

Interview Questions

  • Merge sorted, non-overlapping list of intervals with another interval [(1,3), (5,10), (12,30)] + (9,31) = [(1,3), (5,31)]   View Answer
  • Implement a system so that the billionth search query at Google each day wins a car.   Answer Question

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

1 person found this helpful

No Offer

Positive Experience

Difficult Interview

Software Engineer Interview

Anonymous Interview Candidate
Mountain View, CA

I applied online and the process took 2 months - interviewed at Google in November 2013.

Interview Details – I had one phone interview followed by 5 on site interviews.

Interview Question – The phone interview was relatively easy , standard text book questions.
2 out of 5 on site interviews were questions that dealt with design and problem solving.
3 of them were about dynamic programming , memory management and data structures .
Very good and insightful experience, highly recommend applying to google to get a better sense of where you are as a junior engineer and also see the campus.
  Answer Question

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

No Offer

Neutral Experience

Difficult Interview

Software Engineer Interview

Anonymous Interview Candidate
Mountain View, CA

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

Interview Details – Having worked as a contractor at Google I got to skip phone interviews, so this was 5 on-site interviews. All were 45mins long; I never completed more than 2 questions, once I didn't complete even 1. They were all algorithms barring the last which was system design, and nothing too crazy. I will say that I got no dynamic programming questions, or at least, I was not able to extract DP versions of what I came up with in the given time. Only two were of what I expected to be Google-level difficulty (the two I didn't finish), but it's possible that I just took too long on the easy ones to get to the harder ones, in those interviews. One corrective to what I've read in Gayle Laakmann's book and her quora answer, is that nobody seemed particularly interested in the details / format of code, they were far more interested in the gist, the logic. But, most took pictures of the whiteboard, so perhaps they nit-picked later. One other thing, a trainee accompanied one interview, and offered a suggestion. So, interview trainees do speak up, unlike what I understood. One nice thing is that, if you're struggling, interviewers will jump in with hints, which, even if you ultimately fail, keeps the silence from being awkward, and makes the interview more comfortable.

There were no 'personal', or behavioral questions (like 'what was your hardest bug?') - perhaps if I'd run to the end of the algorithms :). I've chosen 'no offer' below, but I don't actually know yet - I reckon my chances are < 30%.

Interview Question – No questions from me, I signed statement saying that I wouldn't. Though, I have benefitted from other peoples' breaking their promises.   Answer Question

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 that said 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 795 interview reviews posted anonymously by Google employees and interview candidates.