Pros
Good benefits, you can find jobs with a good work-life balance, fairly easy for most people to change jobs every few years so it doesn't get monotonous. I like the culture for the most part, some great managers and some mediocre ones. A lot of ambitious and smart employees to work with.
Cons
Stack ranking system is awful...someone HAS to get the low rating, and very few can get the best rating. Creates a sense of competition rather than cooperation. In one department I worked in, job descriptions often changed frequently and you were expected to have skills different from the ones you were hired for, which was frustrating. Reorganization is very frequent. Can be hard to advance if you're not lucky...they keep sending jobs offshore rather than filling them here. Any tech project you work on, you have to work with folks in India and the time difference and communication barrier can make it challenging. In some departments, you are constantly fighting fires because they don't have the budget to be more proactive.