I was contacted by the recruiter the same day my friend referred my resume. Since I had previously applied, the recruiter let me skip the phone interview. They brought me on-site one week later and I met with six different interviewers (two of them were a joint interview). Most of the questions were pretty standard - I had prepared from the book "Programming Pearls" by Jon Bentley as well as www.careercup.com. There were strictly technical questions - no annoying brainteasers (thankfully). A few interviewers asked me to analyze my own algorithms I came up with and suggest any better possible things. Heaps and trees stood out as the most important data structures. The design question was open ended, and it was one of the questions from the CareerCup site so I wasn't caught off guard.
Afterwards it took about 2 weeks to receive an offer, but the recruiter was good about keeping in touch and kept me updated as my application passed through the local hiring committee then the executive committee. Given Google's reputation for bad hiring process, I was surprised that it took only 3 weeks from beginning to end.