Pros
The company is fundamentally decent, there are a lot of smart people who work there who try their best to make things better despite stupid management decisions. It is generally a fun place to work, even when the hours get long, you still manage to enjoy it for the most part.
Cons
Management are a bunch of yestards who way over promise to the execs. The result is the trench folk really feel the pressure and as a result, some pretty sloppy shortcuts are taken to meet purely arbitrary dates. There is no software development experience or expertise at the exec level, even though they all fancy themselves as some sort of Google competitor. The software development process is: Marketing dreams up random useless feature, Marketing picks arbitrary date regardless of work effort or scope, developers work to the bone to make it happen, date is missed due to lack of planning, customers get pissed because defects aren't fixed in lieu of aforementioned random useless feature, lather rinse repeat. Also, there is a very political inner circle that if you cross anyone (i.e. challenge the technical approach, or lack thereof) you will be dealt a heavy blow, often terminated.