Times change.
Can't speak for the UK, but in the US the thought of doing tech work for the same employer for 10 years is almost unheard of. Quitting also often produces a bigger raise (at your new job somewhere else) than staying.
In a world where you work for one company for 3-5yrs and move, a lot of the trappings of classic business culture just make no sense.... Pensions aren't portable, retirement accounts are.... Club memberships for people who retire with 10 years of service? Who's going to stay long enough to qualify?
Given that, it's not surprising that companies shift their benefits expenditures to fit the amount of time workers will actually be there....