Tuesday, May 24, 2016

What is the truth about 10x programmers?

Way back when I wrote The Psychology of Computer Programming, I pointed out the wide variation in programming skills. Years later, people began labeling this phenomenon 10x programmers.

On the Quora website recently, a participant asked "What is the truth about 10x programmers?"

Most of the answers there were good, but misguided. Many of today’s critical programming tasks are simply too big and complex to be handled even by a 100x programmer (not to speak of maintaining what a 100x programmer produces but does not want to be bothered maintaining).
For many years now, we have understood that the programming job is not really a job for individuals, but for teams. (Yes, an individual can produce a fine small program, such as a game. I have done that myself, many times over 60 years in the business.) So what we really want is a 10x leader/teacher of programmers. If you can’t pass on you 10x abillities to others, you’re not what we want for those enormous programming tasks.
That’s why I now concentrate on teaching 10x programmers to be 10x programming leaders, as in my Problem Solving Leadership workshops and my books such as Becoming a Technical Leader.


Danny Faught said...

What kinds of problems do you foresee if you have a 10x programmer led by a 5x manager?

Gerald M. Weinberg said...

I don't have to foresee the problems, as I've seen this combination many times. I'm not sure what you mean by a 5K manager, but I'm assuming s/he's a much better than average manager. In any case, 10K programmers tend to ignore managers of all kinds, seeing them as obstructions that retard that 10K speed.

A poor manager will try to force the 10K programmmer to conform to some "standard" way of working. 10K programmers tend to leave thje employ of such managers.

A decent manager will try to leave the 10K programmer alone. "If it's not broke, don't fix it."

A really good manager will try to help the 10K programmer to become a leader of others, raising the productivity of the entire development/maintenance organization. Will this effort succeed? That depends on the skill of the manager and the maturity of the programmer.

Danny Faught said...

Yeah, you don't hear about the 5x people much, but surely they're more common than 10x. :) I don't know if it's considered a linear scale or something else.

I think you saying "10K" is a typo, but it's amusing to think about a 10,000x programmer.

I can appreciate the difficulties of a manager in charge of a highly talented technical person. I imagine many companies lose their talent because of poor management. Those difficulties get even larger when the technical person is in a lead role, trying to convince their manager to let them apply their ideas across a larger part of an organization.