I only had two phone interviews.
The first one was fairly easy:
The second one was a coding problem.
You are given an n by n array filled with '0's, and you have to set randomly X number of '1's in that array.
Looping and generating X random numbers doesn't work as you might get the same random number. Collisions will become more likely, especially as X gets closer to n*n. In such cases, you'll loop for a very long time before filling all the '1's.
All positions must have the same probability of being selected, and the array might be huge.
The following metrics were computed from 3,820 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.