I spent 25 years working at IBM, most of it in fairly technical programming jobs, but the rewards (and the frustrations) are much the same regardless of your particular job assignment. In many ways, IBM is still an excellent place to work. Their benefits are very generous, although the pension no longer is, and for the most part employees are treated very well.
Some years ago, all employees under a certain age were switched from defined benefit to defined contribution pension plans. Fortunately, I missed that cut-off by a year or two (because of age/seniority) and was able to keep my original pension plan. Younger workers had their pension investments subject to the vicissitudes of the stock market, and many lost half their value in the 2008 crash. This also happened to everyone's 401(k)s, reducing them to "201(k)s."