Live data from Hacker News

Busting the 10x software engineer myth

swarmia.com

121–130 of 356 posts

Re: Busting the 10x software engineer myth

#121
post #88
post #3

I know "10x engineers" exist; some people are fakes and put forward things that look like they have high impact but are actually a bit shoddy. Some people like to be present and suck up. But some people really do just work hard, smart and have deep passion for what they're doing- and importantly: pride, which makes the quality of the content great too. Some of the best engineers I know "visit" bits of code or infrast…

If a brittle piece of JS (with high support cost due to runtime errors) is replaced with a piece of Elm, the runtime errors are gone. The one that made the decision to change it, and actually ported the code, easily wins the 10x badge when we consider the high support cost of that brittle piece of JS code in production. > institutional knowledge is lost. Exactly! Say a dev rewrote the brittle piece of JS to resilient…

This is wrong. Rewriting your code in Elm (or other niche language) doesn't make you a 10x developer.

Same way rewriting your code in Rust doesn't make you a 10x developer for removing memory safety issues.

A 10x more productive developer is more productive within an ecosystem against others who are also in that same ecosystem. It's not fair to compare a C developer to a Rust developer in terms of developer skill. But maybe productivity you could. Like how Python is more productive than C++ but you don't call the Python developer a 10x developer.

Re: Busting the 10x software engineer myth

#122
post #99
post #97

This article is pure clickbait written to sell in this stupid Swarmia startup. :) 10x developers exist just like 10x musicians, 10x marathon runners, or 10x chess players exist. It may take a world-class musician a week to write a masterful symphony but it would take me way longer. Perhaps I'd never produce anything great so that musician would be infinitely better at it than me. Great chess players beat amateurs at…

The problem is that you can't measure a developer. So you can't say someone is 10x faster or better. If you add a bench-mark like how many LOC is written per day, most will exceed at that benchmark, but the overall quality will go down.

Cue the link to the story of Bill Atkinson‘s “-2000 Lines of Code”:

https://www.folklore.org/StoryView.py?story=Negative_2000_Li...

Re: Busting the 10x software engineer myth

#123
post #106

Earlier quoted context omitted.

They specifically said runtime errors. Elm is designed in such a way that runtime errors do not occur. Obviously logic errors etc. are still possible.

So what happens if you divide by 0 in Elm?

For integer division, you get 0 as a result. For floats, it is the Infinity value used by standard implementations.

The integer solution is not great, but is mathematically consistent despite what many believe (it’s true in most proof assistants, for example).

Re: Busting the 10x software engineer myth

#124
post #33

Earlier quoted context omitted.

“Adding people to a late project makes it later”. Equally, replacing high performers with multiple people wouldn't work most of the time.

Yea funnily enough I just added a comment along these lines about restaurants in a different story. Just because an engineer is 10x better in some sense that another one, it doesn't meant that 10 of the lower quality engineers will make up for it, just as eating 10 times at McDonald's isn't going to be as much fun as eating once at a great restaurant (for most people)

I'm a good cook, but compared to Wolfgang Puck, I make shit on a shingle look brilliant. You could hire 100's of me and not get a decent restaurant. After so many decades as a programmer, there are enormous gaps between programmers in their ability to deliver quality. Calling something 10x is not a measurable quantity, but watching quality delivery over and over gives you the impression; the number is arbitrary.

Re: Busting the 10x software engineer myth

#125
post #99
post #97

This article is pure clickbait written to sell in this stupid Swarmia startup. :) 10x developers exist just like 10x musicians, 10x marathon runners, or 10x chess players exist. It may take a world-class musician a week to write a masterful symphony but it would take me way longer. Perhaps I'd never produce anything great so that musician would be infinitely better at it than me. Great chess players beat amateurs at…

The problem is that you can't measure a developer. So you can't say someone is 10x faster or better. If you add a bench-mark like how many LOC is written per day, most will exceed at that benchmark, but the overall quality will go down.

> So you can't say someone is 10x faster or better

You can absolutely measure something.

I have a colleague going through this right now - he's got... 24 years of experience in software - mostly web - across multiple problem domains/industries. He's now on a web team with someone who's done windows desktop software for 15 years, someone else who graduated from high school 2 years ago and has never worked anywhere before, someone else who has a few years of some web experience but has never actually shipped anything remotely close to what the team is trying to do.

There's more, but... the mgt wants to treat everyone as 'equal' and having an 'equal voice'.

So... they need some new web service. "Let's use React! Let's use Dart! Let's use foo!"

Mgt: "OK - well... let's have a 'shoot out' - everyone research their ideal and we'll present findings!"

My colleague: "Hey - here's this. I got this done in a couple days - there's tests, docs, works with the existing infrastructure, and has some sample data for you to play with".

Weeks later, others: "Hey, that's not fair, you already knew some of that. I'm not an expert in $foo, but heard good things about it, and people at google use it, so we should too! I just need a few more months to get up to speed, then I can show the rest of you how good it is and why we should use it."

Someone being able to accomplish stated goals in a few days, where other people on the team are not even sure what terms to google... Yes, there are people who are "10x developers".

Re: Busting the 10x software engineer myth

#126
post #72

Earlier quoted context omitted.

