Pros
Excellent work-life balance. Salaries are competitive.
Cons
This is NOT an engineering-led company. Nearly all executives come out of marketing and sales. Nothing is more important than meeting short-term sales numbers. Cost-cutting has gotten completely out-of-hand. Have to pay for coffee. Buildings are dingy (half of the lightbulbs are burnt out). Often have to purchase your own hardware out-of-pocket. IBM is committed to being as profitable as possible. This means replacing their US work force with workers in BRIC countries making 80% less. They've already reduced their US workers by about half, and have no plans on stopping. If I were a software developer 35 years or older, I would fully expect to be laid off in the next 2-3 years. The atmosphere is that the executives view employees (and low-level managers) as nothing more than faceless "resources" that can be replaced with cheaper alternatives. Many important senior level software developers have already left, leaving knowledge gaps all over the place. IBM feels like a company on the decline. They're pulling no stops to appear as profitable as possible, but mortgaging the company's reputation to do so. They're staying alive by cannibalizing other companies. Employee morale is down-right awful. Management knows this, since I haven't seen an employee satisfaction survey in many years. I get the impression that executives are trying to make the atmosphere as unpleasant as possible to make their U.S. workers leave on their own so that they don't have to pay them severance packages.