Pros
I get to work on a project that I care about. I feel as though my leadership cares about me and is vested in me as a person and as a worker. You are supported well enough from management even if you are treated poorly by client sometime.
The pay is good, especially as you get further up the ladder. There are lots of opportunities for development, but sometimes you have to work extra hours to get to it. Awesome benefits, and flexible environment.
Cons
Sometimes it can be tough to achieve work life balance.