I think of a job I quit a while ago: I was getting all the credit in the world, as I had been hired by the rare competent manager. The department had a non-public document rating each employee and contractor, and their idea of how likely they were to leave. I got to take a peek at it, and any technical employee could use it to easily identify the bad managers, if just because their team's scores were all wrong: Terrible, toxic employees being rated as great and at risk of fleeing because they behaved like Linus. Good people that were actively looking for other jobs seen as under average but with no risk of leaving... completely wrong.
In the last 15 years I have seen plenty of good and bad developers, but, for the most part, there is little disagreements among the technical staff about each other's competence. If kept in a purely technical role, a bad employee can produce nothing. Bad managers, however, are often seen as successes by their own managers, and end up killing teams and companies.
We (his co-workers) all knew it, we were asking him questions all day. Our manager had a vague idea he was good, but that was it.
The system doesn't always reward the best performers...it doesn't even know who they are (that's why performance management is a multi-billion dollar industry).
Reading your comment, it brought back to mind: employee value isn't a linear scale, from "bad" to "good". What they contribute is complex.
To me, that complexity is what makes it difficult for the system to find and reward the right people. That's what make it easy for employee value to get lost in the numbers, in exhaustion, in time crunches and stack rankings.