How to Be a 10x Developer
chelseatroy.com
chelseatroy.com
You'll find some companies where the most effective use of your time is building, because everybody else plans. You'll find some companies where the most effective use of your time is tooling. You'll find companies where the most effective use of your time is doing product work. You'll find companies where the most effective use of your time is challenging the business status quo.
Did you assume that, and avoid clicking the link? It doesn’t suggest a universal rule for productivity, and even starts by predicting your reaction: “It’s not a clickbait title, but I understand why it looks that way.”
> it’s going to be a function of the environment you find yourself in.
The article agrees with you, and talks about some specific ways to be a force for good in creating that environment for yourself and for those around you. Is it perhaps worth a quick glance before jumping to conclusions?
No, I read it, and regretted reading it, and figured I should save others the trouble. I specifically called it out as baity because it claims not to be, which is ludicrous, because it's a meandering piece that isn't really saying much ("try boneheaded solutions") of anything, seems like a mix of generalities, caveats, and self-promotion.
I'd challenge you to ask yourself this -- Is there even the slightest chance that anybody who reads this article is going to become 10x as productive from this "technique"?
If not, then that seems the definition of linkbait.
I don’t know whether it would convince someone, especially someone who’s in a pessimistic frame of mind, to be more productive. But I will say this: after a couple of decades of professional programming experience, the number of times I’ve seen extremely “productive” people who think they’re clever over-engineer the shit out of something that ends up wasting a ton of money and time for entire teams, I can’t even count. It’s a very good point to stop and evaluate whether there are ‘boneheaded’ solutions you’ve overlooked, rather than try to hero-code something complicated.
I also think it’s very true that mentoring others and helping the team is how you achieve this symbolic notion of ‘10x’, and this point does get overlooked sometimes in other discussions and blog posts on code productivity. There is, of course, no objective metric here at all, and the number 10 is being used metaphorically, mostly because it’s basically a meme at this point, which is obviously why it was used in the title, so I think it’s reasonable to avoid taking it literally and using it as the criteria for whether the writing is valid.
Anyway, cheers, I hope you find some articles here that reach you in a positive way.
1. Understand the problem and the solution. Figure out the best tools to use for it. Learn just what I need for version 1 if necessary.
2. Implement version 1. It works. It's ugly. But it's efficient. It's my MVP and I can get by with it if other duties call.
3. Observe what's truly missing. Add to knowledge base and improve the solution. Refine. Test. Refine. Deploy.
4. Document everything.
I used to be the kind of guy who read whole books to implement something because I had FOMO. Now I focus my energy on what I need to solve the problem. During downtime, I might expand my overall knowledge because it's necessary or I'm curious.
Am I a 10x dev? I don't think so. But I like where I am at and always want to improve.
There is no right or wrong answer here I guess. It's just what aligns with your goals, how you've prioritized things and what makes you happy.
A 10x developer doesn't (usually) write 10x as much code. They get 10x the work done in 1x of the time. The quantity of work output is famously not measured in SLOC.
I've had the pleasure to work with a few. We all know the names of most of the dozen of 25x or 50x developers that exist in the world.
I think this person is writing to their preordained conclusion that the idea of a 10x developer is a myth. It's not.
He was brilliant, probably slightly autistic, spoke multiple (human) languages fluently (that he had taught himself, not grown up speaking or learned in school), and easily wrote 500-1000 lines of great code per day (not that that's the metric, but that's what I'd see when running `git pull`), implementing feature requirements in a front-end web application. His work truly had a "wow" factor. Give him a very big job that would take the average 4-person team more than 6 months, and it would be done in less than a month.
As a senior developer on that team, I quickly learned that the best use of my time was to remove roadblocks and streamline his workflow.
I worked across from him in an office for a couple of weeks one time, and was impressed at how focused and disciplined he was -- more than anyone else I ever saw. Every moment of the work day he was scrolling and typing into his editor. A quick break every few hours, and then back to work.
Mind expanding on this?
10x developers are usually people who have the lucky combination of:
-Having a close family member who understands computers
-Programming since 9 years old
-Naturally high IQ
-Decent emotional development and communication skills
Also missing from you list: - Hard work? - Dedication? - A 'can do' attitude?
In the end it's easy to remove yourself from the race by rationalizing that since you don't have the 'lucky' ingredients you mention, it's not even worth trying.
That would be unfortunate...
-6'+
-Having a close family member who is an athlete
-Playing sports since 9
-Naturally athletic physique
-Decent cooperative and competitiveness
I only meet 2 of those and 6'+ is definitely not one of them, but I don't avoid basketball because I'll never be as good as a "10x" basketball player (probably NCAA D1 level, Euroleague). In fact, I play often, and years of that have made me an at least serviceable player.
What I'm saying is maybe you'll never be a 10x dev (I won't be) and a large part could be because you don't have the traits you mentioned - which in my experience, definitely describes most of the 10x types I know. but hard work over time can get any person of average talent to at least a 2x or 3x dev (or basketball player). So there is no reason to beat yourself up if you aren't Einstein. A person is competing with themselves.
For example lately I have created VSCode extension to show myself messages with things I don't remember or that help me code without Googling all the time.
The result is great because coding is much much faster and streamlined.
The extension name is Assistant: https://marketplace.visualstudio.com/items?itemName=tomasz-s...
But also there are other areas to pursue 10x speed. For example navigating in an organization, getting necessary information fast, vetting ideas fast with client and team. Going for good solutions rather than partial ones. I love programming for that. You can become better and better all the time. And when everything clicks, nothing can replace that feeling!
1) identify the most important problem you're facing 2) solve it somehow
If you get better at your craft, you can get better at #2 as you'll understand the costs and benefits of different approaches and how to accomplish them.
You may wish to select an environment that makes use of your skills vs one that uses skills you don't care about.
People are talented but they often aren't asked to do very much. Most jobs don't give all that much responsibility and even then they weigh you down with oversight and meetings.
So, in those jobs, one of the hallmarks of a 10x performer is someone who rejects that baggage. A lot of 10x performers are kind of jerks where they stand up to the status quo and choose their own path. That sort of job is setup to select for only 10x performers who are also willing rebels.
But... many times that I've given more responsibility to someone I've ended up seeing them perform better and more than anywhere else in their career. I think that's nothing more complicated than that people have a lot of untapped talent. Roughly, I'd say if you asked all of the people you worked with to do 10x work that half of them would be able to.
Sometimes there are just no magic solutions.
The few engineers I know who approach 10x productivity have done so by building tooling that helps all the other engineers do their jobs easier.