The average tenure on many, many teams is 6 months.
Does help starve off the boredom.
If you have a good manager, maybe its fine. But if your manager needs some headcount to cut.... don't trust them.
"Here's Joe Candidate, he applied for your open position, and he has a 3 month old PIP on track to be resolved in 3 months. Accept or decline the transfer to your team?"
Ultimately, I think you're right. It's impossible to build a bureaucratic pachinko machine that will make the correct personnel decisions. You really need line managers dedicated to coaching staff, and higher-level managers coaching line managers. One-size-fits-all rules are not the optimal solution. But bad management is endemic in so many organizations that I'm sure these abuses go on all the time.
Let's say I want a new project. I can search for a new team internally, find a mutual match, sign on, start and.....keep my current salary.
Or I can search for a new team externally, find a mutual match, sign on, and get (in most cases) a significant raise and a new sign-on bonus.
Even at a company I like, there's a significant incentive to leave.
Searching costs are a lot lower internally (no leetcoding needed in most cases, hopefully) and you are more likely to be able to land something outside of your current skillset, increasing your long term compensation and job security.
> People hire at companies, bbut leave their boss.
In my anecdata thus rings true.