Pros
Benefits: Not sure what they are for new hires these days, and I know they used to be even better a couple years before I signed up, but the benefits are good. 401k matching, health, life insurance. ~3% raises/year (I guess more if you get promoted). Performance sharing once a year, which depends on the business but it's generally a good amount. Good people and good team-focused environment (help each other out, etc). Another good benefit is flex time: you work 40 hrs/week, but on a given 2-week pay period you can flex time to/from a week, so as long as your manager is okay with it, you could work 35hrs one week and 45 the next (in a given pay period).
Cons
My experience has mostly been positive. Sometimes the atmosphere can be negative around layoff time (which probably happens at other companies, too). Maybe it's just been my experience, but I seldom feel like complaining about my work day. So far I've been a part of good teams doing interesting/good work.