Pros
As long as the work is getting done and deadlines are being met - I have found that my schedule is VERY flexible. I have found most people to be very friendly and helpful. I have also found that most people are not trying to claw their way thru you to better themselves. In the past, the company has been very employee focused by having special celebration days, team building activities and offering extra days off (Dec 26th is a holiday this year). These are not huge gestures like tons of stock or extra money but the little things can mean a lot - especially in this crazy economy.
Cons
Management is not always looking for ways to better their team or how to get their folks promoted. Promotions seem to come every other month for some employees and take many, many years for others. Some teams seem to have new promotions often and other teams go years without any promotions. Also, the work is not always spread out to the best benefit of the company. Some teams are highly overloaded and some teams are sitting on their hands. They have a long way to go in their project management. Some of the progress is caused by the teams themselves - just against change - and management is not very forceful about implementing the proposed change.