Pros
IBM has some very bright people and some good technology. They allow flexible work hours and location. Benefits and compensation are industry average. Work/life balance is generally pretty good.
Cons
IBM is old and it shows. It doesn't really feel like a technology company. Processes are cumbersome. You can just imagine some ancient mainframe software running the place. I worked in the software business group. The overall feeling was that software engineers were interchangeable. There must be something wrong with you if you wanted to be an individual contributor and liked to write code. Promotions and awards were much more about politics than technical merit. There are too many rules and managers are afraid to push back. Employees are constantly told what they cannot do along and threatened with potential penalties. A couple of examples: print jobs needed to be picked up within 30 minutes or you're cited by security. Office doors need to be locked and blinds drawn when away from your desk for more than 15 minutes. Silly stuff.