I was contacted by a recruiter for a position with an interesting team within this company, and so I decided to explore it. It was a pretty typical interview process - one or two initial phone screens (both technical and HR) followed by a heavy technical on-site all-day interview.
The phone screens
The initial phone screens were quite straightforward. A few HR questions followed by some technical questions. I had two phone screens and both times, the interviewers left me with homework to do (i.e. code out my solution and send it to them).
The technical on-site interview
I think this is pretty typical for all-day on-sites, but my day started at 8:30am and I interviewed straight until 6:30pm (10 hours, minus half an hour for lunch). I saw 8 people in total, interviewing for anywhere from 30 minutes to 90 minutes each. The questions ranged from simple logic, to hardcore graph and dynamic programming algos, and even some math and graphics questions. Again, though, at the end of the day, I had more homework to do.
I think that the homework questions are fine and I agree that it adds rigor to the process, but I had a total of 3 homework questions, and they weren't trivial. I spent at least 4 hours on each, and so it was quite time-consuming considering this is OUTSIDE of the slotted interview times. I'm sure that not everyone would have to do this, but I did.
Overall, the experience was positive. Hard questions, but fair for the job, and they all treated me well.