4 ms·
I don't think anyone really doubts that some engineers will work an order of magnitude or more faster than others on a given task. They just think it's a mislea
by strken 5y ago
I don't think anyone really doubts that some engineers will work an order of magnitude or more faster than others on a given task. They just think it's a misleading way to think about performance, which likely falls on a unimodal curve within your organisation, and likely differs by task.
How do you know you're looking at a 10x developer instead of a 2x, a 9x, an 11x, a 500x, a 0.2x, or a 0.5x? The premise gives the impression that you can neatly split engineers into two groups, which is wrong. Your 500x engineers are only going to perform that way on tasks they've done before, your 0.2x engineer might just have the flu or might be an intern on his first day, your 2x engineer who wrote a parser for that weird proprietary format last week could be 0.5x this week because she's working on ansible scripts, and in general it's impossible to settle on a constant integer factor of engineering ability that does any better than IQ.
- prepend 5y ago> How do you know you're looking at a 10x developer instead of a 2x, a 9x, an 11x, a 500x, a 0.2x, or a 0.5x? This is the hard part, isn’t it. It’s hard to tell beforehand, but if you’re skilled enough you can look at someone’s contribution history and see what they’ve done over the past years. It’s not perfect, but it helps. Similar to how you review a 10x artist, just look at their work. I don’t think asking people if they are great is very useful.
- karmakaze 5y agoYou're looking at a very different kind of Nx engineer. The kind I'm talking about is where they approach a brand new problem that no one has an idea how to decompose using any tech that they have a clue how to operate, then a concise solution somehow appears using mostly what is already in service with careful splitting of tasks that appear clear and obvious only in retrospect. It's not about volume of output, precisely the opposite.
- strken 5y agoThe original studies that gave us the concept of a 10x engineer tracked defect rate and speed on programming tasks. You're using your own definition of an Nx engineer that: - does not relate to speed or defect rate - does not provide any way to quantify what N is - does not explain how an Nx engineer differs from a normal competent engineer There's no problem with saying "engineers who can solve novel open-ended problems exist", the problem is that there's no reason to call those engineers 10x, no reason to suggest ability to solve those problems is a yes/no question, and no link to the original studies that we got the concept of a 10x engineer from. I remain unconvinced that the concept of 10x engineers is very useful.
- karmakaze 5y agoThe difference isn't only in how fast/well tasks get done, but a very good engineer will make many such tasks unnecessary altogether with better design and implementations that forego their need. Without including this aspect, the metric is a low-level one and not indicative of overall impact.
- strken 5y agoThat's the point. If you don't have a metric that says "Alice is 10x better than Bob" and you don't specify a task she's better at, then what you really mean is "Alice is on average and by some unknown factor much better than Bob on the tasks she performs". Framing it as though you have a rigorous comparison between them will mislead you into thinking about engineers as if they were fungible, like diesel generators, which is a very silly way to think about a divide-and-conquer field like software engineering where engineers develop different levels of expertise in different things. If you're suggesting there is some underlying factor, like generalised intelligence, I'm not arguing with that! I strongly disagree that factor has anything to do with the number 10, or that engineers fall into discrete 1x and 10x camps, though. I think the phrase "10x engineer" leads to logical fallacies about performance.