My former CEO invested significantly in training (I personally received well over $250k worth, including leadership lessons from 2 weeks reliving D Day with military men, rowing with National champion coaches at Yale, etc.) and used to say people challenged him with « what of you spend all this money to train them and they leave? », to which he replied « what if we don’t train and develop them and they stay, isn’t that way worse? »
It's the salary bump. Devs are being treated like customers for car insurance (in the UK). When a customer signs up they get a good deal, then as they remain loyal the deal slowly gets worse. People who change every year or two do the best.
I've heard that this is now changing. Whatever reason the insurance companies have stumbled upon to make this change needs to be communicator to those hiring devs.