Pros
Most Jobs have at least some flexibility in hours. Good benefits. Most of the people are honestly trying to do their best and are genuinely nice to each other. The campus is very pretty and nice to walk around. There are places to play ping pong, basketball, volleyball, and Frisbee golf. You can feel good about the company mission: safety! If you can manage to come in during core hours and make your metrics, you will probably be there FOREVER.
Cons
Bureaucracy. Too much transcription, too much paperwork, databases that don't connect to each other in the right way, broken system tools, too many layers of current and obsolete programs/forums. Too many meetings, too much email, weird job metrics, career advancement path unclear or nonexistent, career mentoring nonexistent. Good workers not rewarded, bad workers not held accountable. Most managers (and leads and supervisors) make you play 'the game' or punish you. Micromanagement. Which boss you work under can make your day to day existence horrible or wonderful regardless of how good your work is. Promises of more advancement/job variety than really exists. Every few months senior management will change everything with a totally rational sounding explanation, but they never let any plan actually take hold long enough for any improvement. Low morale. If you are not an engineer expect it to take up to ten years to find yourself a decent job/boss combination. If you have any sort of work ethic, you will doubtless be tormented by the existence of a small group of coworkers who seem to do nothing but get paid as much as you do, or more. If you can manage to come in during core hours and make your metrics, you will probably be there FOREVER.