DEV Community

Cover image for What is a "10x" Programmer?

What is a "10x" Programmer?

Nathan Epstein on August 05, 2017

A lot of attention is paid to the value of "rockstar" or "10x" programmers in building successful organizations. It's not hard to understand why; t...
Collapse
 
ben profile image
Ben Halpern

Whether targeting outliers is a sustainable hiring strategy (it certainly can't be if everyone is doing it) is a widely debated topic. Less often talked about is what actually makes somebody one of these great programmers.

That's a reasonable outlook. I'll also add that we don't often bring up context. In the right environment, setting, and constraints, I am a 10x programmer (well, maybe 8x) but I can think of scenarios where I'd be 1x at best. I shouldn't think I'd be just as valuable to every team and situation.

Collapse
 
pavonz profile image
Andrea Pavoni

I totally agree. I was a 1/2 developer when I worked with a team as the only remote worker. I wasn't able to keep the pace with them. In other context, my code production was very high and with decent quality ;-)

Collapse
 
tcase360 profile image
Tay

That's tough. I think most teams should take the plunge either way - all in the office or mostly remote - it's tough to be one of the only ones that aren't in the loop. Daily meetings don't make up for that either, and it shows in code quality and technical debt in my opinion.

Thread Thread
 
jess profile image
Jess Lee

Totally agree, or they need to be extremely considerate of those who are remote which I've seen remote-first companies do quite well. Little things like all meetings happen at your desk via video regardless of how many people are in the office...

Collapse
 
maccabee profile image
Maccabee

Context is everything. I work as a bridge between front end and backend, so I'm quite often explaining how something works. I wouldn't consider myself higher then a 7 anywhere, but to them I'm more knowledgeable because I can do both.

Collapse
 
jlehew profile image
John Lehew

I have turned many developers into 10x developers by reducing rework and debug time, basically developers find issues without a debugger and they only code once or twice. There are three tasks where developers spend the most time... debugging intermittent production issues, responding to changing requirements, and recoding because of changing data structures many times due to changing requirements. Extensive logging and reporting with try catch blocks solves first one. Anticipating requirements fixes second. And designing data structures that answer questions that need answered and properly represent all one to many relationships is important. Surprisingly naming conventions that accurately describe function is also critical. Automation especially test automation can also significantly reduce issues by finding them immediately. Basically reduce where developers spend time and everyone will be a ten x developer.

Collapse
 
eonist profile image
Eon • Edited

@John Lehew. Spot on. Companies have to invest and nurture developers to become 10x. IMO 10x devs do exist. It would be cool to make an Awesome list on github For who that might be. Id say. github.com/feross and github.com/sindresorhus Would make the top of the list.

Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

Yes, indeed programming involves a lot more than just coding. A sentinent I shared in my article I'm proud to be a programmer.

An unanswered question is whether people are naturally 10x programmers, or this is something that can actually be improved upon with experience. You mention several "...a lot" statements. I wonder if this isn't the truth of where great programmers come from.

They program a lot, they teach a lot, they learn a lot.

I think a lot of people don't like facing the fact that if you spend a long term in one position you lose out on challenges, you lose out on new colleagues, you lose out on new learning opportunities. Maybe great programmers just subject themselves to a lot of variety.

Collapse
 
bosepchuk profile image
Blaine Osepchuk

I completely agree - programming is a lot more than just coding.

Can you learn to be a 10x programmer? I certainly think so. I've never met a 10x programmer who was a child so I don't think people are born that way.

At least on some level 10x programmers learn what it takes to be 10x programmers and practice those skills and disciplines while they are working.

I've given this topic quite a bit of thought and have written a preliminary guide on the topic: How to be a 10x programmer

I think it provides a nice contrast to the views in this discussion. I'd love some constructive feedback on my ideas from the dev.to crowd.

Collapse
 
petrglad profile image
Petr Gladkikh • Edited

That "10x" became so annoying. Is this sustainable "10x"? How "10" is supposed to be measured? Anyway "10x" is highly contextual. In long running project it would be like "3x" at best (and 3x over 2 year project is a lot, mind you). For green field it may well be "10x" but then will you consider amount of technical debt the project then or instead praise that 10x-er for good job so he moves on to next hyperachievent and ask other folks to clean unicorn's poo?
Other parts of context are how team fits together, whether people are familiar with tools, how complicated is communication (if you own whole project - it's faster, if you have to coordinate many teams it takes time no matter now 10x your developers are), whether engineers solving right problem or just churning code that is destined to be abandoned, and handful of other reasons.

Collapse
 
adnanrahic profile image
Adnan Rahić

Strong programmers know when to listen to others.

Collapse
 
rajaasyraf profile image
Raja Asyraf

This is very valuable advise. Now I know what it takes to be "10x" programmer. Thanks!

Collapse
 
petrglad profile image
Petr Gladkikh

The best writing on subject I ever read is this one
kitchensoap.com/2012/10/25/on-bein...
Note how little it says about coding.

Collapse
 
angulartools profile image
Angular tools

What is your opinion on TDD?

Collapse
 
dev3l profile image
Justin L Beall
  1. Don't knock it till your try it
  2. It's not a silver bullet one size fits all paradigm
Collapse
 
pixshooter profile image
pixshooter

this article changed my outlook .

Collapse
 
nanomo profile image
nanomo

+1

Collapse
 
abuzzany profile image
Angel Buzany

I'll also add "Strong programmers knows how to communicate their work with non-technical people "