Google Software Engineer Interview Questions | Glassdoor

Google Software Engineer Interview Questions

Interviews at Google

3,225 Interview Reviews

Experience

Experience
62%
25%
13%

Getting an Interview

Getting an Interview
36%
29%
21%
11
2
1
0

Difficulty

3.4
Average

Difficulty

Hard
Average
Easy

 

Software Engineer Interview

Anonymous Interview Candidate in Mountain View, CA
No Offer
Positive Experience
Easy Interview

Application

I applied through a recruiter. The process took a week. I interviewed at Google (Mountain View, CA) in January 2010.

Interview

I contacted a recruiter I found online. He scheduled a phone interview for me. The interview consisted of few questions on Java and an algorithm question. I was asked to write a function to find an intersection from 2 sorted arrays. And the interview ended. With little more practice one can crack the interview easily. "Programming interview exposed" book really helps you prepare for the interview.

Interview Questions

  • Write a function to find intersection of 2 sorted arrays.   3 Answers

Other Interview Reviews for Google

  1.  

    Software Engineer Interview

    Anonymous Interview Candidate in Mountain View, CA
    No Offer
    Neutral Experience
    Average Interview

    Application

    I applied through a recruiter. The process took 1 day. I interviewed at Google (Mountain View, CA) in January 2008.

    Interview

    5 people interviewed. had group lunch together in a different building.
    asked both algo and programming questions.
    asked lots of related technical questions, systems related.
    people interview you may be quite random too.
    large company with lots of groups now. hard to find the right project
    has high expectation for senior people. They rejected for this reason.

    Interview Questions


  2. Helpful (1)  

    Software Engineer Interview

    Anonymous Interview Candidate in New York, NY
    No Offer
    Positive Experience
    Difficult Interview

    Application

    I applied through an employee referral. The process took 3+ months. I interviewed at Google (New York, NY) in January 2010.

    Interview

    Recruiter was main point of contact. Processed resume/experience and setup interviews.

    Two 45 minute technical phone interviews spaced about 3 hours apart. Asked about entries on resume and previous work experience. Then some problem solving questions, and finally some algorithms question. One included coding on a collaborative document on Google docs. Both asked time complexity related questions.

    Few weeks later, scheduled 3 on site interviews and lunch. Each 45mins-1hour long. Questions here were more focused, mainly picking a topic and sticking with it. No time complexity, but quite a bit of coding. Some questions on statistics, many on data structures, some on API design.

    Overall had a great time. The engineers I talked with were intelligent and fun. In the end I think it was a few poor answers during the phone screen that prevented any offer, but a good experience overall.

    Interview Questions

    • Given a stream of integers of unknown (possibly large) length, how would you pick one at random? Now prove its random.   6 Answers
    • Define binary search tree. Develop a procedure to verify a binary search tree.   6 Answers
  3.  

    Software Engineer Interview

    Anonymous Interview Candidate in Fairfax, VA
    No Offer
    Neutral Experience
    Easy Interview

    Application

    I applied online. The process took 1+ week. I interviewed at Google (Fairfax, VA) in February 2010.

    Interview

    It was the first round phone interview. Nothing special. An Indian interviewer. Nice but hard to understand.

    Questions were a lot of basic concepts, OO, DB, OS, Networking... all inclusive...

    Google doc coding was easy. But I only had at most 5 minutes to code. Finally he asked the Order complexity.

    Easy first round screening interview. I'll keep my fingers crossed.

    Interview Questions

    • DB questions like normal forms, inner join and outer join concepts, which I didn't prepare at all.

      Be prepared!   Answer Question

  4.  

    Software Engineer Interview

    Anonymous Interview Candidate in Mountain View, CA
    No Offer
    Neutral Experience
    Average Interview

    Application

    I applied through an employee referral. The process took 2+ weeks. I interviewed at Google (Mountain View, CA) in January 2010.

    Interview

    I got an interview request from internal referral. The process was clear initially, the recruiter explained how the recruiting process will go. After we begin the process, there were few hiccups in the communication between recruiter and me. It seemed that they were too busy and some email was missed or not answered. But overall it was a OK experience.

    Interview Questions

    • What cool things did you do in your previous job. Basically the interviewer wants to know if there can be a good fit between me and the team.   Answer Question

  5. Helpful (2)  

    Software Engineer Interview

    Anonymous Interview Candidate in Pittsburgh, PA
    Declined Offer
    Positive Experience
    Difficult Interview

    Application

    I applied online. The process took 3+ months. I interviewed at Google (Pittsburgh, PA) in December 2009.

    Interview

    Applied for the position online. HR contacted to schedule telephone interview. I asked for 3 weeks time. HR sent some general information on how to prepare for interviews. "Programming interviews exposed" and tutorials on topcoders.com were included in the reference material. The telephone interview was 1 hr long. There were three questions. Towards the end the interviewer asked me to code the algorithm for the last question. There was not much time left. On site interview was scheduled about 1.5 months latter. There were 5 1-on-1 interviews and a lunch interview. 4 out of 5 interviews involved writing code on the board. The last interview was general discussion on how to design a solution for a distributed system that the interviewer explained.

    Interview Questions

    Reasons for Declining

    They offered me Software engineer position in Site Reliability Engineering (SRE). My personal interest is in working on product development. Moreover the compensation package is below average. It is below 25 percentile mark as per salary.com


  6. Helpful (1)  

    Software Engineer Interview

    Anonymous Interview Candidate in New York, NY
    No Offer
    Positive Experience
    Difficult Interview

    Application

    The process took 2 weeks. I interviewed at Google (New York, NY) in December 2009.

    Interview

    Two phone interviews. Both people were nice, but the technical guy was a little awkward. First was with the recruiter to talk about their opportunities and to make sure there was a slot I might fit in. Second one was about an hour technical screen that consisted mainly of two technical problems - one was easy, the other was difficult. The recruiter called me back a few days later to say that while I had done well on the technical problems, after reviewing my resume they determined there weren't any compatible open slots and to re-apply in a few months to see what was available.

    Interview Questions

    • You're given a binary tree and pointers to two nodes in the tree. Describe the fastest algorithm you can come up with to determine the closest common ancestor.   4 Answers
    • You're writing an application that receives a stream of individual items of data. The stream may be very long or very short, but you have no way of knowing how long it is (i.e. there's no trick to figuring out the size of the stream of data). How would you go about choosing m items such that any subset of m items was equally likely? (Not an even distribution of values, but just that any m items are equally likely to be chosen). So for example, m=1000, and the number of items in the stream, n, may be 1000, or 10000, or 100000000, or much much larger; there is no way to know how many.   4 Answers

  7. Helpful (1)  

    Software Engineer Interview

    Anonymous Interview Candidate in Mountain View, CA
    No Offer
    Positive Experience
    Difficult Interview

    Application

    I applied through a recruiter. The process took 4 weeks. I interviewed at Google (Mountain View, CA) in December 2009.

    Interview

    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, and then we did 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. The onsite interview was 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 run time and/or memory requirements of my solution. I got performance anxiety towards the end of the day, and performed poorly on two of the interviews, in which 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, I got a call back from the recruiter who notified me that Google was declining to give me an offer, but because I had excellent personal recommendations and very good feedback from most of my interviewers, that I should re-apply in 12 to 18 months.

    Interview Questions

    • Design a system to find all Googlewhacks and analyze its efficiency in terms of memory, storage, and run time, and its scalability characteristics.   Answer Question
  8.  

    Software Engineer Interview

    Anonymous Interview Candidate in Mountain View, CA
    No Offer
    Positive Experience
    Difficult Interview

    Application

    I applied through a recruiter. The process took 5 days. I interviewed at Google (Mountain View, CA) in February 2010.

    Interview

    I was contacted by the recruiter via LinkedIn. After a few initial hiccups, the recruiter called me directly and after a brief chat, asked for my resume. I received a questionnaire about my skills, experience and interests after that. The recruiter also sent me great tips on what to prepare for the interview and what would be expected. He then scheduled a phone interview based on my availability.
    The interview was good too. The questions were interesting which tested my algorithm and data structure skills. I thought I had done a decent job. However, I got a call from the recruiter a couple of days later (which I appreciated) that they had decided to not go further based on my background (which was frustrating).

    Interview Questions

    • What was the most challenging issue/bug you came across and how did you resolve it?   Answer Question

  9.  

    Software Engineer Interview

    Anonymous Interview Candidate in Mountain View, CA
    No Offer
    Neutral Experience
    Difficult Interview

    Application

    I applied online. The process took 2 days. I interviewed at Google (Mountain View, CA) in November 2009.

    Interview

    Initially was contacted by HR to go over some basic points on my resume and to setup a techinical interview.

    The person I spoke with on the phone seemed a little resentful that everything was provided by Google for Google employees because it was very difficult to not spend a lot of time at work. Everyone working at Google is very bright according to him and most worked very hard so it sounded like the balance between work and life was a little off. If coding is your passion then it sounds like Google takes care of the rest.

    The lady from HR seemed rather more upbeat and enjoyed the people she worked with.

    Interview Questions

    • Easier questions

      1) Two variations of a program exist, A and B. When run on machine 1, A runs
      twice as fast as B. When run on machine 2, A runs 10x as fast as B. How would
      you investigate this?

      -same datasets
      -same versions of OS and libraries
      -same hardware

      2) Had to code a method that calculated the factorial, first simply, then a second one recursively.   3 Answers
    • trickier question, code a method given the following method signature that will print out any numbers that intersect both arrays of numbers

      //Example arrays
      // 4, 18, 25, 40, 411
      // 20, 25, 40, 320, 1009, 1100

      void intersect(int[] arr1, int len1, int[] arr2, int len2) {   5 Answers

See What Google Employees Are Saying

StarStarStarStarStar   Former Program Manager in Kansas City, MO

Pros: “Co-workers in local office were great to work with. Work was challenging yet fulfilling. Pay and benefits were very good.”“Co-workers in local office were great to work with. Work was challenging yet fulfilling. Pay and benefits were very good.” – Full Review

Don't Miss Out On a Job You Love
Upload a resume to easily apply to jobs from anywhere. It's simple to set up.