A developer standing alone can be evaluated by one set of metrics but when added to a group of other developers many of those metrics can be overridden by others and become meaningless. In simpler terms, teamwork.
I do not think developer grading is impossible, but there is so much more context involved. The "score" is dependent not just on the company, but the time and place in the developer's and the companies own life cycle. The perfect fit is always subjective -- these are organic life forms not rigid machines.