1. The congeniality and the people willing to help.
2. Being a very large company, IBM has jobs in almost every field in CS and many non CS fields.
3. You can develop niche skills that are tough to find elsewhere.
Cons
1. Reading legacy code and supporting old technologies might seem uninteresting to fresh college graduates.
2. Being very huge has its own disadvantages - like - a few processes/rules that might not make a lot o sense, but have to be followed.