DEV Community

Cover image for Thoughts on 10x Developers
Nested Software
Nested Software

Posted on • Updated on

Thoughts on 10x Developers

The concept of the 10x developer was popularized by Steve McConnell in his book, Rapid Development, published in the 1990s. Steve highlighted some research into software engineering that suggested top developers could offer an order-of-magnitude improvement in productivity over average performers.

It is not easy to draw firm conclusions from this type of research. It is difficult to generalize the meaning of the results beyond the particular tasks associated with a specific study. Nonetheless, I would say these results are roughly consistent with my own anecdotal experience. In any field, there are outliers who can make things look easy that would be very hard for the average practitioner. This is accomplished both by dint of great effort put in over years, but also because some people have the good fortune of being extremely talented.

Software development is no different from any other field. I've encountered great programmers who would be several times as productive as I am for many kinds of tasks. Also, such people can solve problems that may be entirely beyond my capabilities. Reasonable people can disagree about the 10x number, but brilliant people do exist.

I think the trouble started when "10x developer" increasingly became a buzzword in the tech industry in the 2000s. It became associated with the image of a kind of arrogant male tech-bro. I believe it also came to be used as justification to dismiss the need for diversification in software engineering. I completely reject this kind of idea. Human potential comes in many forms, and we can nurture and cultivate talent from many different backgrounds.

However, I do sense something in the zeitgeist that there is also an undercurrent of thought that 10x developers simply don't exist - or that any apparent increase in productivity comes only from cutting corners. That's also not true, and I believe it does a disservice to the reality of individual differences.

The truth is that there are two axes to consider. On one axis, we have talent level. On the other, there are positive vs. negative personality traits. The two axes are somewhat independent. Talented (and untalented) jerks exist. But many talented people are also modest and kind. I believe that somehow mythologizing of 10x developers who act like jerks came from some high profile examples - people like John Carmack and Bill Gates in their youth do fit the profile. However, these stereotypes need not be representative. We tend to notice these cases because people who are both exceptional and jerks tend to stand out, but that doesn't mean it is something to celebrate or emulate.

Discussion (3)

Collapse
phlash909 profile image
Phil Ashby • Edited on

Whilst I agree with your sentiment here, I would like to note that Rapid Development doesn't say that '10x developers' are an order of magnitude more productive than the average, The book refers to research that shows there can be an order of magnitude difference between developers, ie: most to least productive. The book also notes that teams are subject to similar variation, and that focus on people fit (to the work) and teamwork is the most effective way to improve productivity for your team.

The book is free to read here: archive.org/details/rapiddevelopme...

Collapse
nestedsoftware profile image
Nested Software Author • Edited on

Thanks @phlash909 ! I had not read the book in a long time! Totally agree that good people fit and having a healthy team dynamic should not be overlooked, and Iā€™m glad the book emphasizes that point. I do think it is an important one.

I found this article by Steve McConnell with some updated discussion about the matter: construx.com/blog/the-origins-of-1.... Not sure whether 10x first came up in Code Complete or Rapid Development - probably the former, though I seemed to recall it from the latter first.

Collapse
cbordeman profile image
Chris Bordeman

What does "male" have to do with it?