Pros
Abundance education materials, accessible in best practices of projects in top companies around the world, collegial working environment, employee working nature is very mobile (people don't have to be in the office to get the job done), flexible working hours, above average benefits (glasses reimbursement, dental health, medical benefit, education reimbursement), excellent overtime paid rate, lot of opportunity to get exposure in projects with high profile clients, freedom to pursue career path, no salary cut off or employees lay off during recession, excellent professional development - there is training budget for every IBMer in every quarter, IBM reputation is larger than life
Cons
performance evaluation is very subjective, career path will be most likely be determined by business condition and opportunity - it is possible for some people to do the same things over the years due to this rule, hardcore technology company - not fit for those who would like to pursue IT management career track, it is really vague about the criterion to advance our career