Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Both are debatable and IMHO are often true, but "No programmer is worth more than any other", i.e. "all programmers have exactly the same worth" is a straight-up straw man.

It's an exaggeration (I probably should have been more clear), not a straw man. Obviously big corporations have different levels of engineers, but many of them claim engineers top out at a certain point. Your claim that "no programmer is worth 10x the average" does imply this. If programmers max out at being only 3x better than average (or whatever the multiplier is), to get beyond that level one needs to be a manager.

Interestingly, tech companies, trading desks, and other places where technology really matters frequently don't view things this way.



> Your claim that "no programmer is worth 10x the average" does imply this

Those claims are debatable and often true, not always true. As opposed to straw men which aren't even debatable.

I've seen less actual 10* engineers and more high-functioning individualistic coders who maintain whole systems on their own, and at some point leave the company (most people change jobs at some point, but in their case it was accompanied by "nobody understands what I do" noises) whereupon it's unmaintainable (in one case, running on their dev machine against explicit instruction with no source or login details).

Your company may hit the jackpot and hire a budding Linus Torvalds or John Carmack, but the odds are bad and the guy who thinks he's a rockstar is more likely to be a good coder, but an egotistical person. Lots of actual musician rockstars are assholes too.

A well-functioning team is a much better bet. Lottery tickets are a poor investment.

I know that trading desks may disagree, but IMHO that's a defect of the stock-market gambling culture that they come from (where someone's guaranteed to beat the market this year. Find them and call them a genius!). I've worked in various tech companies, and that mindset is not universal there. It's not even welcome to me.


You have somehow re-defined software engineer performance as a mere function of company bottom-line, and ended up measuring performance of individual software developers by proxy of long-term company performance. There are two problems with it.

First, not all software engineers actually do commercially work on commercial software -- as a quick example, Con Kolivas, who is an anaesthesiologist by day and kernel hacker in spare time. Others may work on commerical software by themselves, without any external team or management involved; think Colin Percival. I would even wager a guess that some of the best software was created in a non-commercial way, say, Linux kernel -- at least the early versions of it.

Second, the impact any software engineer has on company bottom line is much affected by other aspects of a company. In a symbolic notation, you could say:

  BOTTOMLINE_IMPACT := RISK_MANAGEMENT(SALES(TEAM_MANAGEMENT(THE_SOFTWARE_DEVELOPER(EXISTING_CODEBASE)))).
Invoking the Amdahl's law -- even if you had a 10x SOFTWARE_DEVELOPER, performance of the whole system will be limited by the other factors. In my limited experience, the RISK_MANAGEMENT (of software development and use) part is the least understood one those days.


> You have somehow re-defined software engineer performance as a mere function of company bottom-line,

Absolutely.

While everything you say is true, building the right thing is as important as building the thing right. If you are working for a company, and what you do doesn't benefit that company, you might as well go home.


There is a difference between linear extrapolation and the butterfly effect. That seems to be the part that many miss. Startups (by necessity) show sensitive dependence on initial conditions. Mature companies (by design) do not.


Is it your belief that no "high-functioning individualistic coder who maintain[s] [a] whole system on their own" can also produce a maintainable system? If one can, that's your 10x coder right there.

I'm getting the impression that you believe 10x coders exist but merely dislike them.


By "high-functioning" I meant "good enough to be recognised as above average, but not 10 * good". My point about maintainability is that long-term benefit can be a lot less than it looks in the short term, when "individualistic" people who "know they're very good" are involved.

> If one can, that's your 10x coder right there

It can happen, it's just not likely enough to stake your business on. What I dislike is the cult of rockstar programmers. If there are 100 job ads for rockstars, are there really 500 actual rockstars showing up for those interviews? No. All this cult is doing is encouraging harmful egoism.

It's all in the first few lines of the article:

> Myth of the Rockstar Programmer: Calling out rockstars demotivates the team. Telling someone they are a rockstar may cause them to actually believe it




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: