Pros
Great pay, great benefits, bonuses, good work-life balance (if you're not on a team where everything is constantly on fire), team outings. Donuts and bagels are delivered on Fridays.
Cons
Your ideas won't be heard - even good ones - unless you can get an entire room of developers to back you up. Important fixes will be put off for things of little consequence while you spend most of your day in meetings you don't need to be a part of. Granted, most of the "fire of the moment" issues are coming down from corporate. Hope you're flexible and able to change skill sets, projects, and mindsets at a moment's notice, because you'll need to do it several times a day. You'll work nights and weekends pouring everything you've got into a project, and when management is specifically asked by C-level execs where the credit is due, they'll say that "everyone in the company" is responsible for the success of your project. You'll be the last one recognized for your efforts, but the first one under the bus when something goes wrong. You'll be perceived as being way behind on work, but only because your hands are tied on the work that needs to be done and your management is likely lying about what you're actually working on.