Misidentifying Talent (2022)
danluu.com
danluu.com
Here are all the poor incentive systems in tech companies:
1. Technical sourcers look for keywords in resumes - they are already biased towards prestige such as top schools or past employers. Root Cause: Recruiters are incentivized to meet a hiring number. They don't want to take chances. They just want to meet their quarterly quota. Poor incentive system. No ownership among anyone in management to improve this.
2. Hiring process looks for leetcode ability - biased towards people who have time to practice these problems. These problems are completely unrelated to the actual work. Hiring managers have no incentive to do any better. Heck, managers are not skilled enough to do any better. Poor incentives. No ownership of this among hiring managers.
3. Performance reviews based on poor definition of performance - biased towards whatever garbage management is measuring, often secretly. Management is not skilled enough to understand projects, so they rely on proxies such as lines of code, number of commits. Engineers know these are poor proxies.
Companies try to take biases out of this process by inserting hiring committees - who use these same properties to identify a new hire, or make a promotion decision. All they did was add a layer of bureaucracy by removing the power of hire/promo away from the actual manager.
Ultimately, this industry is so delusional that they forget to ask simple questions such as "Is this person the hire we need? Will they be able to contribute? Do they have the potential to contribute?"
And for performance reviews, asking questions such as, "Are our projects going to yield the right outcomes for the company? Have we staffed people into working towards these outcomes? Are they on track to achieving these outcomes? If they achieve it, can they be promoted for performing well?"
That's all there is. But it requires good "leadership" that I have found to be missing in tech companies.
Management doesn't want to and doesn't have the skills to do this work.
You know you cannot just hire "best of the best of the best" you most likely can hire best of your market and only if you have budget/resources for that.
This counts also for management.
Get a company of 100 employees, I don't see a realistic scenario where you could simply hire and retain competent enough people to have all of them on "perfect skill level" or "above average".
For a company of 1000 employees, just hiring and building up to 1000 employees is years of work and people come and go.
For a small company of 10-20 people it is super hard to get anyone because lots of above average people look at a big brands to work for.
My experience is the opposite. In small companies I become a source of expertise that must constantly participate in hiring, marketing, etc.
That sounds like a bias towards people who make time to learn, not to mention interest and academic aptitude.
I don't know how you can frame this as something you wouldn't want to bias for. But I do acknowledge many great engineers will not have that skill.
It's understanding something, even if it's not the job skills. Can you imagine someone who performs well at these kinds of challenges being a bad hire?
It's no better than any other evidence of effort
> Can you imagine someone who performs well at these kinds of challenges being a bad hire?
I don't have to imagine; it tends to lead to hard-to-maintain 'clever' code, with little ability to deal with less-than-clear requirements.
I think one thing that's better is it has a hard IQ floor that can only be compensated with a huge amount of memorization and practice, but that's a worthwhile skill on it's own.
I've gotten way better at these problems from practice. Am I suddenly an amazing programmer as a result? I wish that were the case, but sadly I don't believe my job skills are improved at all.
That suggests we're measuring something fairly independent.
When we interviewed him, it was clear that he was a serious student, he was very smart, and that he would work very hard if we gave him the internship. As the hiring manager, I turned him down because of the lack of programming experience.
I was overruled by our CTO. Apparently, the candidate was a family friend of the CTO and the CTO had strong confidence that he would learn programming very quickly.
The Berkeley student was given the paid internship. In an 8 week period over summer, the candidate learned ios programming, identified a problem that was impacting customers, proposed a fix, and was able to release the fix to customers. When he demonstrated the issue and his fix to the engineering team, it was clear that he had spent long hours working with the app.
My lesson from this is that the best candidate may not be the one who appears the best on paper. More important is a very smart candidate who is willing to work very hard.
> My lesson from this is that the best candidate may not be the one who appears the best on paper.
My lesson from this is that nepotism rules the world.
There are countless unknown people out there who are very smart and willing to work very hard. Not many get the chance.
Story in here is not nepotism, it is just that guy had more opportunities than others but that is just the way life is. That is why for example going to university is important - not for knowledge or lectures - but for getting to know people who will most likely be working in the same field.
Due to nepotism.
We're all here trying to tell you that the grocery store's owner hiring his own daughter is literally, indisputably, paradigmatically nepotism, but somehow you don't seem to get it.
Rather, we are lamenting the inherent unfairness that is often overlooked or not acknowledged.
Otherwise, what are you really mitigating by refusing to hire your CTO's nephew? If he's a strong candidate, it's not pathological and calling it nepotism is pointless at best. Otherwise if CTO's nephew turns out to be a weak candidate and is let go then again, it's completely normal. If CTO's nephew is a bad hire, yet he's retained, then it's nepotism.
>nepotism
>noun
>nep· o· tism ˈne-pə-ˌti-zəm
>: favoritism (as in appointment to a job) based on kinship
>>accused the company of fostering nepotism in promotions
(is kin) -> (preferred for job)
and (is kin) -> (insider knowledge that they're better than expected) -> (preferred for job)
Specifically, (insider knowledge that they're better than expected) -> (preferred for job)
would make complete sense and would not be looked down upon. The source of that knowledge is problematic on a societal scale, but not on an individual level.Is transitive racism okay in your worldview?
Person A and B are equally great for the role but cannot do a triple summersault to land on a beam, so neither can get past the interview stage
But… A’s uncle who went to Harvard with a high-up says “that boy is good” so they hire him on that. B posts on HN about getting no feedback and submitting their CV to 100 firms.
Nepotism has happened.
Later A may/may not succeed, turns out he does in this N=1 case.
Otherwise, what are you really mitigating by refusing to hire your CTO's nephew? If he's a strong candidate, it's not pathological and calling it nepotism is pointless at best. Otherwise if CTO's nephew turns out to be a weak candidate and is let go then again, it's completely normal. If CTO's nephew is a bad hire, yet he's retained, then it's nepotism.
"As the hiring manager, I turned him down because of the lack of programming experience. I was overruled by our CTO."
What's the sample size?
> supports that the CTO was a better judge of the candidate.
No, it doesn't, because the hiring manager's choice never got a chance to show what they could do. Besides, the fact that the nepotistic hire worked out could have been just dumb luck. After all, hiring is a crapshoot, especially hiring interns.
Regardless, this was clearly nepotism, and the question isn't whether the CTO could judge the candidate, the question is whether favoritism was shown toward a family friend, which is indisputably the case.
No definition I've come across requires the candidate perform poorly, where have you come to this conclusion?
Nepotism is bad when it promotes idiots to positions they can’t handle. It is GOOD when it ensures talent gets cultivated.
That the CTO was family friends with the kid was terrific luck. Everybody won.
The intern fixed 1 bug in 8 weeks. That hardly seems to be star quality.
And I assume it is not the only thing he did, presumably he did that in addition to what he was hired for. When he found that bug, he probably did a good enough impression so that the company let him work on it.
Most interns introduce more bugs than they fix, and are usually assigned internal tools and other noncritical code for that reason. A net 1 bug fix is already a good score.
Why is that important? That may be personally impressive, but it's unclear how the company benefits from the intern starting from zero.
> And I assume it is not the only thing he did, presumably he did that in addition to what he was hired for. When he found that bug, he probably did a good enough impression so that the company let him work on it.
That's a lot to assume with no evidence. None of this was stated by the OP.
I’ve personally hired people into their first dev jobs out of bootcamp, self-study, and other non-traditional backgrounds.
You can reliably pick winners by testing for mental acuity and observing how much they learn in a short period of time.
An internship is just a glorified interview process. They found a good future employee
Why are you assuming that? The OP said nothing about the intern become an employee, much less a good employee. You'd think that would be mentioned if it were the case.
No, it's not.
Experience? ;-)
"As the hiring manager, I turned him down because of the lack of programming experience."
This candidate was already filtered out, but the CTO put him back in.
Let me put it this way: if companies can't figure out who to hire, then the fairest selection method wouldn't be nepotism, it would be random. Give everyone an equal chance to prove themselves.
Companies don't optimize for fairness, they try to maximize quality on their end. And many, including myself, would argue that nepotism as flawed as it is, is still superior to random selection.
That's an unsupported claim, not an argument. :-)
In any case, if people want to argue in favor of nepotism, then I don't want to hear another word about "meritocracy".
This is actually faint praise that this was the right decision. Finding and fixing a bug (there is no mention of how tricky or complicated it was) is often the warm up project for an internship to get them familiar with the code base before doing something more ambitious.
The fact that the presentation demonstrated “spent long hours working with the app” and not some particular insight or ability is also telling.
As others have mentioned this whole story smells of nepotism.
1. Figure out which personality traits work in the job and select for them in the first set of interviews 2. Then refine those candidates per skill sets as if they have the right personality sets than training can fill the skill gaps but if personality does not match the job no amount of training will change that bad fit into a good one.
I now think that he was much more qualified, on many levels, than #1.
He was not particularly qualified, on paper, but his extracurricular stuff showed great initiative (or "agency" as the article likes to mention). Choice #1 had all the right qualifications, but they probably thought they could do better, elsewhere. They were probably right.
My company didn't pay particularly well, so I spent a lot of time, looking for "raw material," and my management style was one that was geared towards keeping people for a long time.
It seemed to work.
I think a big "blocker," in misaligning talent, is "gatekeepers with a template." These could be HR, middle management, and, quite often, other team members, who are often asked "Could you work with them?".
We have a "template," and reject anything that falls outside that.
Here's an example, from me:
I'm retired, and was looking to find ways to help others, coming into the field. There's a fairly well-known, and successful NPO that helps disadvantaged folks to become techhies. I really liked that, and thought it would be a perfect fit.
I'm probably one of the better Swift programmers, around these parts, and have also had many years of experience doing seminars and short-form training exercises. People seem to like the way I teach. I don't really have any ego wrapped in it, and I'm not the world's best public speaker, but I also go to fairly extreme lengths, to ensure that my training is complete, well-supported, leveled to the student, understandable, and scoped.
They wanted me to proctor JavaScript LeetCode tests.
I was disappointed, and said "Thanks, but no thanks." It's not an ego thing. I would be a lousy JS proctor. That's not my area of expertise. There are, literally, tens of thousands of local folks that are better than me at that.
It’s not a job. I’m not going to fight for it. If they don’t want me, they won’t get me. Simple.
We'd just make each other unhappy.
I can understand if JS was all they taught, but I already knew they would have definitely been able to use what I had.
As it turned out, not doing that, cleared the decks for something much better. As a bonus, I’m actually able to mentor a couple of younger folks through the ins and outs of releasing software.
It’s all good.
Previous discussion: https://news.ycombinator.com/item?id=30423442