If I am being honest...
Pros
The team members on every team are awesome. All team members are willing always willing to invest into each other.
Cons
Management is not there for you unless it directly affects a client they are working with, and even then, they are just there to breathe down your neck. Promises are made and never followed through with. You can bring the same thing to managements attention time and time again and always be told that they are looking into. Getting the appropriate tools to complete your job can take weeks, sometimes months. It might speed up if the customer were to start complaining. Best practices for our customers are more of a 'nice thought' than an actual practice. Time spent locating documentation can often taken longer than resolving the actual issue. Time to fully complete projects is never actually followed leaving other departments or team members to pick up the slack. Hiring outside of the company seems to always take place before internal promotions are handed out.