Pros
True experts within most technical domains Microsoft and Accenture relationships result in projects at household names Rigorous training and on-boarding process topped only by a rigorous delivery methodology. You learn *how* to work to guarantee results. This makes you extremely marketable. Healthcare and 401k are fine. They work as they're supposed to. The technology budget they give you sounds cool up front, until you realize it's just withheld salary. Anything you expense is taxed as salary, not as a business expense. So, essentially, a piece of your salary is held ransom unless you spend it on something the company approves of. Then you pay taxes on it.
Cons
Internally, no one even pretends there is work/life balance. If you're under a certain level, kiss your evenings goodbye. Your new best friends are offshore. This is a lifestyle, not a job. Regardless of the success of your project or happiness of your client, your performance is evaluated based on the perceptions of others and your willingness to bow to process that doesn't further either a) the success of your project or b) the happiness of your client. If you don't fall in line, you don't move up. Salary is known to be short of market standards, however this is acceptable because, unless you plan on being a lifer at Avanade, you'll find an opportunity to leave for a significant (25%+) raise. I found the more senior folks I worked with, the less creative and fun the role became. There's even a push to make the on-shore folks just act as champions of requirement documentation and letting offshore do all the fun parts.