I participated in two phone interviews. I did not clear the second phone interview, so I can't speak for the rest of the interview process.
Each phone interview was accompanied by a Google Doc where you typed in your code.
In the first phone interview:
In the second phone interview, I was asked two technical questions.
In three of the four questions, I was asked to walk them through some test cases after writing the code.
Implement a class that can calculate the running average of a stream of input numbers up to a maximum of N numbers.
Implement string rotateString(string input, int amt).
Implement int strncmp(const char* s1, const char* s2, int n).
Implement a function that takes the set-wise subtraction of two sorted sets of integers. For example:
A = {1, 2, 3}, B = {3, 4, 5} => A - B = {1, 2}.
There can be duplicates. If duplicates exist, all duplicates should be removed if there is an occurrence in B. For example:
{1, 2, 3, 3, 3} - {2, 3} = {1}.
The following metrics were computed from 3,728 interview experiences for the Google Software Engineer role in United States.
Google's interview process for their Software Engineer roles in the United States is extremely selective, failing the vast majority of engineers.
Candidates reported having very good feelings for Google's Software Engineer interview process in United States.