Pros
IBM offers fair salaries, acceptable benefits, reasonable (but declining) vacation time, and a huge internal network to explore positions. There are some very bright people who work for IBM, and they are an inspiration for what is possible.
Cons
Morale is generally in tatters after years of offshoring and 'Resource Actions' (euphemism for layoffs). My team went from 9 people eventually to 4 with no change in total workload. Reductions only take into account short-term company bottom line, not quality of work that can be produced, and cut decisions happen at such a high level that I've seen very valuable people eliminated. Culture is often tied up in older ways of doing things ("Because that's how we've always done it!"). New ideas are welcomed, but rarely acted upon, or take years to make even minor changes. Shifting positions internally is often difficult as employees with seniority tend to just...stay in one position, leaving no room for advancement without drastically shifting teams.