Employees only started getting mercenary because the companies treated them like fodder. Listen to any union labor song to get an idea of how they were treated. Companies wouldn’t even pay you in money (only scrip) until the workers revolted. It’s really a bed made by companies, so they better lay in it.
I get that, but it's not quite the same as the sentiment here of 'change jobs every year or few or you're leaving money on the table' except also being based on greed and ego.
Well then maybe companies should be paying their workers better such that they don’t have to switch jobs to optimize their careers. There is no point in blaming employees for a lack of loyalty when employees don’t control their incentives. Workers are merely operating in the system the corporations set up.
If loyalty was that valuable, companies should reward that appropriately by paying them at least as much as an equivalent new hire, maybe even more because they’ve been around longer. Or companies can prioritize putting their most long standing employees in leadership positions, valuing the insight and knowledge of company operations. There are a bunch of things that can be done that often aren’t.