Google (Senior) Software Engineer interview questions
based on 359 ratings - Updated Jun 21, 2026
Difficultinterview difficulty
Mostly positiveinterview experience
How others got an interview
44%
Applied online
Applied online
31%
Recruiter
Recruiter
17%
Employee Referral
Employee Referral
3%
In Person
In Person
2%
Campus Recruiting
Campus Recruiting
2%
Other
Other
1%
Staffing Agency
Staffing Agency
Interview search
359 interviews
Viewing 271 - 275 of 359 Interviews
Google interviews FAQs
Candidates applying for (Senior) Software Engineer roles take an average of 30 days to get hired, when considering 1 user submitted interviews for this role. To compare, the hiring process at Google overall takes an average of 39 days.
Here are the most commonly searched roles for interview reports -
I applied through an employee referral. I interviewed at Google (Mountain View, CA) in Sep 2013
Interview
Bit of round-and-round on finding an appropriate time to interview, despite my being flexible.
Once at Google, which I knew fairly well from having multiple friends working there, it was a straightforward process of sitting in a conference room, and having multiple interviewers come and ask questions.
Interview questions [1]
Question 1
You are given two image files. How would you go about determining if they are the same image?
I applied through a recruiter. The process took 3 weeks. I interviewed at Google (Mountain View, CA) in Feb 2017
Interview
Went onsite with Mountain View campus for position in google cloud division. Total 5 interviewers. Not sure how they selected the interviewers - end up 3 interviewers asking distributed system questions. One scheduled interviewer did not show up, so a replacement guy showed up with very little preparation. Another interviewer came from hardware group which is surprising (I am not a hardware guy, and the interviewer did not get to any kernel level question as well). They seem to have quite different background as I do, making the interview process somewhat out of synergy. It became an awkward process.
I applied online. The process took 2 months. I interviewed at Google (Mountain View, CA) in Feb 2017
Interview
Round 1: a recruiter calls you. They will ask you a few simple questions. Things such as "what's faster, quicksort or bubblesort". If you answer enough of these correctly, you get to the next round. If you fail here: stop moaning, go away and go improve yourself, there is no way you would have passed the later stages anyway.
Round 2: an engineer will call you, and interview you for 45 minutes. Only the "best" interviewers get to do what we call "first phone screens" because that's where the most people get kicked out.
Round 3: exactly the same as round 2, but with a different engineer. From the interviewer's perspective, second phone screens are infinitely better than first phone screens, because the totally incompetent have been weeded out already.
Round4: onsite interviews! you will have 3 interviews of 45 minutes, lunch, and 2 more interviews. These are basically the same as phone screens, but you get to see the interviewers face to face.
Interview questions [1]
Question 1
Imagine you are given 10,000 files each containing 1 Million integers. I would you sum all of them and give the final result?
---> Interviewer wanted to test scalability, distributed concepts.
He has written the basic code and wanted to improve upon that.
Here's the basic code.
public getSum(String[] file_names) {
int sum = 0;
for(String f: file_names) {
sum = sum + sumOfFile(f);
}
return sum;
}
Questions:
What's wrong with above code? Ans: Integer overflow
How would you implement sumOfFile?
What if 'sumOfFile' takes lot of time to finish computing?
How do you fasten the program?