Pros
The team doesn't feel like a soulless, corporate machine but rather a team of people with personalities working toward a common goal. The work environment is flexible, allowing for a pretty healthy work-life balance with a mix of in-office and remote work days. The company, at least to me, has always seemed to strive to adhere to ethical business principles. I've also always felt like I'm treated as a person and not a mere "cog in the machine". Additionally, while I am aware that at least one coworker holds to very different political opinions to myself, the environment is very apolitical and I've never clashed with anybody over politics. Of course, that's partially my own aversion to discussing politics in general, but I've not heard discussions of politics in office, so if you don't start them, they probably won't happen at all.
Cons
I often don't feel the impact of my work, even when I'm told that I did well on something. It often feels difficult to feel fulfilled, despite the good working environment, and I think this is partially due to the fact that there is such a large gap between the developers and the product users. Some might consider this a good thing, though, as it means you don't hear the negative feedback directly, but for me it is a negative.