If we're taking about is just output on a larger macro scale, then yes, hiring enough people will replace 10x engineers. But some things i think you won't be able to replace -- You won't be able to replace speed on short-term projects. Lots of people means lots of communication overhead, which really kills fast responsive speed. If you value time to answer, you'd prefer a small team of really smart people instead of…

> hiring enough people will replace 10x engineers The math is not that simple. The output of a Junior engineer is much different from that of a Senior engineer. You can hire any number of Junior engineers you want, and they won't have the vision and seasoned experience of a Senior engineer for producing higher quality code with less technical debt. Even among Senior engineers there are different grades of experience/…

Cue the link to Mythical Man Month:

central theme is that "adding manpower to a late software project makes it later."

https://en.wikipedia.org/wiki/The_Mythical_Man-Month

Re: Busting the 10x software engineer myth

#127

"10x engineers" definitely do exist. Anyone who doesn't believe in 10x engineers just hasn't met one yet. I've had the pleasure of working with two 10x engineers. One of them is a problem-solving and execution machine. I could understand what he did, and I think that I could have done the same, only taking 10x longer. The other one... the other one isn't just a "faster me". His brain works on a qualitatively differen…

> Anyone who doesn't believe in 10x engineers just hasn't met one yet.

Or they are working in a small and well-funded company that only employs ~10x engineers, and they have never met a (to them) 0.1x engineer.

Re: Busting the 10x software engineer myth

#128

10x software engineers are mostly 10x problem solvers who happen to be programmers. The driving attitude is refusing to work hard to accomplish something of low significance, which is mostly done thanks to: finding clever solutions, reducing feedback loops when debugging or testing, gaining proper understanding of systems to avoid empirical tweaking, asking around quickly when getting stuck, and also cleverly navigat…

> 10x software engineers are mostly 10x problem solvers who happen to be programmers

I don't think it's just about problem solving, as in "solving a math problem". The 10x is, I believe, the combination of different factors:

- Knowing you language and its ecosystem by heart: 2X

- Knowing your codebase by heart: 2X

- Mastering your tools (IDE/editor, Git,...), perhaps making your own tools: 2X

- Using good development methodology (e.g. limit trial-and-error or do it thoughtfully): 2X

- Being unsocial so people think twice before interrupting you: 1.5X

So in my opinion, on the contrary being a 10X engineer has a lot to do with being a good programmer.

Re: Busting the 10x software engineer myth

#129
10x engineers surely exist IMO, but:

- There are 10x as many pretenders for every one real one. Management might mistake the fakers for the real ones because they are faking it on being charismatic. These engineers wreak havoc on teams.. everyone else is cleaning up their mess, the fake 10x gets all the credit due to the charisma and ego and too often the rest of the team isn't able to reveal the true situation. Management will often give these guys (never seen a fake 10xer who was a woman) huge accommodations and let them go off on massive projects outside of normal accountability and project management and when they come back a year later they've produced a big mess of garbage but a year was spent and the guy is charismatic so management has to have it in the product.

- Any given engineer might be 10x more productive in one organization than another. This can probably be indirectly correlated to the size of the organization

- Fake 10xers can drag down everyone else's productivity, and make themselves look better in the process.

- Real 10xer will produce an elegant architecture or solution that is easy to maintain and understand. The faker will produce a mountain of code with hidden bugs and put on an air as if no one else is smart enough to understand what they've produced.

- There's an element of "emperor's new clothes" with revealing a faker. Everyone knows they are a faker except management, and yet it feels impossible to stop pretending and pull the curtain back.

- Non-technical management makes it much easier for the faker to get their hooks into an org. Maybe the UI designer got elevated to VP of engineering and doesn't know much about code. Maybe a junior guy got promoted for being one of the first employees. These kinds of managers are juicy targets for fakers.

- Fakers often seem to introduce new tech to the stack so they can show it off on their resume, even if it doesn't fit the product well.

- Fakers make up clever names for everything they write as if they are marketing their code. Put stuff off in a separate library in a separate repo when it could have fit right in the main repo. Give it a clever name. Convince management to allow them to put it on github as open source so they can polish their external cred.

My last two positions the team was essentially sabotaged by a fake 10xer on each project. Reams of buggy code and huge management accolades, when the bad code starts to catch up to them them move on and leave tons of tech debt behind, and they move on to do the same thing at their next position. One of these guys spent 3 years writing a crazy library that used an alternate persistence strategy and when it got put in it destroyed performance to such an extent that when he moved on the whole thing was removed in a month or two and performance went up 100x just by changing everything back to a more standard persistence strategy. Meanwhile alternate persistence strategy went all over the guys's resume/LinkedIn.

Re: Busting the 10x software engineer myth

#130
post #97

This article is pure clickbait written to sell in this stupid Swarmia startup. :) 10x developers exist just like 10x musicians, 10x marathon runners, or 10x chess players exist. It may take a world-class musician a week to write a masterful symphony but it would take me way longer. Perhaps I'd never produce anything great so that musician would be infinitely better at it than me. Great chess players beat amateurs at…

The only reason DOOM was finished in 1997 was because John Carmack recognized himself as the 10x developer and started living in-office until the game was finished. Obviously it's important to not let silly titles distract you, but stepping up to the plate like this is how organizations get stuff done.
Post reply on HN