Pros
Great people, great pay, good work environment, great benefits. The products have incredible potential to help make the world a better place. I think some of the bad reviews are unfounded, as a lot of new employees are straight out of college, and have no reference for comparison. Believe me, I have worked at some horrible places in the past, and this isn't one of them.
Cons
Things sometimes change at the drop of a hat. Sometimes the environment is not necessarily geared toward employees who are married, or commute a long distance, but that has gotten better. They need a longer term vision for the product than just the current release. If developers knew what the plans are for the product from 6 to 24 months out, it would help them plan and design accordingly, and possibly make future development faster. Also, with so many young developers, you need more time for testing, as sometimes a lot of bugs get introduced.