The dev you describe sounds like a junior who can crank out code at high velocity.
The dev you describe sounds like a junior who can crank out code at high velocity.
Of course it is possible for one developer to be better then other, but it is not necessary fixed. It changes during lifetime of same person, depends on technology, experience, type of project and other factors.
Meanwhile the typical use is to look at some stereotype you have in head that has nothing to do with the project or position at question and then wonder why it did not worked out.
E.g. If they previously wrote compilers and you tasked them with graphics you'd see a book explaining affine transforms on their desk. Or parsing theory for the reverse transition.
A key part however is the ability to switch between fields. I've seen people I thought were 10x completely fail when tasked with something new.
His code had major issues, but that's not to say that he couldn't write software. He could, in a manner completely different from me. Amazingly well, yet frustrating.
Above a certain level, one developer isn't universally better than another. It's not linear any more.
He's a CS professor now.
Syntactic sugar can't impress me anymore, unless it comes with significant performance gains or compress the code significantly without sacrificing readability to average Joe coder (this is important part). Actually I prefer 1 page of simple clean code to 1/2-liners that do it all, until they don't. I guess I am getting old.
You're saying their code was so good it survived 3 years of real world use and project evolution. That's extremely rare.
It's a case where the whetstone sharpening the knives also gets sharper by virtue of what they learn from the juniors they mentor.