Skip to contentSkip to footer
  • Community
  • Jobs
  • Companies
  • Salaries
  • For employers
      Notifications

      Loading...

      Elevate your career

      Discover your earning potential, land dream jobs, and share work-life insights anonymously.

      employer cover photo
      employer logo
      employer logo

      Google

      Engaged employer

      About
      Reviews
      Pay and benefits
      Jobs
      Interviews
      Interviews
      Related searches: Google reviews | Google jobs | Google salaries | Google benefits | Google conversations
      Google interviewsGoogle Software Engineer interviewsGoogle interview


      Glassdoor

      • About / Press
      • Awards
      • Blog
      • Research
      • Contact Us
      • Guides

      Employers

      • Free Employer Account
      • Employer Centre
      • Employers Blog

      Information

      • Help
      • Guidelines
      • Terms of Use
      • Privacy and Ad Choices
      • Do Not Sell Or Share My Information
      • Cookie Consent Tool
      • Security

      Work With Us

      • Advertisers
      • Careers
      Download the App

      • Browse by:
      • Companies
      • Jobs
      • Locations
      • Communities
      • Recent posts

      Copyright © 2008-2026. Glassdoor LLC. "Glassdoor," "Worklife Pro," "Bowls" and logo are proprietary trademarks of Glassdoor LLC.

      Company Bowl sample

      Want the inside scoop on your own company?

      Check out your Company Bowl for anonymous work chats.

      Bowls

      Get actionable career advice tailored to you by joining more bowls.

      Followed companies

      Stay ahead in opportunities and insider tips by following your dream companies.

      Job searches

      Get personalised job recommendations and updates by starting your searches.

      Software Engineer Interview

      Feb 16, 2014
      Anonymous interview candidate
      Mountain View, CA
      No offer
      Average interview

      Application

      I applied online. I interviewed at Google (Mountain View, CA)

      Interview

      Applied for Google Software Engineer position online. Recruiter contacted me within a week to set-up a phone interview. The phone screen was scheduled within week. The interviewer asked about various data structures and general computer science concepts. Asked me several questions about queues, and heaps. After that two programming questions: 1) traverse array in a spiral order. 2) check if directed graph contains a cycle. in 2 weeks I was contacted to set up on-site interview. I asked to schedule interview 3 weeks later, so I could prepare for it. There were 4 technical interviews onsite, one lunch interview (just informal talk with some guy from Google glass department), and lastly PhD dissertation discussion. First question was in-order traversal of BST. I wrote the code. Then asked me two check if two different BSTs have same inorder traversal. I suggested to store first inorder traversal into vector, and while traversing second BST check if the element values match. I also started suggesting using linked list, or modified recursive approach, but he said to make life easy and go with the simple solution. Second interviewer gave me array, with elements first strictly increasing, then strictly decreasing. Asked me to find the largest number. I suggested to use binary search. O(logN) time complexity, with no additional space required. After implementing the code he asked another question. Given infinite doubly linked list, and separate list of elements, which are linked to some linked list elements. Find out from the list of elements how many neighboring groups are formed. I suggested to use Hashtable, to make look-up process quick, and traverse the elements and check if they are neighboring elements. O(N) time and space complexity. Implemented the code, and time ran out to test if with different cases. Third interview was the weirdest. The guy had thick accent and from the beginning became apparent communication was an issue. He gave me system design question: Observer class has three methods AddObserver(), RemoveObserver(), NotifyAllObservers(). After asking some clarification questions, I suggested to use doubly linked list to keep track of all observers, and hash table to look-up the individual observer. Then he asked to implement three methods. After implementing the code in JAVA he told me the program would not work. Apparently the Observer was designed for Chrome browser. He went into details when user clicks on mouse and then key-press is released. I responded the initial question was very vague and asked for more clarification and precise requirements. I suggested what I would change to go around the problem, but time ran out and didn't get a chance to modify the code on whiteboard. After that I had lunch and came back for fourth technical interview. Fourth interview: the guy told me to add two numbers in base 3 system. The input: two base 3 streams provided as String. function should return sum of the two numbers also in String format as base 3 stream. I suggested to convert from base 3 into base 10, add numbers and convert back to base 3. I know how to add two (base 2) binary streams without conversion, since I was under the time pressure I went easy way. I implemented conversion from base 3 to base 10. The interviewer said he was satisfied and wanted me to solve another problem. He gave me file size, and asked me to partition file into chunks, so that each chunk size is power of two, and the number of chunks is minimal. I suggested to find the nearest power of two and obtain absolute value of difference between the original file size, and nearest power of two. Then re-apply the process until reminder is power of two (1 is 2^0). There was time pressure, so didn't have time for analysis, just implemented and turned in the code. Last interview was PhD dissertation discussion. It went alright. Most interviews went ok, except the 3rd one, during which I had hard time communicating. Within a week recruiter emailed me saying hiring committee didn't want to move forward with hiring.

      Interview questions [1]

      Question 1

      I didn't feel any of the questions were difficult, I haven't been stuck at any point, but apparently that wasn't enough. I also had chance to look up online the most optimal answers to the questions I was asked. To be honest there is very little I would have changed in my responses.
      Answer question
      16

      Other Software Engineer interview reviews for Google

      Software Engineer Interview

      May 4, 2014
      Anonymous employee
      Auburndale, FL
      Accepted offer
      Positive experience
      Difficult interview

      Application

      I applied through an employee referral. I interviewed at Google (Auburndale, FL) in Apr 2014

      Interview

      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."
      2501

      Software Engineer Interview

      Jun 23, 2026
      Anonymous interview candidate
      No offer
      Positive experience
      Difficult interview

      Application

      I interviewed at Google

      Interview

      2 rounds of interviews with the first round being a technical and a behaverial. The second round being two technicals. The format was straight forward and the interviewer was professional.

      Interview questions [1]

      Question 1

      Talk about how you resolve a conflict.
      Answer question

      Software Engineer Interview

      Jun 24, 2026
      Anonymous interview candidate
      No offer
      Neutral experience
      Average interview

      Application

      I interviewed at Google

      Interview

      There was a technical screen within their coding platform, followed by a first-round technical interview, followed by a first-round behavioral interview, followed by second-round interviews, both technical and behavioral interviews.

      Interview questions [1]

      Question 1

      What was your role on a technical project you've worked on?
      Answer question