Pros
Unlike similar companies I've worked for in the past, has a clearly articulated business strategy and sticks to it - this leads to a strong, stable business model. Genuinely tries to hire the best people available, and this shows: you can learn a lot from the people around you. Being a services company, you get to experience a wide variety of technologies as you switch projects (but don't expect to hop on a different project each month) - IME not something you get in a product company. Also, nice perks, although not financially important.
Cons
Not all projects are great. Some are quite the opposite, even if they absolutely make sense from a business point of view. Getting to work on one of the less nice projects can make your life really miserable. Has IMO done a better and more consistent job at hiring technical people than hiring/grooming mid-management.