Pros
It really is a fun work environment as portrayed in social media. Management cares about doing things well for customers, not just doing a "good enough" job, and technical competence is valued. Collaboration is high. Schedule is flexible. Unrestrained awesomeness is understood (where else can you ride a bike to your desk (don't hit the dog), and wear board shorts and a neon tank top and drink craft beer on tap while you write excellent code?)
Cons
Past all the fun and games, and all the great people, and the truly enjoyable work environment, some of the technical work is simply not engaging or interesting. There are stale projects where it's hard to tell what kind of impact you are really making. The acquisition by Booz Allen means uncertainty about the future of core values and culture, although things are OK so far. The Booz Allen performance rewards system (raises) leaves much to be desired. If you get hired for $75,000, don't expect to make $100,000 in 18 months just because you do a great job and prove you're worth it.