Pros
Relaxed, deadlines don't really exist. Nobody ever gets fired. Overall good colleagues. Company basically prints money,
Cons
Opaque compensation model. No IC career of any sorts, if you want to progress you have to climb up management. The most important part of your job is however to impress product managers, who are not technical. Work direction changes very often at the whim of product managers who are for the most part not technical. Code base is old, like 20 solid years old, but PMs are only interested in new features. There is a culture of not checking user reactions to changes and measuring performance, the only thing that matters is to push out new features quickly. Code is structured around teams and not the other way around, so if 2 teams need the similar things, they'll often build 2 slightly different copies of the same thing.