Hacker News new | ask | show | jobs
by cm42 1349 days ago
Since we're speaking loosely and broadly here, I want to throw in that "80-90% is just showing up" notion, which I've found to be more-or-less true.

A while back, I estimated myself around 7-15%, based on an average of "average ___" searches (not remotely rigorous). I was shocked, given that I'm an essentially-average software developer in an essentially-average developer role. I would have been impressed with a "top 30%", given all the talented people in the industry who are paid much more than I. I tried a few more things, and eventually felt pretty confident in a "top 10%", but it still didn't feel right.

To me (and I'm not disagreeing with you here), a "top 1-5%" engineer is one of those mysterious dragons that codes with toggle switches in octal deep inside of a lair of some kind, has invented or described an entire domain of knowledge, language, and/or operating system, etc. - and I certainly don't feel 2-5% away from that, lemme tell ya.

It was kind of like waking up to find out that my name and email address had been entered into an archive of humanity's most important code - all the critical stuff we would need to start over if a meteor struck and brought the dinosaurs back or whatever. It was burned, IIRC, into a golden USB drive, a platinum LaserDisc, and that special paper librarians like, stored forever in a super-sekret vault deep in the Arctic, next to the seeds, I assume.

Certainly, the handful of miscellaneous patches, like un-hard-coding a variable here-and-there, in relatively minor projects, and on features nobody was really using anyway, doesn't make me or my code that important (or even necessary, in most cases). And yet, when the future archeologists knock over a seed pot and discover the Ancient Golden USB Drive of GitHub Commits, I'll be on that list.

I especially like the thought of it being displayed, context-free, in some alien museum, a la Linear B, with a note that says "We have no idea what this means", or maybe "developer complains about security vs. business priorities in comment about encryption". Anyone else get the Arctic Code Vault Contributor badge?

Anyway, as I rationalize it, the Top 20% are the ones already here, doing it, making my Top 7% more in line with my gut feeling of "a little above average sometimes, but by no means exceptional". The 80% are those people merely thinking about learning to code, only considering contributing to open source, abandoning starter kits and tutorials 3/4s of the way through, etc. Maybe they'll join us one day soon.

This also demystifies the dragon: we're making that same error that saw Bernie Sanders' "Top 1% of The 1%" (The 0.01%, or 0.0001) diluted into Bill O'Reilly and Tucker Carlson's "Top 1%" and, eventually, "Top 10%" (a thing I especially resent as a self-described 7%-er).

These errors are so common - hopefully I didn't do it in that parenthetical - that Google's on-site prep material included a handout specifically on this topic.

Google, I said! Have you heard it's 10x harder to get into Google than Harvard? They only accept something like 0.2 (or was it 0.2%?) of candidates.

Harvard! That most selective of institutions, whose discrimination is only surpassed by the most exclusive of exclusive organizations, like Google and Wal-Mart.

Only some exceedingly-small percentage of candidates, with the denominator being every half-assed application of every entirely-unqualified candidate ever submitted, even get invited to an on-site interview. What an exclusive club!

I haven't been admitted to any of them, of course - I blame it on answering the steal-the-pen question wrong on the WalMart kiosk when I was 17 and it ending up on my Permanent Record - but it might also be because I never even applied to Harvard. Carlin was right: it's a big club, and [we] ain't in it.

So, by some metrics, I guess I am in the top 1-5% of developers, but those metrics are sketch.

So, as one of humanity's most important top 1-5% developers, I can say with great authority that, if you're already out here reading this and have typed "git push" at any point in the past week, you're much closer to that "top 1-5%" than you think. You CAN do anything* you want! (Including enjoying your weekends!) The Magic, I'm told, is in the work one has been avoiding.

P.S. If you do it this weekend on just about any open source project, you'll officially, definitionally, be an open source contributor! (And I promise the recruiter bots will find your email and you'll have more (interview) offers than gift card scams in your inbox in no time)

1 comments

> 80-90% is just showing up

They key is, showing up consistently over time for years and years. That's the key, and that's the hard part

> If you do it this weekend on just about any open source project, you'll officially, definitionally, be an open source contributor!

Nobody cares if you made some 1 line change to some OSS project. Any meaningful change requires more work and effort

Yep and yep, but the latter just illustrates the point.

On the spectrum of unemployed fry cook to 6-figure tech job, "attracting recruiter spam bots" and "attracting overly-clever recruiters" isn't far from actually Getting There and/or Making It - so long as you keep showing up and making an effort. Definitely not a quick life hack.

Long-ish term career moves are really the only reason I check on that stuff anyway, and get more value from the relative rankings of, say, language popularity and jobs, than any number I come to. I work in a job I like, in an industry I like, in a language I like at a very fair rate, so I'm not too concerned about it, but part of that is from figuring out what were dead-ends/non-starters for me, identifying niches, etc. (+1 for the ikigai thing, too).

> Nobody cares if you made some 1 line change to some OSS project. Any meaningful change requires more work and effort

For sure, if you're presenting yourself as "a [project name here] developer", but the conversation in interviews I've had has tended to center around, say, how we used to use [that horrible old thing] until we found [shiny new thing].

I'm pretty sure I've never impressed anyone with my OSS contributions, save maybe one person who somehow remembered an exact bug and considered fixing it, but I think we were more impressed we both remembered the bug than the handful of lines of code it took to replace `insecureConnections: true` with `insecureConnections: $insecureConnections` and add a `caCerts` property to be passed in to a constructor somewhere.

So I guess again, it was the pattern of making minor fixes ("just showing up") rather than being some super l33t hax04 genius or major project maintainer or whatever that got me the credit that mattered.