6 ms·
In my personal opinion, the fact that in discussions about 10x engineers, many of the anecdotes and ideas try hard to discredit/disprove the concept¹ rather tha
by pizza234 7y ago
In my personal opinion, the fact that in discussions about 10x engineers, many of the anecdotes and ideas try hard to discredit/disprove the concept¹ rather than presenting real-world examples of very productive engineers, indicates the fundamental will not to recognize them, simply because of pride.
So I'll give a short and sweet argument: read John Carmack's biography and code (both in detail), then feel free to argue that he's not a 1000x engineer, and/or that he's the only one in the engineering world with such capacity.
¹: I agree, though, that "10x" is a profoundly misguided label
- robteix 7y agoI don't think anyone doubts that outliers exist. That is obvious and true in any profession. It's more about what a "10X" is. If someone comes up with "10X developers use black background and their x key is more worn out than the e key," I think it's not unreasonable to question that. Also the question of whether someone who's able to spit out great code really fast but is incapable of testing, documenting, or architecting something is indeed "10X". So the question is not "do outliers exist?" but "what qualities do outliers exhibit?"
- mattbuilds 7y agoI doubt that it's about writing code quickly but instead about how they architect the system. They build in a way that makes the code easier to use, easier to add features, and less prone to errors (because it's more straightforward). I always think of it as someone who lays a solid foundation that lets them build quicker and better.
- xeonoex 7y agoI'd say it's this, but with a couple more thing. One is a lot of experience with the tools they are using. Not having to learn something new saves time. The other is not over-engineering. They have a great idea of the scope and scale of the project, and avoid programming for things that would be out of scope.
- spion 7y agoThe 10x label, especially as described by the tweet that started the tweetstorm is the situation which you may encounter when someone who designed the system understands it yet its not comprehensible to anyone else, because either: * their design is poor * they didn't take the time to document it * they don't take the time to explain, mentor and in general communicate with others This is a way more common situation than the one you're describing (John Carmack)
- taneq 7y agoI haven’t been exposed to this tweetstorm but that sounds like the opposite of 10x. If no-one else has named it I’d call it the pig-in-mud engineer: They’re happy working with that codebase because they’re used to it (and it probably contains a fair bit of their excrement) even though no one else can get anything done in it.
- Crinus 7y ago> This is a way more common situation than the one you're describing (John Carmack) FWIW i remember reading that Carmack didn't really document nor explain his code and all people who bought id's engines got was a single day to ask questions about it to him and that was it. On the other hand for the vast majority of its life, id was a very small studio (IIRC the entire team who made Doom 3 was just 21 people - this includes programmers, artists, designers, etc) so chances are if someone wanted something they'd just ask him directly. I also remember a comment about programmers at id not having meetings and decisions were taken in informal discussions.
- spion 7y agoYeah I've often wondered if many of the heroes we celebrate might be heroes by means of being at least a bit selfish and less of an ideal team player :) Its interesting to read that that might be the case even with J.C. An amazing engineer who is also an extremely strong team player is less likely to be that noticeable because the contrast between them and the people around them tends to disappear in those situations.
- Traster 7y agoI think part of the problem is people are talking past each other. There is clearly a distribution of talent, as you yourself say - Carmack might be a 1000x engineer. But that sort of makes the point against the 10x idea. We talk about the idea there's a group of 1x engineers and a group of 10x engineers. 10x engineers are just a phenomenon where an outlier exists in a standard team. IN reality it's quite rare - all those 10xers are employed by Google working in teams of 10x engineers all looking like a 1x engineer. It's only when a 10x engineer stumbles into a 1x team you suddenly see this effect.
- TheOtherHobbes 7y agoIt's not just relative to the team, it's relative to the industry median. What's the industry median? Does anyone know? People who hire keep reporting that a lot of candidates can barely pass fizzbuzz. 10X compared to that probably isn't that unusual.
- gurkendoktor 7y agoI think people on HN and Twitter absolutely overestimate the global industry median. Just to mention one dimension of it: There are many self-deprecating jokes about how 1x programmers use StackOverflow all day. I'd argue that it's actually the opposite: good Google-Fu alone can make you a 10x engineer! Many developers in continental Europe or Asia still struggle with English. They'll get stuck tinkering around for a day when the solution is result #1 on Google.
- JamesBarney 7y agoI think fizzbuzz is an interviewing artifact. I've never worked with someone who couldn't write a fizzbuzz. But I've heard lots of stories of people interviewing them. I think the reason is the number of times a developer interviews is reciprocal of his talent. Great developers don't have to interview often. Anyone who has worked with them will vouch for them and they pass most of their coding interviews. Really shitty developers have to interview 100 times before they get a job. So you interview 100x more shitty developers than great ones. * This description is to illustrate a point. I know there are plenty of great developers who interview terribly and shitty ones who interview well, but on average good developers interview better than bad ones.
- learnstats2 7y agoThe problem that I have with the '10x' label is that it is often linked to an understanding that engineering ability is innate. Whereas, everything I have observed suggests that engineering skills are taught, and only taught. At one time, John Carmack couldn't code like John Carmack. With the right training, guidance and mentoring, with the right team to collaborate and build with, and with the space and motivation to deeply consider how to solve problems in a useful, pragmatic and productive way, almost anyone can be a 10x engineer.
- bcrosby95 7y agoKeep in mind discussion about this is related to companies hiring "only the best". Even though they exist, I highly doubt there are enough 10x engineers out there to supply even all the startups in the world with employees, much less all software companies. This is why the discussion about it is so pointless and unrealistic: if companies only hired 10x people, 99%+ of software developers would likely be unemployed.
- rb808 7y agoI dont know a lot about him, but his specialization is a good source of outperformance. If he was to write a graphics based C++ library I would have no doubt he would be a 1000x times developer. If he was forced to modify a existing old corporate CRUD codebase, I'm not convinced he'd be 10x.
- he0001 7y agoI know this is a fact. I’ve seen brilliant devs struggle with other code based because lack of domain (technical and business) and fail miserably.