
Just Don't Hire 0x Engineers - waffle_ss
http://zachholman.com/posts/0x-engineers/
======
beat
Smart and stupid are not opposites. In fact, they happily co-exist in the same
brain.

Thinking that you can avoid stupid people by only hiring smart people is
naive, and misses this basic truth.

~~~
CodeMage
Why are we so keen on redefining words? I'm genuinely curious about this. Is
it political correctness? If not, what is it?

"Stupid" is pretty much defined as the opposite of "smart". You might be
thinking of "unwise" or "ignorant" or "inexperienced". Or maybe you're
thinking of "untalented" or "incompetent". None of those are "stupid" and
their opposites aren't "smart".

For example, I'm good at programming, I have a good ear for music and I
absolutely suck at drawing. None of that necessarily makes me smart or stupid.
As a matter of fact, I'm pretty sure people wouldn't call me "stupid at
drawing".

"Smart" and "stupid" are measures of a characteristic, just like "tall" and
"short".

~~~
sliverstorm
You've never met someone with a stunningly sharp technical mind, but the
social intelligence of a gnat?

~~~
Cookingboy
I have, and I'd call that person smart. He could be unobservant, insensitive,
socially awkward and all nine yards but he's still smart.

~~~
sliverstorm
Colloquially that person would probably be called smart, but their (social)
actions might be described as stupid. A smart person can be prone to doing
stupid things.

~~~
irishcoffee
A smart person can do stupid things, and a stupid person can do smart things.

This does not disprove GP's point. Rather, you seem to agree.

------
overgard
I think the problem with the concept of the 10x coder is that it assumes "10x"
is an attribute of the person, rather than a complex interaction with the
environment. It's sort of like when they say about an athlete "he just wins".
Well it could he just wins _on that team_ because that team is a really good
match for his skills, and the coaches did a good job, etc. You could also say
"he just wins" because he has a knack for finding situations he will excel in
compared to ones he wouldn't.

That doesn't mean it doesn't take some special sauce to be a 10x developer,
but my observation is most of the things that 10x developers do are teachable.
For instance, they almost always are concerned with removing small
inefficiencies from their work (learning keyboard shortcuts, using better
tools, asking a lot of questions, etc.), and when they do find they're in a
situation where the environment tends to pull people down to the mean, they
usually move on quickly.

This is just my opinion, I'm not a manager, but if I were a manager I think I
would be more concerned with how to "coach up" talent more than finding a
unicorn.

~~~
mikekchar
For the last 2 years I was acting as the coach of a team in this way. I've now
moved to a remote location and can't really coach effectively any more, so I'm
mostly just lending horsepower to the cause at the moment. In case you are
interested, I'll give a little bit of background: I've got 20-25 years as a
developer (kind of lost count) and had spent 5 years teaching English
immediately prior to doing this coaching role. I also have experience as an XP
coach on several teams, but on those teams I had much more focus on process
improvement, than on skills improvement.

When I started at this position, money was very, very tight. While we had
managed to get and retain some good people due to a variety of factors
including luck, there was no realistic way for us to be able to afford to go
after and hire the top people in the industry. So our strategy was to train
the people we had and help them develop whatever potential they had. I think
it was quite a risk for the management team to hire me because they had to
believe enough in the staff that the cost of my salary would be compensated by
the improved performance of the team. Not many management teams trust their
staff to this degree (it is one of the best things about working on this
team).

There are a few observations which I will make. First, it's a really, really
difficult job :-). Even though I have probably more relevant experience doing
this kind of thing than most people in the industry, it stretched me pretty
far. Had I not been very motivated from the start to do it, there are probably
many times I would have just given up. I will speak of some of the
difficulties a bit later on.

By and large, I would say that we were successful. One measurable result is
that we had very little attrition during that period. I think the fear many
companies have is that if you spend money training people that they will just
leave for a better paying job. It is a reasonable fear and you do have to be
careful to track the development of people and to try to offer salary
improvements as their skills grow. I think it is fair to say that we were not
always successful in this aspect (due to very real constraints on our budget
at the time), but that people valued the personal growth aspect of the job
enough to decide to stay anyway.

