Recently I had the opportunity to get interviewed at Google's New York office. The interview lasted for 4.5 hours. I was quizzed by four employees for about 50 minutes each. Questions ranged from mathematics, writing code, past projects and large scale system design. I also had an hour long lunch at Google's cafeteria. During lunch, a Google engineer joined me. Unlike other interviewers, he does not get to enter feedback about me. This is intended as a venue for getting to know more about the life at Google. I learned that the average team size is about 5. Infrastructure teams that work on BigTable and Colossus could range up to 20 engineers but this is the exception rather than the norm. Each team has leeway in deciding the appropriate software methodology.
For prospective interviewees, I will recommend Gayle Laakmann's "Cracking the Coding Interview".
While the interviews were exhilarating, they weren't nearly as top-notch as I expected them to be. Also the Google office was a bit of a downer. Apparently each room is shared by four to six employees. Although the idea is to encourage co-operation between team members, this seems to fly in the face of prevalent knowledge. Even if nothing comes out of the interview, I gained some perspective on my job. The grass always looks greener on the other side. While I may not work at Google, our offices are world class :).