Vantaggi
Working at IBM there were many opportunities to learn new technologies and a wide range of jobs available if interested in moving about the company. HR and corporate IT were competent and professional. Managers were typically well trained in their roles (e.g. strong focus on communication and coaching). Coworkers were usually sane, intelligent and amiable.
Svantaggi
The business focus was driven entirely quarterly. Very bad vibe coming from middle-management (who didn't care about their professional employees). The atmosphere felt cold and chronically stressed-out. Upper management was aggressive about rolling back employee compensation (e.g., shifting focus toward younger, shorter-term employees that can work insane amounts and burn out). Easy to become pigeonholed in a bad role/division (managers can block you from seeking different jobs within the company... and do exercise the right during horrible projects or in bad teams -- most of which are). Feedback/ratings were based more on gaming the system than actual employee contribution (i.e. to limit bonuses/raises there can be only one, maybe two, excellently rated employees in your team; the rest have to be average). Most importantly, moving up in terms of leadership is only a doorway into some weird political arena where you are more responsible for gaming the arbitrary metrics defining success than in actual accomplishment -- i.e., you do whatever it takes to affect some meaningless improvement in a spreadsheet. It's an OK place, but don't stay too long or it will rob you of the skills needed to survive outside the company. Lots of people in their late 20's talk about their big ideas outside the company, but get comfortable and never go anywhere. But the company is ruthless now so realize from the day you join your days are numbers (so always keep exit doors open so when the time comes it's for the betterment of your career rather than for the sake of whether your division exceeds or underperforms its quarterly target by one percent).