In many cases, I think as a coach your role is not so much to tell people how
to do their job better, but simply show them where they are not performing
well. The thing about programmers is that they are both intelligent and also
problem solvers. Even if the person is not functioning at the top of their
game, I think this generally holds true, at least compared to the general
population. I found what worked best was to try to formulate the problem in
terms that the person could understand and then encourage them to find their
own solution. Of course you have to give tips and guidance from time to time,
but most programmers can improve themselves quite a lot simply if you show
them what is lacking.

Of course this is not always easy. I'm just going to have to be blunt. Not
everybody wants to improve. It is a testament to the team that I barely ever
had to deal with this, but I think it is a real possibility in general. What I
_did_ have to deal with is the problem that sometimes people don't want to
improve _right now_. Sometimes their life is full and they just don't have the
capacity. This is really, really difficult because you have to wait until they
are ready, never really knowing if they will ever be ready. This is pretty
stressful for the coach.

The other main problem that is difficult is when the person you are coaching
simply doesn't believe that what they are currently doing is sub-optimal. In
fact, they may think exactly the opposite -- that what they are doing is
amazing and that everybody else is crap for not doing it. To some extent, this
happens to everybody. The kicker is that it happens to me (the coach) too. So
you often find yourself in some pretty intractable situations where you are
pretty sure that you are right, but then so is the other person. You are paid
to coach them, but if you get it wrong... you could potentially do a lot of
damage.

So the main thing here is that you need to be pretty flexible in allowing
people to examine their ideas. Even if you know you are right and the other
person is wrong, once you have broached the subject you have to let them find
their own way. It can be extremely painful as you watch the person make the
same mistakes over and over again until -- finally they get it. At some point
you have to trust that the person _will_ get it, while doing your best to do
damage control for the mistakes they make while they are learning.

If you have read this far, you may have noticed me use the word "trust" a lot.
I think this is the most important part of doing a role like this. If you
think the people on your team are crap and can't be trusted to improve, then I
think the job will be impossible. If you can believe that no matter what
situation you are in today, the person/team _will_ blossom then the job is
(barely) possible ;-)

How you get that belief in the first place and how you maintain the belief and
trust over a long period of time will largely dictate the level to which you
can succeed as a coach, I think. If you ever get a chance to do this role, I
highly recommend it, but you need to be prepared to do a lot of sole
searching.

~~~
overgard
Thanks for the insights, it always helps to hear first hand experiences.

------
fsk
The thing to really fear is the toxic hire, the /10 or /100 worker. He'll ruin
your business while deflecting blame to others, driving away your best
employees.

Don't fear the mediocre worker, fear the toxic worker.

~~~
JoeAltmaier
Or Napoleon's take on the matter:
[http://giantrobotlasers.com/post/2486135590/someone-once-
ask...](http://giantrobotlasers.com/post/2486135590/someone-once-asked-
napoleon-how-he-decided-where)

~~~
stygiansonic
Similar to Warren Buffett's quote[0]:

 _" You're looking for three things, generally, in a person," says Warren
Buffett. "Intelligence, energy, and integrity. And if they don't have the last
one, don't even bother with the first two."_

It's a favourite quote of his, mentioned in this speech[1] as well, around the
1:55 mark.

0\. [http://theweek.com/articles/451860/why-clever-lazy-people-
ma...](http://theweek.com/articles/451860/why-clever-lazy-people-make-great-
leaders)

