
Working at IBM for sure gives the brand recognition that you look for. But as far as personal growth and career development is concerned, the prospect doesn't look that great. There is very little chances u will find some real development work going in IBM. Most of the work people are working on is either maintenance or support. There's little to learn from in support work, so IBM may not be really great place to go if you're passionate in programming and looking for challenges.
The pay at IBM starts out pretty well, but the rise percentage is lower than industry average, so 2 years from now your salary will be lagging behind your friends in the other companies.