Pros
Great office Fun and friendly atmosphere Talented experienced engineers Nice swags
Cons
Engineering organization and practices are archaic and counterproductive. Non debatable top-to-bottom approach that demotivates/frustrates the entire organization and shirks individuals from their responsibilities as SW engineers. SW design decisions are taken by a small group of engineers in CEO's inner circle who have little to no experience/interest in building quality and scalable SW platforms. Focus is on finding the fastest short term path and ignore long term effects. This is how you get rewards. Quality of the code base is beyond any improvement and repairable state. Senior Management prefers to falsify metrics and pretend things are improving. I admire those few engineers who keep on trying to improve things in spite of the vast majority who just deliver crap to meet impossible deadlines, just happy to get to their next big pay check. Not the way to build a successful organization/product.