1\. [https://www.youtube.com/watch?v=EEKZI-
Pka7I&t=1m55s](https://www.youtube.com/watch?v=EEKZI-Pka7I&t=1m55s)

~~~
ArkyBeagle
This.

"How do I know I am doing the right thing?" Every second of every day, you
have to keep that in mind.

------
x0054
Perhaps it's also important to recognize that sometime someone who is the
second best, or even just "good" at something, rather than "the best," might
actually be a better person for your company. Having worked with people who
are at the pinnacle of their field I have noticed 2 trends:

1\. Such people tend to be very good at what they do, and largely bad at most
other, even related, fields. This is not one of those tired stereotypes of a
genius who is bad at social skills. There is a good explanation for this:
someone who managed to become one of the best in their field, probably did so
through concentration of their knowledge in that field, to the exclusion of
others.

2\. People who are the best of the best can sometimes overspecialize. You know
the old saying, to a hammer, every problem is a nail.

In a small company with a few employees you can not afford to have such a
person unless their field of expertise IS the domain within which lies the
problem you are trying to solve, and even then, you should be careful. In a
large company, you can have more specialists, but be careful as well.

It is also important to realize, as the author of the article pointed out,
sometimes good enough will do. You do not need the best iOS dev or the best JS
person if all they are doing is creating a front end for you new revolutionary
AI engine. You probably want to go for the best AI person you can find,
however.

~~~
beat
My mother says a specialist is someone who knows more and more about less and
less until they know absolutely everything about nothing. Likewise, a
generalist knows less and less about more and more until they know absolutely
nothing about everything.

This applies to looking for "top experts", and also to "full stack
developers".

~~~
e12e
This is true in a useful sense. The more you know (about anything worth
knowing) -- the more you realize you've yet to learn.

The more holes and short-cuts you're (painfully) aware of in tools and
libraries everyone use every day, to get stuff done.

To be aware of how artefacts are made, is to be afraid. Be that artefact
sausages or firewalls. The trick is to then learn enough to know which sausage
to eat: or at least find a level of acceptance that lets you enjoy the stuff
that tastes good, even when you know how it's made.

And after lunch, maybe you'll serve a json rest api with php.

~~~
beat
I'm a generalist myself. I've become decent at a wide-ranging set of skills -
cooking, feminist lit-crit, Arabic drumming, odd things like that. I've become
a good but not awesome expert at a few things - configuration management,
guitar, and others.

An important exception to this entertaining aphorism is observed in the
Dreyfus Model of Skill Acquisition. Becoming an Expert (in the five level
Dreyfus model) in something makes it much easier to become Competent or
Proficient in other things. This has certainly been my experience, as things I
learn in one area apply to learning others.

The result is that people who never commit to expertise in anything struggle
to achieve proficiency, or even competence in anything. They're neither
generalists nor specialists... they're just trapped.

------
vezzy-fnord
Not hiring hexadecimal constant engineers sounds like good advice, though I am
unsure of what those entail.

That said, I think the article itself is pretty uncontroversial. It's only
inevitable that you will mainly find people who hit neither extreme.

~~~
darkmighty
Theorem:

E[X] = E[X]

Proof:

E[X] = E[X]

<vigorous applause>

~~~
whyaduck
Ladies and gentlemen, I present to you the most un-Google-able joke ever
written!

~~~
ravishi
Damn! Now I'll never be able to _get it._

------
inestyne
I've seen brilliant people who can't deliver and mediocre players that get
shit done day in and day out. Software is built upon hard work and compromise;
it's more of a contact sport than it is a craft. Despite what people with
little or no real world experience would have you believe.

There are people who would rather look good then play well, and then there are
true ballers who never even thought about anything but winning the game by any
means necessary.

~~~
marktangotango
Awesome imagery, you've expressed something I've been circling for a while.

------
FLUX-YOU
This is related to the 10x debate, but kind of tangential to this post:

If you are actually 10x and super-duper smart, you're probably undervalued as
an employee at any company. For example, companies have actively colluded to
lower rates, so you are fighting to be on top of a sinking ship. Although
salaries are probably still rising, you should really be a consultant if you
actually want to get paid what you're worth. [0]

If your 10x comes from natural talent and work ethic, you should seriously
consider moving to security (app, embedded, web, whatever) to help prevent
governments from robbing the interwebs of privacy and security. [1] I'm
blatantly arguing for 10x people to strive for a 'higher calling' and to get
out of line-of-business software development if they are actually this person.
In all likelihood, you will probably be better compensated as a consultant in
this side of the software field anyway. I do realize there are other noble
pursuits outside of security, so good on you if you're chasing that already.

[0] [http://www.kalzumeus.com/2015/05/01/talking-about-
money/](http://www.kalzumeus.com/2015/05/01/talking-about-money/)

[1]
[http://en.wikipedia.org/wiki/Edward_Snowden](http://en.wikipedia.org/wiki/Edward_Snowden)
etc

------
leap_ahead
The way most companies conduct interviews is one sure way to never hire the
best talent anyway, even if they actually wanted it. So they end up with
mediocre people, those who have memorized all the right answers to standard
questions.

At the same time, these hiring practices push away the real talent who has
better things to do with their time than to play the game. This talent is now
sitting somewhere and building a startup of their own. Perhaps even a
competitor of yours.

~~~
ozim
Oh no, I never got job for giving out memorized answers to standard questions.
Those kind of interviews are not working for me, because I can give quick
memorized answer when I am stressed. I was never angry on person asking in
that way, only on myself that I fell easily into this trap. Worse part is that
I know it and just after finishing phone call I realize fully that I was silly
again.

It is easiest way to weed someone out, quickly ask couple canned questions and
if you got standard reply then you got your "not hire" mark.

------
MCRed
C Players think that they are A Players and believe in only hiring A players.
This has been my experience for the past 30+ years. I've worked with people
much better than me and much worse than me, and hired many people for startups
over that time.

It is a good idea that if you find someone who is smarter than you, then you
probably should hire them.

But the whole "we're looking for A players only" crap is the mantra of
mediocre companies and in my experience has resulted in really messed up
hiring practices (Eg: Amazon passed on someone I know (because I worked with
him) was smarter and better at programming than I am... while hiring me. Not
that I'm bad.)

The basic root of the problem is, if you think you're an A player then you
think you're at the top of the heap. This means you're not actually aware of
people enough to know the people who are stronger than you... which means you
can't hire people stronger than you.

Also, I've seen really good people be mismanaged to the point where they
aren't really contributing what they should. The difference between an A
player and a C player is sometimes really silly stuff- like not giving them an
office or otherwise constantly interrupting them, or refusing to give them
specs, etc.

This pursuit of the best of the best also sends you down rabbit holes of
looking for college graduates (only) who come from ivy league schools. There
are a lot of people coming out of the Stanford CS department, I believe, that
I would not hire. (Can't say for sure, because I'm not in California) But the
skills of producing great grades at Stanford are not the same skills that
produce great software at a startup. Not that Stanford students are bad, bu
that it's not really a metric for success.

However, the "over achiever" "type-A" "A player" types tend to think it is,
the conflate conformance in the pursuit of success with quality, and that's
not accurate.

Yes, you need hard work to graduate from stanford, that's true, and that's a
key element. But you also need innovation and critical thinking, and
unfortunately, colleges these days actually undermine that. Generally, anyway,
I'm not saying all college graduates are mindless sheep. Just that people who
are more independant thinkers are less likely to go to college. Or less likely
to have gotten a CS degree. (I was studying physics for instance.)

------
nowarninglabel
Always love Zach's writing. Personally, with hiring and growing an engineering
team I've found the key component is to just not hire anyone toxic. Beyond a
certain size, teams have to have well-defined processes to function, and toxic
people will rail against and subvert the process.

I was actually thinking a lot about this the other day, and it's one of the
big differences between say a 5 person engineering org and a 20+ person
engineering org. In a 5 person org it may be super valuable to have an
independently minded superstar who avoids process but gets things shipped fast
while a larger org will actually turn that person toxic by imposing too many
restrictions and process on them for them to follow their normal patterns.
This is why I think there are some folks that are really good that just jump
around from one early stage startup to the next, so they can be mostly free
from the bureaucratic politics of large organizations. I wanted to think with
the right culture that bureaucracy and politics can be avoided, but my
experience has been that eventually these things will shape how your org
works, and like Zach says, that's not a bad thing if that org is filled with
average people, as long as the process is designed to help those people do the
best job they can at large team scale.

~~~
dba7dba
Just want to add that many like to ridicule bureaucratic politics of (large)
organizations. But in a way, bureaucracy is needed when a organization gets
bigger.

~~~
Sammi
You guys are framing a 10x as an entrepreneur in the EPAI model:
[http://www.adizes.com/management_styles/](http://www.adizes.com/management_styles/)

------
pavlov
The post makes a very solid point:

 _" Quality of individuals is only one part of what makes an organization
great. Sports is rife with examples of the nimble, well-connected team
triumphing over the team of individual superstars."_

However the author doesn't really expand on this theme. How does a startup
that's not obsessed with hiring "A-level rock stars" groom its people to mesh
them into a great organization, a well-connected team? This is not elaborated.

The conclusion of the post is: _" Sometimes people just want a greasy
burger"_... Which does not conjure up images of a team that is greater than
the sum of its parts, unless McDonalds somehow qualifies :)

~~~
aout
I agree with you but I think the point pretty much explains itself. Team play
and willingness to produce the best your customer wants (and not the 3-star
best) is exponentially efficient when you start to grow a team.

However I wouldn't say the same things when it comes to the first version of
your core team. Every "10x" developer can work with 3 people but are they
still "10x-effective" (do they even exist?...) when incorporated in an
existing 5/6/7 people team? I don't believe so.

------
techbunator
Our typical filter question is: "are you happy to use PHP, C++, Mongo, Java?"
Not that we have those in our stack yet, but it quickly weeds out those that
sneer at any or all of that list. Let them destroy someone else's startup with
their wanky tech attitude.

We are more interested in problem solvers.

The best answer we had was from employee # 2 - "if it gets shit done, and we
ship, sure, why not?".

~~~
kinghajj
Why do they need to be 'happy' about it, though? I'd be willing to use any of
those, but I wouldn't enjoy working with them as much as I would with others.
Does that mean I have a "wanky" attitude and immediately disqualify me?

~~~
ozim
This one is good question. Why do all hiring people want you to be UBER happy
to work for them and if you are not extremely aroused when you think about
their company name they will not want to hire you.

I can be super happy to work for company after year or so when I get to know
how it is to work there. Before that I can be interested or looking forward to
get to know how it is working for them.

~~~
Dewie3
Yes, some employees' obsession with people having to _love_ their jobs is so
weird. I can't imagine someone looking at a job description and exclaiming
"wow, I love this!". Maybe after a year, though. When they actually know what
they're supposed to do, and are invested in the work on some level.

~~~
Dewie3
> Yes, some employees'

Meant to write 'employers'.

------
PopeOfNope
Am I alone in thinking that the entire conversation around hiring A players is
one big inside joke played on us programmers? What do we get out of dredging
this particular argument up again and again and again? It's like vim vs emacs.
Not only is arguing about it pointless, even if you were to come to a
consensus about it, what would it matter?

I apologize if this seems overly negative, but it really does seem like
programmers reach for any opportunity to be viciously divisive.

------
Tloewald
I find there are no 0x engineers. What there are is -3x engineers.

------
ryan-allen
While a business may seek to hire a 99 percentile or even a 90 percentile,
keeping them under your thumb and doing what you want, and keeping them on
your side is a whole other kettle of fish.

90+ percentiles have a lot of opportunity and mobility. Why would they want to
work on your VC funded cat comparison platform?

------
cgabios
Great article.

As an aside: Michelin Red guides are like Yelp, but Francophile-centric, uses
dedicated reviewers instead of crowdsourcing and without the extortion. The
issue with Michelin is that places outside France aren't rated very often (6
months to 2 years). And like a newspaper, the physical Red guides get outdated
as soon as they're printed. Most people are better off with Yelp, especially
if they can determine whether an establishment pays the Yelp "tax" or not.
Speaking of which, a great personal project would be an invite-only, private
Yelp scraper that doesn't play by the "tax" ranking rules (don't get busted by
keeping it anonymous, obviously).

------
seahorse
I doubt Zach himself agrees with his article's title.

Because the title isn't his point.

His point is, and I quote: _" What I think is bad is that there’s so much
pride and focus on The Best of the Best of the Best, With Honors._"

Which doesn't conflict with 10x. If 95% of the world's best software is
written by the top 5% of programmers, the programmer who isn't in the top 1%
and barely made the cut at the top 5% is still exceptional.

It's true companies seek pain avoidance rather than pleasure seeking behavior.
But pain avoidance also gets you Windows instead of Linux or Mac.

If the question Zach is asking is: "is there such a thing as a 10x engineer?"
the answer is yes.

The story from philosophy class was educational though.

------
cargo8
I understand your sentiment, the reason that this is such a stigma in the
industry is because if you do have the ever-elusive, ever-exclusive, high
performing team - a single person who doesn't fit in (not saying in what
aspect, could be culture, skill, collaboration, communication, etc) will ruin
the entire team and the team's momentum.

------
euphoria83
I couldn't understand the point of the article. No one will consciously pick a
candidate they feel will perform badly.

~~~
pandler
I think the point of the article is that what you described is reality and the
"We only hire the best" is the illusion.

~~~
euphoria83
That definitely was a good thing. Sometimes, an obvious thing doesn't become
obvious unless it is pointed out. Yup, it makes total sense. Every company
claims to hire and be filled with rockstars. That's statistically impossible.
I guess, 90% of the companies are stating what they wish for, but know that
ain't true.

------
lifeisstillgood
Once you have started a business, built a product, found a way to market to
profitable customers and now need to hire an employee, I say 80% of the "I
need 10x people" part is over.

Founding a company is hard - so hard I fucked it up. You need to _be_ 10x.
Then you can hire who you like.

------
entangld
Isn't this also called the "soft bigotry of low expectations."

------
peterburkimsher
The headline made me expect hexadecimal codes for classifying engineers. Read
the article, disappointed. 0x48 0x65 0x6C 0x6C 0x6F 0x57 0x6F 0x72 0x6C 0x64.

------
edgarvaldes
>After about a minute of this we all just got bored.

I'm sorry but, can't we all daydream for more than a minute? How can you get
bored so fast?

~~~
r00fus
One person may not, but a group certainly can. You might have several
candidates, each of whom at least someone doesn't like, and end up choosing
one that everyone can "settle on".

You could also be so desperate for growth that you hire someone with high
hopes knowing full well it's a bigger risk that you'd want to take if you had
more time to choose properly.

------
jasode
Why is this type of post upvoted to the front page on HN? I thought HN
attracted folks sympathetic to the creation of startups.

 _> The hip thing nowadays is that your software company should hire only
A-players instead of B- or C-players, or focus on engineers that are ten times
better than anyone else. [...], but I think the sentiment itself is the wrong
question to ask._

If people are starting companies, it's not the wrong question to ask. The
first 5 programmers hired with fast dwindling startup funds all need to be
ultra talented and smart. The competition will kill you with your staff of B &
C programmers. When you get to the size of Microsoft with 128,000 employees,
you can afford to have some deadwood C, D, F, and 0x employees wasting cubicle
space. When you're a startup, you'll go bankrupt because the C players are
floundering around not generating enough value in the product to help make the
business succeed. It's not a matter of hip or not hip -- it's a matter of
survival.

 _[...]the average company is pretty average. Not everybody can hire
exclusively top-tier people. And you know what? That’s fine._

If the readership on HN is plugged into the startup scene, hiring mediocrity
_is not fine_.

EDIT to reply to the replies:

Most of the replies think of "A players" as an absolute ranking on a world
scale. Linux Torvalds, etc. That's not what I'm talking about.

Hiring employees or finding a marriage partner is hill-climbing algorithm.[1]

The startup would have some notion of an "A-player" suitable for the company's
goals and business standing. It does not mean you try to lure AI expert Peter
Norving away from Google Inc to code a bash shell script because you insist on
the "best of the best of the best." Whatever pool of candidates your startup
can realistically attract, over a constrained time frame, funded by a limited
budget -- that's where you find your Local Optimum. To you, you hopefully find
your "A-player" although others may view that same candidate as B/C player
compared to to someone like Linus Torvalds.

 _> , the reality was that most of the companies using our hiring software
were most interested in finding people that don’t suck._

That's totally opposite from my observations. Startups are _most interested_
in finding great people. They only "settle" for people that don't suck as a
consequence of reality. Their hill climbing didn't find their "awesome"
programmer so they cross their fingers and hope it works out. The blog post is
saying most companies actually _prioritize_ "don't suck hires" over "great
hires". The blog has it backwards and that is an _outcome_ instead of the
_motivation_.

As a meta comment, the advice from Warren Buffett, Steve Jobs, Bill Gates,
Paul Graham, the YC Sam Altman startup school vids with the dozens of guest
speakers (angel investors, VCs), etc all stress the point of hiring the best
people you can.

The only sources of advice for "just aim for hiring people that don't suck"
are obscure writers of blogs. Why is that? And why does that sentiment have to
be delivered as explicit "advice"? Since you can't hire all A-players, you'll
inevitably end up with mediocre employees that don't suck even when you don't
pursue "don't suck" as a primary goal.

[1][http://en.wikipedia.org/wiki/Hill_climbing](http://en.wikipedia.org/wiki/Hill_climbing)

~~~
jheriko
> If the readership on HN is plugged into the startup scene, hiring mediocrity
> is not fine.

i'm curious what this means exactly. having worked for startups in my area of
things (graphics, games) i can say that 99% of the startups i see here only
require mediocrity in my specialty area at best. most of them would do fine
with a bunch of juniors and just one moderately experienced engineer to keep
them focused.

solving a simple problem with a sledgehammer language on top of a tower of web
stack is not the place you find the exceptional engineer, at least from my
native code, down to the metal perspective, but its what most tech startups
are about, and lots of them are doing very well with positively mediocre
engineers.

i understand there is a different skill set involved in the really niche areas
of pretty much anything... e.g. where you need to squeeze the most bandwidth
efficiency out of some obscure type of database query by juggling SQL and PHP
or .NET libraries or whatever... but that sort of 'excellence' is pretty
mediocre from my perspective too.

its like mechanics who prefer working on the F1 car to the tractor. its not
even specific to software. however the vast majority of mechanics will have to
suck it up and do day-to-day work on pretty normal stuff, just like
programmers at tech startups.

so from my perspective it seems like there is no choice but to hire mediocrity
actually...

~~~
azernik
And I would go even farther and say that the article is even _more_ applicable
in the startup setting: you can get good work out of a decent engineer, but
one actively bad hire can be very costly in very small company.

------
ryandrake
The way I see it is a little different: Take how much value you add to the
business and subtract your compensation. You're either above zero, around
zero, or below zero. In other words, you're either adding lots of value,
adding very little value, or subtracting value. All this hand-wringing about
whether so-and-so is a 2X or 4X engineer is unnecessary--the vast, vast
majority of people you'll work are not even above zero so it's kind of
pointless. This has pretty much been true in most places I've worked.

You'll have a handful of people who are actively destroying value by just
being there. These people will make your project later and buggier if you even
give them commit access. They're the toxic personalities who, although
nominally might be helping to improve whatever they're working on, are causing
better people to leave or be less productive because of their personality or
attitude. These people must go. I haven't worked with too many, but you can
spot them pretty quickly, usually the first time they open their mouth.

Then, you'll have the folks who just clock in and do something every day, but
they're not really adding or subtracting value--they may as well be furniture.
This will be, by far, the vast majority of people you work with throughout
your career. They're sorta competent, probably really nice people, but at the
end of the day not exactly fueling the engine of whatever the company is
trying to do. Depends on the company to a certain extent, but you'll generally
see them everywhere. It's many of the people you currently work with. It might
even be you, too. It's not really good or bad to have these folks around,
they'll work on a project and you'll break even on it or maybe even meet some
internal rate of return. There's really no reason to actively not look for
this group.

Finally, there are the people who are net value-adds. Some people call them
rockstars or unicorns or whatever. Whether they're 2X or 3X or 5X doesn't
really matter--they're NX where "N" is a positive number, and that means they
create more value than you pay them. When companies say they're looking for
the top-5% or top-1% developer, they're really looking for anyone in this
group (given the company's salary range), regardless of their particular "N"
value. You'll encounter a number of these people in most companies. Some
companies have more than others.

Someone can go from one group to the other either by getting better/worse at
their jobs, getting a better or worse role fit, or taking less or more salary.
Top talent at one company might be "furniture" at another one simply because
they make more there--more than the value they can add.

The people you really want to actively avoid hiring are the net negatives.

~~~
s73v3r
The middle one is not adding "very little value". It's adding the amount of
value that you are paid for. Likewise, the first one isn't adding "lots of
value", but undervaluing the value that you bring, meaning you're not getting
paid enough.

------
Dewie3
> It turns out, it’s much easier to focus on avoiding pain than it is to
> envision pleasure.

You just have a one-dimensional imagination. Don't want to shoot heroin up
your veins forever, or have an infinite orgy? Just imagine playing paintball
or walking on the beach, the cool sand running through your toes... or
whatever. The mind is your oyster.

I'm sure if you were in Heaven, you wouldn't be worrying about making every
moment the most exquisite you have ever experienced. It's not a competition;
just chill out. You're in Heaven. Or day dreaming, same difference.

~~~
carapace
So strange to me that this comment is getting downvotes.

How is this the only comment in 100+ to mention the incredible and bizarre
fact that a class full of people could imagine hell but not Heaven?

------
mahouse
By reading the title, I thought it meant those people who use an Internet
handle starting with "0x", which is really annoying.

~~~
JackFr
I read it as "Don't Hire Hex Engineers"

~~~
caoilte
That makes a lot of sense.

I read it as "Don't Hire ex Engineers"

I was probably thinking of managers...

