I suspect the same can happen with software developers.
Of course, there are people that will be bad anywhere and top guys that will be great anywhere.
I don't think that's the world we live in though. I've seen smart, sociable, effective developers fail in misorganised teams, and I've seen teams of ordinary people produce very good software by getting their processes right.
I don't doubt that there are bad developers---I've definitely encountered them. But software development is a team sport, and it makes no more sense to just "recruit good people and leave them alone" in software than it would to do the same in basketball. Great teams have both talented people and winning strategy.
That's surprisingly common across the field. Most developers work on small teams doing small but often very long lived projects. Code staying in production for 30 years is surprisingly common outside of SV.
What if there is no reasonable and reliable way to become a good team, and the only way to go from a bad team to a good team is to replace most of the team?