Pros
1. Easy to get work from home(that is the one and only flexibility). 2. You will get easy relocation in case you need it(depends on your manager sometime)
Cons
1. Before joining IBM I heard that IBM has a very good HR policy. Believe me, there will be no HR to entertain you, there will be no HR partner assigned to you. In each and every concern, you need to reach out to your people manager . Most people managers are not even aware of all the HR policies. 2. You will get very low hike, sometimes may be no hike at all even if you receive highest rating. 3. Remember that your people manager is everything for you in IBM so your ratings and hikes will be depend on your manager even if you are performing good or bad. So it's better not to engage in a dispute with your manager. 4. No don't ever think about any onsite opportunity while you are in IBM, it totally based on your luck.