Pros
Stable, great people, great benefits, and if you are really lucky - travel.
Cons
If you get put on a team you don't like, you will most likely be stuck there for years. In the last few years, the teams have become very project manager-heavy. I know we need PMs and they are very useful, but the culture is shifting to where actual managers will ONLY talk to the Project Managers, who are often not that aligned with the rest of the team. This has been bringing morale down for a lot of software engineers who are actually leading the teams and making software engineers feel like there is little real growth opportunity, other than slapping a new number behind their title. It seems like recently marketing has decided they know the products more than engineers, and their designs and how to actually do the work is being forced onto software engineers. This has broken multiple systems across the company. I think this has to do a lot with the comment above about management's relationship with project managers.