Pros
You already know about the perks and remuneration, so I'll talk about the real pros: all-star coworkers, difficult problems to sink your teeth into, and the reward of being able to provide amazing services to people. We play board games every week, we talk about ACM papers, we diagnose devilish bugs and find creative ways to solve problems, we pair program and hack out experimental prototypes, and we learn together. That last one is particularly important: on my teams people have had real humility. We recognize failure and learn from it. I love my coworkers :)
Cons
Google's gotten big. Very big. With human nature the way it is, the size leads to the challenges you'd expect -- silos, difficulty coordinating, diffusion of responsibility, culture, etc. Everyone has to fight against these natural tendencies every day, and it doesn't come easy. To me, this is the #1 reason why people find it hard to work here. It's a real problem. It can make simple things seem impossible, it can cause arguments, it can seem chafing or even suffocating, and even when people consciously fight these issues, it's not always handled in the best way.