Hacker News new | past | comments | ask | show | jobs | submit login
How my life was changed when I began caring about the people I did not hire (brookeallen.com)
599 points by chl on Jan 8, 2015 | hide | past | web | favorite | 328 comments



Hi, this is Brooke, the original hiring manager. I'm new to HN so please excuse me if I violate protocol.

I agree, life is about treating people well. However, although I find hiring is probably the single most satisfying thing I did on my job, it was very hard emotionally because in the case of nearly everyone I don’t’ hire it is because they say “NO” to me, and boy, rejection hurts. But at least I have a job and my candidates usually don’t.

More later but first…

If my site is unresponsive there is this on slideshare: http://www.slideshare.net/BrookeAllen1/brooke-allen-has-a-be... I've generalized my approach to hiring all sorts and describe it here: http://qz.com/88168/how-to-hire-good-people-instead-of-nice-...

When I'm lucky enough to talk to programmers I'll describe it this way...

I don’t want to be stuck in Von Neumann’s bottleneck so rather than me processing candidates in series with the question “Who do I want to hire” I take an OO approach and send a different question, “Who wants to work for me?” to my candidates so they can work on it in parallel.

Since hiring is an elimination process I let them eliminate me in the first rounds. I don’t say “no” but I have to take a lot of it, which can be hard on the ego, particularly if I judge people too early and start to want one person over another. Desire is at the root of suffering. (Any fans of the move The Tao of Steve? Formula for getting the girl: 1) Be desireless. 2) Be excellent in her presence, 3) Let her desire you.)

I try to be the most flawed (e.g. honest) but-striving-to-be-excellent person I can be in front of my candidates and hope they will be the same for me (and magically they are). If we’re not going to be who we are before we start working together who do we plan on being afterward?

Because eliminating candidates is the name of the game, I concentrate on the negatives and that way there are only positive surprised later. Arguably many of my “best” candidates might eliminate themselves, but I’m not looking for the best – I can never afford them anyway – I am looking for the most appropriate for my budget, which I state early on and is almost never subject to negotiation. You cannot increases your desirability to offer to work for less, and if you are worth more than I can afford than I’m sorry, but I cannot afford you.

I want what I call hidden talent; those good at doing a job but bad at getting one. After all, the last thing I want you to be good at on my job is getting the next one. I'll help you find a better job before I hire you because afterward we've got to hunker down and get some friggin' work done.

Because I form an intentional temporary community of my candidates, and task them with something hard but meaningful that benefits them (like learning a new skill and/or helping each other find work) then by the time I say “yes” to someone everyone else agrees with the decision. In fact, in 10 years only once did a person tell me he thought I had made a mistake by not hiring him and the other candidates were so outraged they jumped all over him and one – who happened to be a lawyer – offered to defend me pro bono if he tried any funny business.

I never heard from him again but it is my great pleasure to say he is an exception in that regard and I count a few of the people I haven’t hired among my friends. This is a wonderful side-benefit because as I get older it is harder to make new friends, and it is certainly unwise to treat employees as friends as some do.

I seldom tell individual candidates what they did wrong, not because I am shy, but because it can be hard to take and I’m fairly tactless. However, I will offer a class on how to find work in which I anonymize specifics enough so as to benefit those who can identify themselves. Also, most people don’t do anything seriously wrong other than be unqualified or unlucky; no shame in that.

More later, if you’re interested.

After 30 years I’ve retired from the capital markets and they will do fine without me, but the markets for human capital are severely broken. Because I’m not ready to die, stop working, or give up on having a life's purpose, if you would like me to help you crack this nut then please do not hesitate in contacting me.


> hidden talent; those good at doing a job but bad at getting one

I really like this. If you're bad at getting a (good) job then employers safely assume you would also be bad at the job - it's too risky otherwise. But often that isn't the case, because there's a lot of "hidden talent".

What can we do to give those people a fair chance? We need effective ways to discover hidden talent. The process you described worked for you, but it doesn't seem practical. Too time consuming for both the employer and job seekers, and not rewarding enough for those who don't get a job out of it.


Are there ways to help those talents get together and start their own companies? Otherwise, they may go to interviews and keep getting rejected.


That's a possibility worth exploring, especially with services like https://assembly.com popping up. Starting a company is still a huge risk compared to being an employee though, and a good employee might not make a good entrepreneur.


Do you think those people who are not good at selling themselves are going to be good at convincing people to buy their stuff?


That depends on why they're bad at selling themselves. For instance, if they get ridiculously self-conscious when the conversational focus is on them, that shouldn't get in the way of selling something else.


Hi, I'm Noah and I head BD for Better Work World, the organization I have started with Brooke to help firms hire the way he did. As for the above comment, this is true but the larger point is that, if the job isn't explicitly a sales position or doesn't require gaining internal agreement (like, say, many managerial roles)`one's ability to sell one's self in an interview is somewhat irrelevant, wouldn't you agree? Think about it: if you are a coder and happen to have several social anxiety issues, you would probably be an awful interview. But who cares? The market for coders is so hot it seems that has been largely accepted, albeit implicitly, but for less hot positions, not so much. We believe candidates win and hiring managers win when you focus on getting people to DO the work as opposed to talk about doing the work. When Brooke hired this way he found people he would have never hired through reviewing resumes, so thats a win for both of them, and those whom he did not hire-- many of whom had been unemployed-- would usually quickly find jobs elsewhere because they were given the opportunity to do relevant work, network, etc. To me, that beats the standard, "what's your biggest weakness?" line of questioning any day of the week.


Did I read it right when you said you were hiring in Jan 2014, but retired in Feb 2014? May I know if the capital markets have become so broken too that you decided not to participate anymore? I think this will be helpful to all aspiring algo traders.


The hiring was made in 2004 not 2014.


I've done a LOT of interviewing, recruiting and ultimately a lot of saying "no" to people.

Over the years I've landed on a series of personal rules on how to do just that.

1. Always explain rationale around the No, to help them improve 2. Always let people down gently reinforcing positive notions as well, you never know what state of mind they are in. 3. Always respond to requests for more information

This takes me a lot of time in my professional life, but it's making me a happier person. Ultimately, it's people's lives you're dealing with. You don't owe anyone anything, but life is about treating people well.


Then there is the perspective from having heard "no":

1. Never believe anyone's rationale regarding their "no". They acted on instinct, and made up a clever story to afterward to convince themselves it was a rational decision. Or worse: it was some prejudice that they are consciously covering up. Or perhaps some internal reasons that they don't want to discuss with outsiders like sudden news that affects all hiring activity (but this news can't be made public yet: even the fact that there is such news).

2. Don't take it personally.

3. Never press people for more information: waste of time.


I don't think kazinator is wrong about this. And yes I take the commenters point below that they take hiring very seriously. Study after study shows that people are much less objective than they think. And that they have an impression that they rationalize.

I have seen people be very strongly influenced negatively or positively by a word or phrase on the resume that in the scheme of things wasn't that important. I am sure I do the same thing, but I am not aware of it.


Agree with this. No amount of formality and forced stoicism is going to eliminate the myriad biases that creep into every minute action and decision we all make every day. Hiring is a notorious minefield where believing in your own impartiality merely demonstrates a lack of self-awareness, or worse.


I cannot upvote your comment ( and the parent ) enough. If the labor market in tech was a perfectly competitive market where all parties had perfect information, hiring would be a lot more straightforward. However, as you state, cognitive biases and lack of rationality on both the supply and demand side muddy the waters.


Many orchestras have found a fairly simple solution to the problem - https://duckduckgo.com/?q=%22blind+auditions%22+hiring+music...

I'd hope to have a similar 'audition' approach that included not only basic programming skills but also –and as a junior level programmer, more importantly– learning skills. For example, commenting or debugging internal framework code (something that all interviewees are experiencing for the first time).

In regard to the linked article's approach - I couldn't afford to take three weeks off of my current job, to learn a new language, even if the training gave me a slim chance of a new job (I still have bills to pay). That said, I do think wish there were more apprenticeship type approaches for junior devs.


That would be pretty cool-- and although software development is meritocratic, it's not as meritocratic as those orchestras, right?. They simply want the best musicians PERIOD, whereas lots of software companies would probably hesitate to hire someone with a lot of talent but a toxic attitude.


> and although software development is meritocratic, it's not as meritocratic as those orchestras

Software development IS NOT meritocratic and neither are orchestras. There is just as much politics, networking, and problems with "value" in orchestras as in software development.


This sounds a bit cynical and negative to me. Probably if your company is too big then these are quite inevitable. But at least at where I work now I feel free. There's enough transparency, candidness and equality among all. Don't know whether things will change in the future, but a relatively "clean" state is certainly possible, at least according to my current feelings.


Unfortunately I'm in bind with first impressions. By nature, I'm a massive introvert, which has always caused me problems. But I'm also coming from a toxic workplace environment (our boss regularly berates employees in front of other employees, to include profanity and yelling loud enough to be clearly understood through multiple walls, and he's been know to literally rip doors off their hinges, just because he's mad at the world). In the handful of interviews I've been on, I've tried to focus on the positives of potential new jobs, instead of the negatives of my current job, but I always seem to slip up and mention something about the toxic nature of my current position. The combination of these two factors means I have a really hard time "making a good first impression".

I recently completed a programming bootcamp and when I explained this to several of my classmates they made a point of highlighting what a great programmer I am (relatively to our peers) and that I'm a really great person to work with "once people get to know me". But, there's the crux of the matter for me - in an interview situation, if I'm ruled out in the first 30 seconds then nobody "gets to know me" or my programming potential. To add to the irony, about 2/3rds of my current co-workers know that I'm looking for a job and they regularly make comments to me about how much they don't want me to go, followed by comments about understanding my need to work in a less toxic environment.


I also realize that no two people or situations are alike, and that I have no idea what you're going through!

But from a fellow introvert who has had success with interviews: an interview is a good example of a social situation that's fairly "hackable."

By hackable I mean an interview is something where, at least compared to an open-ended conversation with a stranger, there are certain... branching paths of conversation?... that you can practice ahead of time.

The inevitable questions about why you're leaving your current job are definitely a thing you can practice. I don't think it's necessarily bad to mention some negatives regarding your current position and why you want to get out of it. If it didn't suck in some way, why would you be looking for a new job?

I think a good answer to the "why are you looking to leave your current position?" question would involve:

1. What you like about the new company ("You guys seem to hire really good coders, you're growing as a company, and I like your approach to A, B, and C.")

2. What you want to achieve at the new company (ex: "I'm looking for an opportunity to do less support and more coding.")

3. Optionally, something about what's bad at your current company. Preferably in a positive context. (ex: "I'm really excited about building modern web applications, and I'm not able to achieve that at Company XYZ because we've committed to supporting IE6.0 until 2050 because it's what the owner's mom uses.")

Anyway, it's not easy, but it's.... hackable. Unless it's a really weird interview, most of the ground you'll cover is rehearseable. Good luck!!


Thank you for the advice and good luck!

In all of the interviews I've been to recently, the interviewers continue to press me if I focus on their company and don't say something about why I want to leave my current employer.

After a particularly bad interview, I did start practicing for these types of questions and I'm getting better, but that's still relative. Part of the problem is that I've been in the toxic workplace so long and I'm so desperate to get out of it, that thoughts of escaping push to the front of my brain while I'm in interviews and I either blurt out something I shouldn't [1] or I just freeze up (think deer in headlights), typically a combination of the two which is even worse.

[1] I don't blurt out anything quite as bad as "my current boss is an ass", rather things like "My boss doesn't believe in bug trackers and I think they're extremely important." So far so good, right? But then there's a pregnant pause and I catch myself blurting out, "At least a client threatened to take away our business if we didn't start keeping bug records, so now we have 3-ring binders and paper forms to record our bugs. But that doesn't do any good when the same bug is reported multiple times in every binder and the boss doesn't actually look at the bug reports or give anyone else access to the code." At which point the looks on the interviewers face tell me I've blown it again. (Very true scenarios about our bug reporting and my idiotic blurting out in an interview.)


Haha. I've done very little interviewing/hiring, but if I was the interviewer I'd probably laugh along with you at that point - especially if I had just pressed you for more details about why you're leaving the current job.

Maybe it's how you're saying it, and not what you're saying? Is there somebody you could practice with? Somebody who could point out body language or tone of voice or other cues that could be giving interviewers the wrong impression about you?

One other possibility...

Maybe round out that story by mentioning how you (or the team you were a part of, even if you weren't the lead person on the effort) tried to solve that problem in a constructive way. "We gave our boss a presentation on three popular, low-cost issue trackers that we tried and liked... to no avail." Surely your next employer will make some decisions you don't agree with - they're wondering how you will handle them!


I certainly think part of my problem is the how I'm saying it. Unfortunately I don't have any friends who would give me constructive criticism (they'd give me plenty of criticism in jest, just none of the constructive variety). I wish I had somebody who could do this for me!

I have to admit, I never considered trying to recover after I get the "look" from interviewers. In fact, I had provided multiple recommendations on bug-tracking software, to include setting up demo servers for several different packages (because of those demos and related discussions, our interns started using both bug-tracking software and GitHub for their projects - so that was a definite win).


  > I certainly think part of my problem is the how I'm saying it.
First of all there's a chance you might not be coming across as awkwardly as you think you are. You know how it is when you're nervous - our perceptions (and our perceptions of how others see us) can get skewed.

If you truly are coming off awkwardly, what's the real problem there? The problem is this: the interviewer is wondering, "How is this guy going to interface with the rest of the team here if he's this awkward? Does he even know he's awkward?"

So... you can address both of those unspoken questions head-on. Mention that you tend to get nervous in interviews and when meeting people for the first time and that it's something you overcome fairly quickly and that you tend to develop really good working relationships with coworkers. (Because that's certainly true from what you've said)

  > I wish I had somebody who could do this for me!
If you live near Philadelphia I'll do it for a beer haha. Is there anybody non-technical that might help you? Siblings, parents...?

  > In fact, I had provided multiple recommendations on bug-tracking software, 
  > to include setting up demo servers for several different packages (because of 
  > those demos and related discussions, our interns started using both bug-tracking 
  > software and GitHub for their projects - so that was a definite win).
If I was interviewing you I'd find this impressive. You offered a constructive solution and, even more importantly, your solution got traction. Kudos!


Thank you so much for the advice and offer!

> ... you might not be coming across as awkwardly as you think you are ... I have no doubt that I am.

> ... you can address both of those unspoken questions head-on ... I honestly never considered this, but will in future interviews!

> If you live near Philadelphia... Unfortunately not.

> Is there anybody non-technical that might help you? Siblings, parents...?

Unfortunately I tend to have family and friends that are overly critical in a really bad way. The last time I asked my mother to look at my resume I was berated for 30 minutes for being so stupid, not using my god-given-skills, etc (i.e. nothing useful but lots of hurtful). I don't even bother asking the guys in my family, they're far worse than my mother. My friends really are great friends in many, many different ways, but tend to be truly lousy at giving constructive criticism. For example, I told one friend that I was going to be building an JavaScript application. She instantly went off on the evils of Java, how Apple won't run Java, and didn't let me get a word in. When she finally finished her anti-Java tirade, I tried to let her know some of the many differences between JavaScript and Java, but until a couple of other friends started quoting from wikipedia entries and intro tutorials, she wouldn't believe me that they really are two different languages. (I promise, she has been a really good friend in other ways!)

I do participate in a ton of meetups. Would it be appropriate to ask a peer from a meetup group to be a proxy for an interviewer?


Yeah that sounds like a great idea!


So get better at being a fake extrovert for 90 seconds. Programmers as a class of people are shy and awkward. Not hard to be not the shyest and awkwardest around.


Just be yourself. Interviews are not equal to acting like an extrovert, and any attempt to "fake" will likely backfire. But indeed I have to admit I was quite shocked at how incredibly unsociable and inexpressive those programmers are at my first work. Probably it's just because I'm not working at a world-class place yet and the sample size is way too small, I can only assume.


I've always figured that the thing about an "absolutely impartial" standard is a mirage. Go way too much into it and what you create will be deformed, mechanical processes which largely deviates from the thing's original intention and end up worse than what it intends to replace. Look at any huge national exam system(China for example) then you'll perfectly understand what I mean. Students get absolutely no space for personality, and nothing else than abilities to do specified types of exams get evaluated. No holistic abilities at all. A process with space for subjectivity certainly isn't perfect, but it allows so much more to be evaluated than purely mechanical and many times deformed narrow "skill sets", if so can be called. I remember reading Peter Thiel say PayPal didn't recruit a guy because "he loved playing basketball", although all other attributes looked great. That might be a little bit extreme but it says a lot about how hiring, and generally admission processes, isn't a precision science, and that's actually probably how lots of decision-makers want it to be. It requires dynamism, interactions and gauging between people. Simple blind mechanical assessment results aren't equal to "justice" in any way. It's the same thing as you cannot just choose your friends nor your mate by "assessment scores". I feel many commentators are stressing too much on another extreme of things here.


I honestly don't know: Is a toxic attitude somehow not a problem in the orchestra world?

Because you'll never convince me that no musicians have toxic attitudes. Even at the symphony orchestra level.


Most people don't have a toxic attitude, and you can always fire them if they do.


Blind auditions make sense if the candidate will be working independently, but they (deliberately) don't assess cultural compatibility.

Do you prefer the most skilled person, or a very skilled person who gets along well with your team, understands your industry, and cares about your mission?


Orchestras are not a collection of independent workers. Everyone works together as a team and chemistry is very important.

> your team, understands your industry, and cares about your mission

When teams are largely made up of a certain kind of person, using this as criteria for hiring is a sure fire bet to make sure your team stays homogenous and never grows outside of its little comfort zone.


I agree to some extent that we all have biases and that the reason given for a turn down might be individual and idiosyncratic; however, if you're getting similar feedback from different interviews, then one might want to reassess things.

So, yes, individually maybe they're not valuable, but in multiplicity they can become meaningful.


And the fundamental game theory of the interview processes: all the incentives for both players are to lie, lie, lie.


They're not wrong in that people often rationalize their 'instinctual' choices, but to imply that nobody is cognizant of any of their thoughts or biases and that we're all slaves to our lizard brains is a bit of a stretch.


There is a TON of data out there demonstrating we all have subconscious bias. Moreso than we believe. Even of our own groups! We are slaves to our brain!

This is a good summary of some of the data:

http://www.cnn.com/2014/11/26/us/ferguson-racism-or-racial-b...

Professors at the University of Chicago and MIT sent 5,000 fictitious resumes in response to 1,300 help wanted ads. Each resume listed identical qualifications except for one variation -- some applicants had Anglo-sounding names such as "Brendan," while others had black-sounding names such as "Jamal." Applicants with Anglo-sounding names were 50% more likely to get calls for interviews than their black-sounding counterparts.

Most of the people who didn't call "Jamal" were probably unaware that their decision was motivated by racial bias, says Daniel L. Ames, a UCLA researcher who has studied and written about bias.

"If you ask someone on the hiring committee, none of them are going to say they're racially biased," Ames says. "They're not lying. They're just wrong."


I'm not from the US, but don't many American blacks have white-sounding names? And I assume those blacks are more likely to come from families that are wealthier and better educated. If yes, the other explanation could be that the employers were considering the name an indication of background, i.e. a "Jamal" is more likely to come "from the hood" (poor neighborhood) than a "James".

The point is, "discrimination" is sometimes just applying statistics. Just because some statistical factors correlate with race doesn't mean one is being racist; they are just optimizing their selection process.


Jesus... did you even read the article you are commenting on? It isn't just one example. And it isnt about being racist, its about racism without racists.

> One study conducted by a Brigham Young University economics professor showed that white NBA referees call more fouls on black layers, and black referees call more fouls on white players. Another study that was published in the American Journal of Sociology showed that newly released white felons experience better job hunting success than young black men with no criminal record, Ross says.

>"The overwhelming number of people will actually experience the black man as having the knife because we're more open to the notion of the black man having a knife than a white man, " Ross says. "This is one of the most insidious things about bias. People may absorb these things without knowing them."

Anyways, this kinda stuff has been shown to happen with plenty of different groups. Attractive vs ugly, fat vs normal weight, woman vs man, old vs young, tall vs short. We aren't as rational as we'd like to believe.

...And what the hell does someone coming from a poor neighborhood have anything to do with anything? I grew up poor, I don't see how that is relevant to my job skills. I'd love to knkw why I'd be optimized out of a selection process. Furthermore, your resume usually has your address on it, you don't have to guess.


> did you even read the article you are commenting on?

No, I was just commenting on the logic of the quote in the parent comment, which I find faulty. I'm not saying people aren't racist, or subconsciously racist; I'm just saying that you can't reduce any statistical effect down to racist, while other explanations are just as possible.

> And what the hell does someone coming from a poor neighborhood have anything to do with anything?

I'm pretty sure that if you run statistics, you would find out that people from poor neighborhoods are more likely to be criminals, violent, less educated, less intelligent. Is it their fault? No, obviously not - they were never given a chance to excel (or rather, they had to overcome many more obstacles). But I think it's the responsibility of the government (or charities) to help such people, while it's the responsibility of a business to, well, do business, with the best employees it can hire.

Btw, I'm not saying that you should take the above into account. I just oppose the logic that it's always "racism". Because then you could equally say, it's racist to prefer people from Harvard, because Harvard discriminates against people from bad neighborhoods, because they have lower SAT scores.

> Furthermore, your resume usually has your address on it, you don't have to guess.

Oh, I didn't know. Mine doesn't.


> No

I'd really encourage you to read it an other articles on implicit bias; they're really important issues that have disastrous impacts.

> I'm pretty sure that if you run statistics, you would find out that people from poor neighborhoods are more likely to be criminals, violent, less educated, less intelligent.

The problem I have with this is that it's a hunch that sounds reasonable, but there's no data to support the claim. I think we need to be especially careful in situations with implicit bias to vet all of our assumptions, because in aggregate, they have really negative impacts on large subgroups of people.

Here's a link to the source document for the linked article: http://www.povertyactionlab.org/publication/are-emily-and-gr...

That article references other journal articles that review exactly what you're talking about, varying only location. It appears that it helps, but helps whites more. I didn't read that article (I'm at work; only have time for so much research, which probably should be no time at all :P)

> I'm not from the US, but don't many American blacks have white-sounding names? And I assume those blacks are more likely to come from families that are wealthier and better educated.

The article says, "Each resume listed identical qualifications except for one variation... names"

I looked into the underlying source article and they list and control for the education of the applicants, which means there's no need to judge their education by their name, since you already have it.

I think the problem a lot of people have is that it feels a lot like we're saying everyone is racist, which feels a lot like an attack. To spin it a little differently, I'd personally say we're all biased. You could go through any long list of cognitive biases and implicit racial bias would just be one of the myriad everyone is subject to in some magnitude. It's a matter of being aware of it and really questioning your founding assumptions so you can reduce the bias where possible. The problem with racism is that it has real and lasting impacts right now on minorities, and is particularly insidious (if you ask me).

I really think it would be worth your time to read the article and follow some of the linked articles. It's really interesting information that's relevant.


>I think the problem a lot of people have is that it feels a lot like we're saying everyone is racist, which feels a lot like an attack

And the article I linked to says that. Individuals don't MEAN to be racist (or sexist, etc.) but are, because culture gives us biases. Addressing unintended racism is hard, because it isn't visible. We aren't attacking individuals.


Yeah. Implicit bias is tough. For anyone interested, there's a quick rundown here:

http://med.stanford.edu/diversity/FAQ_REDE.html


> > I'm pretty sure that if you run statistics, you would find out that people from poor neighborhoods are more likely to be criminals, violent, less educated, less intelligent.

> The problem I have with this is that it's a hunch that sounds reasonable, but there's no data to support the claim.

I would bet that there is data to suggest that "people from poor neighborhoods are more likely to be criminals, violent, less educated, less intelligent", and even data to suggest the other inferences tomp brought up.

However, the vast majority of people are not "criminals", at least in the habitual sense, and the vast majority of people from the 'hood are also not "criminals".

"When the incidence, the proportion of those who [are criminals], is lower than the [proportion of people from the 'hood who are not criminals], even tests that have a very low chance of giving a false positive in an individual case will give more false than true positives overall."


I should have said "there's no data you're presenting to support this claim."

The problem I have is with phrases like "I would bet there is" or "I assume those blacks [with white sounding names] are more likely to come from families that are wealthier and better educated."

It seems like an obvious correlation to make, but they're not based on data. I think it's in our best interest, intellectually, to take a few minutes and look for some information. The internet means it can take fifteen or twenty minutes to find a decent chunk of data to start working with. It won't make you an expert (and I'm by no means one either), but it can help highlight a lot of the nuance that exists in issues like this.


"I'm pretty sure that if you run statistics, you would find out that people from poor neighborhoods are more likely to be criminals, violent, less educated, less intelligent."

What you are describing is, specifically, racism.

http://en.wikipedia.org/wiki/False_positive_paradox


> I'm pretty sure that if you run statistics, you would find out that people from poor neighborhoods are more likely to be criminals, violent, less educated, less intelligent.

I'm pretty sure if you run statistics you would find that people from poor neighborhoods are more likely to have their activity be criminalized, cast as violent, denied access to education formally and informally, and have their intelligence devalued in comparison to a social norm that has implicit bias.


Less educated? Perhaps. Less intelligent? Now you're sounding like a bigot. Poor people in rough neighborhoods have survival skills and street smarts that the rest of us don't.


> Less educated? Perhaps. Less intelligent? Now you're sounding like a bigot.

This only needs to be true for a higher percentage of the represented population to say that it is more likely. It doesn't make someone a bigot to talk about statistical measures. (i don't have the stats in front of me but i'm merely commenting on your accusation.)


  > The point is, "discrimination" is sometimes just 
  > applying statistics. Just because some statistical
  > factors correlate with race doesn't mean one is being
  > racist; they are just optimizing their selection process.
It's still not very good thinking, ethically or pragmatically.

Even if you could 100% accurately determine a candidate's background from looking at their resume, and even if you could be sure that people from their background were more likely to be "bad" people[1] then couldn't you also look at "Jamal's" resume and conclude: "Obviously, Jamal must be a talented guy to rise above his background and pursue a technical career?"

In the end, it's all guesswork anyway. Companies would be much better served by sticking to the facts on "Jamal's" resume and checking themselves whenever they catch themselves inventing fictional histories for people based on a candidate's name and their own racist prejudices and stereotypes. _____ [1] To be clear: I don't agree that either of these things are true.


> The point is, "discrimination" is sometimes just applying statistics. Just because some statistical factors correlate with race doesn't mean one is being racist; they are just optimizing their selection process.

If your optimized selection process selects away from Black candidates it is by definition racist.


So, is college selection process in the US racist? The process is SAT, and AFAIK blacks and Hispanics score less than whites, who score less than Asians. Is is also sexist (as more women than men study)?

I don't think so. Correlation doesn't equal causation.

Edit: also, since more Asians and less blacks are accepted at good universities, if your company relies on the name of university when selecting candidates (e.g. a candidate from Harvard is more likely to have an interview than a candidate from an unknown state school), by your logic that's racist as well.


We have a term for that in US law - "disparate impact." And yes, if your hiring practices are found to have a disparate impact on a protected class, it is illegal.


All hiring practices have a disparate impact on protected classes. The only issue is proving it. God I hate such laws!


Hang, on that's not the definition of racism.

Racism is [dis]favouring a particular group based on race. If you choose the 10 highest scorers in a maths test in a group and the racial make-up doesn't match that of the group as a whole that's not racist.

One could manipulate your choice characteristics in order to achieve the racial profile that you want. That's serious conspiracy theory territory though.


That's not a very relevant study, since you (and Ames) are just guessing at the motive.

Many people are consciously racist, not in a "I want them all lynched" way, but in a "meh, I'd rather not meet with a black guy, probably a waste of time" way.

Of course they aren't going to admit that sort of bias. And again, you're just guessing at what happened.

There is indeed subconscious bias, and it rears its ugly head when we're observing people's mannerisms, their speech, their attractiveness, and yes, their skin color. But just looking at names on a resume, I'd argue the decision of calling someone back, based on the stereotypical application of their first name, is just a conscious bias.


It isn't "a study," It is an article summarizing a lot of the data on subconscious bias as it relates to race, specifically white/black in the US. If you read it you'd know that.

Huh? I never guessed that anything happened or guessing at any motives of anyone...?

The same resume experiment has been tested with male/female names as well.


You wrote "There is a TON of data out there demonstrating we all have subconscious bias."

Is that not guessing at motives (or the lack of a motive, I suppose)?

The point the above commenter made is that the CV example does not demonstrate subconscious bias. The researcher in question said they were "probably unaware", and said that "if you ask someone on the hiring committee", implying that they did not even try to measure whether or not this bias was conscious or not, but that they assume a lot of it was subconscious.

It's quite possible - even likely - they're right about that, but from the description it does not sound like that study is a good basis for demonstrating subconscious basis.

> The same resume experiment has been tested with male/female names as well.

Many people openly admit to biases against females in certain jobs, so that too is a bad example for establishing subconscious bias.

I agree with you that there is a lot of subconscious bias (and the article has much better examples, such as the knife example where there's no motive for people to pick the wrong person), but it's not clear that the CV example demonstrates subconscious bias. It certainly does demonstrate bias though.


Your missing the forest for the trees. Don't get hung up on one example I quoted because I found it interesting.


In addition to incorrect instinct, heuristics, and prejudice, there are also cases where a hiring manager's instinct correctly identifies problems with a candidate but where they then lie about the rationale because being direct would seem too insulting (e.g. "You strike me as a dishonest/unfriendly/lazy/[insert insult] person").


I don't do the actual hiring, but sit in in one of the two interviews, and as a team we carefully discuss each candidate. We've got a good team, the work environment & people are great, hiring process is solid enough. And we all agree that, almost without exception, we can tell within about thirty seconds of meeting them whether someone is likely to be hired. I assume this is overwhelmingly common? Bar sending a polite rejection letter, we would often prefer not to explain the actual whys[1], as often they are personal. Kudos to the OP (and yeah, it would make you feel good), but I'd tend to agree with you on this.

[1] that being said we always, always try to give some constructive feedback if asked.


If those first 30 seconds don't involve the candidate saying "I can't believe you bought those lies on my resume", or "Do I smell ok? I made sure to shower this month", your hiring process isn't actually good if you can prejudge it in 30 seconds.


I, seriously, don't understand how this works, unless your candidates appearance and accent are your main tools for judging a candidate. I would prefer to think that's not the case. If you were teaching a new member of the team to make such a decision, what would you point to?

What's more important, is I don't understand how anyone could possibly improve their 30 second impression.

I guess it could be that you believe this to be the case, and are remembering wrong. Why don't you note this down after 30 seconds, and then check it only after you make a decision to see if you were correct?


> I, seriously, don't understand how this works, unless your candidates appearance and accent are your main tools for judging a candidate. I would prefer to think that's not the case.

Companies would like you to think this, too, and law makers would very much like to think that their rules regarding non discrimination have any effect. The real situation tells another story.

But it's OK, companies can just include a nice stock picture of an ethically diverse group of people in business attire working together, an all is well.


If you're insinuating that this is the situation, then that's incredibly insulting (yeah, got to fess up, we hired that last guy because it would look good in the company brochure, we're just pretending he came across as a genuinely nice guy and someone who'd likely pick things up quickly, we all hate him really!)


You're the one who said that you decide whether or not to hire someone in 30 seconds.


> I don't understand how anyone could possibly improve their 30 second impression.

This is not actually very hard: start with good grooming, nice clothes, posture, confidence.

Of course, this doesn't change the fact that the hiring process seems... odd.


Yes, I admit there is an element of hyperbole (for 30 seconds probably read 30seconds - 5 minutes depending, and that alters if a candidate [ie for a junior position] is nervous and it takes time to get them to relax somewhat).

Appearance is important, and I've never been in an interview situation where it wasn't? Unless you're insinuating choice based on ethinicity (more aimed at _pmf_'s response to your comment). Which is completely irrelevant, as are accent/sex/other discriminatory factors that make zero difference to how someone is likely to work within a team.

As I've said in other comments, there is a serious element of external preselection based on geography and company sector, there's nothing particularly underhand going on.


> Which is completely irrelevant, as are accent/sex/other discriminatory factors that make zero difference to how someone is likely to work within a team.

This is just plain ignorant. Every single place I have worked has had its share of everyday sexism and racism, and that includes how current employees act in hiring interviews. You claim to not notice these things, but what you are saying is that you don't consider those things valid differences that may affect how someone perceives your team or work environment. How can you ever confront issues in your workplace by shoving your head in the sand?


> as are accent/sex/other discriminatory factors that make zero difference to how someone is likely to work within a team

Given the way you're talking about making a hire/no-hire in five seconds, I find it incredibly difficult to buy the idea that you're not taking that into account. You're glorifying the snap-judgment hire.

Because most people do, and a good hiring process takes that into account and counterbalances it.


Yuck.

Maybe your company sucks at interviewing? Maybe you're lucky and all of your candidates are good enough to do the work so you can cherry pick the ones that "fit"?

I've interviewed a reasonably large number of people, and I've worked with some folks who were good at interviewing, and there were many times where it took most of a day to figure out whether or not someone was worth hiring.

What I've found is that credentials, like a CS degree, are generally garbage and bear no relation to whether or not someone can code or problem solve. Experience and resumes can be misleading as well and rarely tell you for certain whether or not someone can actually do the work. Maybe something like half to 2/3 of the time it's obvious within the earliest portion of an interview that someone just doesn't have the skills. The remainder often takes a lot of work to suss out skill levels. Rarely someone will knock it out of the park and be an obvious hire. More often than not it'll take several interviewers concentrating on a few weak spots to see how weak they truly are and figure out if they're still a good hire. Not to mention the problems of trying to gauge someone's skill level in a high pressure environment where they will absolutely not be at their best.

Increasingly I get the impression that silicon valley is becoming like a giant frat house where companies just hire people they like and then bang out horrible code and fail to execute on projects until the VC money dries up or they get pity-acquihired.


There are several factors in play, which push it toward about 80-90% cases:

1. The IT world in the [geographic] area of the UK I live/work in is small (this is critical, because experienced candidates have a high likelihood of being known). 2. The company I work at isn't a tech company. 3. The company operates in an unfashionable sector.


This is universal and there are studies supporting it. Most of the interview is spent just affirming the initial impression. If the initial impression is good then they will spend the hour trying to find your good points and vice versa.

Shouldn't technical interviews be different? No, not really. In general the interviewer will give more hints to people he likes and more follow up questions to people he dislikes. After enough hints even the worst candidate will find the solution and get extra points for good collaborative skills. Similarly even the best candidate will stumble sooner or later and gets a mark for being argumentative if pressured enough.

Also notice how everyone says "We care about the thought process and not if the solution actually works!". This allows for their subjectivity to reign supreme. Things like "Your solution is wrong but I love your thought process!" or "Your solution is better than mine but you didn't think things through enough before implementing it" can be said about everything.

It is of course not that hard to do technical interviews correctly, you just need to have hard rules on what to accept and what to reject, what hints to give and when to give them etc. Any leeway for subjectivity will be abused by your subconscious.


And we all agree that, almost without exception, we can tell within about thirty seconds of meeting them whether someone is likely to be hired.

So you just admitted that you make your hiring decisions based on a snap judgment. OK. But that doesn't mean you can tell in 30 seconds is whether someone is actually going to be good at the job.


30 seconds clearly has to be an embellishment, but what tends to happen is that people make a decision pretty early on, and then conduct the rest of the interview in such a way as to make that decision into the correct one. The same answer can be viewed as "he got it mostly right, and in arriving at his answer, he clearly picked out the main salient issue" or "he got the obvious insight about the problem, but fumbled on arriving at a correct solution after that". Which one you go with depends on whether you've already decided the person is generally good or generally poor.

It's usually not a conscious thing, and it's something we're all prone to doing.


Absolutely true, and that's why it's important to make a conscious effort to fight these types of unconscious biases.


That + CV gives an extremely good indication.


Isn't that kind of suspicious? What are you really detecting in 30 seconds? I would suspect unconscious bias.


Yes, it will be biases.

But he's also right. There's been studies on this. Avoiding initial impression from dominating hiring decisions is incredibly hard and requires a ton of process that pretty much "nobody" does. Few places do much to handle even much more apparent biases.


Robert,

It's interesting that you're allowing hiring decisions to be influenced by what you think is best for yourself. What's best for the company can and should be a secondary concern. I've also found it useful to do the following:

1 Telling HR that candidates are flaky. It's easy to convince HR that every single one will leave in a year or less, especially these hipster kids that are interested in the latest startup.

2 Telling HR that candidates will take forever to add value, even if we have a smaller component that needs working on. This is still easy to convince them, given the ramp up to some of the prototypes that we do.

3 If the candidate actually makes it to the interview stage, I just finish my questioning and tell HR that the candidate has an attitude problem. This works even if they get every question right, or if they go into detail. The latter works especially because they think they're showing value, but they actually make themselves easy to label instead as arrogant up-jumpers with a "behavioral problem"- and I can easily convince my HR of that.

4 Telling HR that candidates don't know a specific tech well enough. Even if that tech has a ramp-up of a week or less. Because again, HR will take my word for it.

You're also right about those thirty seconds. It is the best and only approximation that one can make. Forget the interview, forget allowing them to show value, and if they do, they have an attitude problem.

Good luck with your recruitment efforts and next quarter.


Honestly I don't get what you're trying to say here at all. Sorry to be rude, but please either have something constructive, or don't leave senseless comments that are unpleasant and pointless to read.


Thanks for the perspective, but this is actually a standard practice in the software industry. Also, If you voiced that kind of attitude with many of the folks at my company, you would never be hired.


You're going to hammered for this, but it's absolutely true.

I find that phone interviews actually work differently - I've been able to turn around an unenthusiastic interviewer and I've been able to lose someone who liked me. For that reason, I think questions of actual code aptitude are best done on the phone, as that's the only place where you really can evaluate someone's thought process isolated from mitigating psychological barriers that occur during face-to-face interactions.

The icky reality is that face-to-face impressions are pretty much determined by how you smell. I think there are two reasons for this - first, there's the concept that people naturally want to be around winners and if you come in looking like a loser they'll be predisposed to dislike you in ways that escape their conscious thought. To work this one, try to chalk up a win before your interview (or get laid - again, hate that it works this way).

The second is that as people we unconsciously recognize whether or not the candidate believes that they're a good fit for the position. If you go in freaked out, you're going to set off a bad feel no matter how hard you try to cover it up. The feeling a recruiter responds to in the first thirty seconds is "this could work". You can't fake this, and this is why being as good as possible at what you do really does matter. It definitely rewards intrinsic overconfidence, but the more intrinsically underconfident people are generally smarter anyways and will eventually be so much better at what they do than their peers that they'll win in the long run. If you feel insecure in your ability to fill a position, get better at what you do and prove it to yourself by having other people evaluate your work - the feeling will go away eventually. Code review is scary for people insecure in their abilities, but it's easily the fastest way to wipe away pathological insecurity.


I feel this 100%.

You know from the resume whether the person can do the job. It's whether you want to sit next to them for 8 hours a day while they do it.

30 seconds? Yep.


> You know from the resume whether the person can do the job.

Do you? I remember reading a bunch of articles that asserted most people that come in for programming interviews (even if their resumes look solid) are useless.


I'm a Wintel systems & infra person rather than a programmer, so maybe it's different. But yeah, generally, I can tell from the way the thing is written, from the depth of previous experience, from the types of companies the person has worked at, from the career progression.

It also helps that I live in Melbourne, Australia - the IT world here isn't massive, and if you haven't worked with the person the odds are you know someone who has. :-)


Well the Melbourne part is definitely true. I was the first hire in a 100 person company that didn't know anyone else here.


I absolutely agree with this ,and where I live in the UK has an enormous effect upon hiring.


I have interviewed some people with impressive resumes that still sucked at programming.


I've sat in more than my share of interviews and my experience is almost directly opposed.

It certainly takes longer than thirty seconds (or a few minutes) to determine that someone who looks good on the surface, who is clean and neat and who sounds like someone who would fit in the team fine, should be avoided like the plague because they can't actually do the job.


See http://www.businessinsider.com/daniel-kahneman-on-hiring-dec... for a very different viewpoint. (The full details are in Kahneman's book "Thinking, Fast and Slow")


Yeah, I've read it, and tbh, we do interview for a set of role-specific traits for each position; we aren't a million miles off what Kahnemann suggests - however there are environmental factors that do skew things (IT world in geographic area is small which heavily affects prior knowledge of experienced candidates; not primarily an IT company; not in a fashionable sector).

I must say I'm not advocating snap judgement at all. I just think it is very common (as Kahnemann states). What he states as an ideal doesn't necessarily make an awful lot of difference in many situations; the snap judgement can very often be the same as the careful one (though external factors that partly force/aid preselection bias things greatly in this respect).


"I must say I'm not advocating snap judgement at all. I just think it is very common (as Kahnemann states). What he states as an ideal doesn't necessarily make an awful lot of difference in many situations; the snap judgement can very often be the same as the careful one (though external factors that partly force/aid preselection bias things greatly in this respect)."

Do you have any evidence at all to back this up? In general, people think they are much better at making decisions than they are, and unless you actually measure things empirically and track false positives/negatives, you are likely to fool yourself.


I'm extremely sure that we do get false positives/negatives. Nevertheless I believe the external factors swing toward it not mattering an enormous amount. I'm more than willing to be proved wrong. As I said, we do very carefully assess relevant skills; it just doesn't seem to make a lot of difference to the end decision. This can obviously be attributed completely to bias, to retroactively reassessing, but I don't think that's correct. The crux is a. can I get on with this person, b. can I sit beside this person for 8 hours a day, c. do they want to learn/can they teach us. The technical side is less important than these things, and is easier to filter in many respects.


I've found that you can tell within 30 seconds if we're not going to hire someone. It's much easier to filter out the people that won't fit than those that will.


Yes, because those thirty seconds are who the person is as an individual. It is the best and only approximation that one can make. Forget the interview, forget allowing them to show value, and if they do, they have an attitude problem.


my experience is the opposite: I often have a very good first impression of someone that gets shattered when they try to write some code or to explain an algorithm.


This sounds like a terrible process.


Robert, I didn't know everyone at Accenture were such great psychologists!


1. Or even more simply, they are afraid to reveal what is almost certainly a perfectly acceptable reason for fear a jury will decide it wasn't acceptable after all, and take them to the cleaners for it.


That's a bit of an insult to a lot of us hiring managers! ;) sure there are legal considerations and you have to make sure you don't accidentally do something that could be (maliciously sometimes) used against you (or your company rather) but there are a lot of good people out there and to be honest I will always give a candidate feedback in an honest constructive way (and I'm not a very harsh person so I will also consider their feelings when I say things).


Couldn't such absolute statements actually be your own "rationalization" and prejudice? How can you be sure it was others who messed it up, not you, if you keep thinking this way everywhere? Very probably you indeed have some aspects to improve, but you just convinced yourself that "no, I'm perfectly capable, but that interviewer sucked and judged me arbitrarily. That was his fault, not mine." Thus you look at the world through hostile, cynical eyes and miss up on the opportunity to improve yourself. Isn't that even more harmful and irrational thinking, which you seem to be up against?

In short, possessing such a mentality is dangerous and likely to keep your mind shut.

I don't doubt that you might happen upon some pathetically incompetent interviewers. But if you treat every "no" response in this same manner it's awful.


The problem is there's no good heuristic for determining when that "no" was a resolt of a clear flaw of the candidate, or of subjective prejudice of the interviewer. On that situation the prevailing policy is to always assume prejudice and try to discover you flaws by some other mean.


I'm not so sure you should default to assume prejudice, because every bit of advice has some benefit (even if it's just an insight into what the other person thinks is importnat). You bring up a great tactic, however: discovering your flaws by some other means. The best practice I've heard is to seek comments from a neutral third party, like a professional acquaintance or coach. A friend or SO will go too easy on you by design.


Second opinions are also great to get - I could be wrong about the person, or maybe we didn't click.

I like interviews to be like secret ballots:

* write down what you think about the person without any external influence

* then share the information with the other people who interviewed the same person

You are right on this - bias can interfere with decision making. A single gatekeeper who makes the wrong decision could be turning away someone fantastic.

The hardest thing is saying no to someone you know is great, or is going to be great. It isn't personal - it might be that one of the candidates had 5 more years experience on something that we were really looking for. In this case, if I am working with a recruiter, I always let them know how great the candidate was.


1. Yeah and no. Sometimes it's a gut thing, or even prejudice. Other times there are very specific reasons - especially when we're talking about tech interviews.

Interviews are also in a pretty unique position to be quite honest with you. They have no real incentive to lie or even to be nice to you. Which isn't to say they always will be honest, but your odds are higher than they would be if you were asking say... your current boss about why you were passed over for a promotion.

2. Heck yeah to that.

3. There's nothing wrong with politely asking (not "pressing") for more information. If one interviewer out of ten gives you the information or feedback you asked for, that's a pretty good time investment - how long does it take you to write ten short, polite emails?


There is often no difference between the rationale and the instinct. Initially you subconsciously reach a rational conclusion, but you are only consciously aware of the conclusion. We call that instinct, but there is no reason why that could not have rational underpinnings. It takes some effort to get your subconscious to inform your conscious mind of the rationale. You are not conjuring up a clever story: you are discovering the clever story that was already written.


If this were true then we wouldn't have thousands of books and courses on how to trick interviewers.


Seems you've had some bad runs.

I can pretty much debunk 1 and 3 personally. Good companies and people take hiring very seriously.


That people sometimes do first, then afterward invent a rationalization for what they did, and then accept that as the reason they did it, cannot be easily debunked.

E.g. woman buys new shoes on pure impulse. At home she finds they go really well with a certain purple dress. Why that's precisely why she got them, of course. Eight months later, that's all she remembers: I had that dress in mind when I saw those shoes.


Our brains not only arbitrarily post-rationalises a bunch of stuff, but we often believe it to be the truth from the moment we think of it in many cases even when the rationalisation can't possibly be true.

(There's at least one study on people with severed brain stems that is fascinating in this respect, but I can't remember where I read about it, and don't have time to track it down)


What would be a polite way to say "I didn't hire you because you have no idea how to program?" I mean I've interviewed people who we didn't hire for that reason... You can't say that though because its mean... Instead you get "your skills didn't align with our needs."


As a CS student who's still not very confident in his skills and without enough experience to recognize his own weak spots, I would say that "you understand X's language well, but you need to improve your knowledge of algorithms and data structures" or "you have a good theoretical understanding X and Y Computer Science concepts but you need to work on side projects to gain programming experience" or "you have shallow understanding of a lot of languages/technologies but I advice you to concentrate on X or Y until you become good at them instead of jumping between L/T".

I know that very few employers would take the risk to be so frank but I personally wish they were. It would be helpful to the candidates who actually care about improving their knowledge and skills while potentially offending those who are trying to fake it.


I'm not talking about that...I'm talking about people who are confused about things learned in CS101. I am assuming you can program FizzBuzz.


"For this job, writing a simple function like this with one for loop should be something you can do without thinking about it."

I've told candidates variants on that theme before.


Very good! I guess I just let my negativity get the best of me in frustration and doesn't make me think in a positive manner.


> What would be a polite way to say "I didn't hire you because you have no idea how to program?"

"This position requires knowledge of programming, particularly in (C, Python, insert details here)."

Dancing around that point is not a "politeness".


But this potentially opens an endless debate against a candidate who is absolutely convinced that they know how to program, and that you're wrong.


A debate can only happen if you continue to entertain their followups with responses. If someone is silly enough to claim they know how to program (or some other critical skill) when their interview demonstrated that they could not, you can simply stop answering their email. It's sufficient to have given them one explanation for why they're not getting the job; that's more than most potential employers offer.


Point being: It's not going to be constructive. Telling someone who thinks they know how to program they can't isn't going to help them and will only seem mean. Because those types can't see they have no idea what they are doing.


On the other hand, it's rare to get someone as far as an interview and have to tell them "you don't know how to program". More common answers would be something specific, like "we need someone with more experience doing collaborative Open Source development", or "we need someone with more skill navigating a complex and unfamiliar codebase and making changes without having to have the entire system architecture in their head". Those are useful and constructive bits of feedback.


Well I said in an earlier comment that our HR team tells us who to interview.


> "if you continue entertain their followups with responses"

That was, incidentally, sekasi's point #3, several parent references up:

"3. Always respond to requests for more information"

No. :)


Perhaps that could be easily revised to:

"3. Within reason, always respond to requests for more information."

Many communication "rules" require the ability to moderate one's interpretation of the rule. I don't think this is any different. It's a good thing to give candidates feedback and if they're confused, the feedback did no good so you should be willing to help them understand. But if they're just unwilling to see the world or themselves for what they are, it's out of your hands and you should leave it well enough alone.


If you "interview" people that are blatantly incompetent, that's on you not on them. Just sayin.


That is hard to avoid, because people are called in to interviews based on how they look on paper. Some blatantly incompetent people write themselves up to look good on paper. They have relevant education, skills, plausible-looking experience and so on.

Following up on some references before calling people in for an interview isn't a bad idea.

Man, I have seen some blatantly incompetent ones. You'd give them a white board and ask them to show a linked list with boxes and arrows. They just couldn't do it.

One case I remember couldn't demonstrate pseudo code for a circular buffer operation based on an array with a head and tail index.


While linked lists are fundamental, depending on the language(s) people have used and how people were taught they may actually not be something people have used. Anyone using mostly high-level interpreted languages (e.g. Python) or something like PHP may not have ever used them, and if they're somewhat self-taught then they may not have encountered them in their reading.

Hash tables might be a better filter, because IMHO you're a lot more likely to find those in real use these days than linked lists.


Your comment is on the mark. But in that particular question they were asked something like, show a singly linked insertion on a white board using some box-and-arrow notation. They were not asked to write it in C or whatever. They couldn't visually whiteboard the concept at all.

(The job area was embedded development, involving C and C++, so asking for C code related to linked lists would have been fair game!)


That is hard to avoid, because people are called in to interviews based on how they look on paper.

And (hopefully) how well they did in the phone screen...?


If you phone screen people and don't call them in for an interview, you are still rejecting them.


But not solely based on how they look on paper.


Our HR tells us who to interview. We'd like that to change, and asked for change, begged even, but thats the way it is. Not everyone works in startups.

(These werr people who couldn't program FizzBuzz)

Plus anyone can just make shit up on their resume.


the questions you asked or the way you asked them were answered in a way that made it appear to you that that person couldn't program. not saying that was the case, but just want to add that line of thinking too.


> Always explain rationale around the No, to help them improve

This is my inclination: "We liked your attitude, you seem intelligent, and well-spoken, but we have concerns about your knowledge of <some key area>, maybe start contributing to <open source project> or experiment in <technology> and reapply in a year or two."

...my concern is opening up my company for legal liabilities. Am I just being paranoid?


This happened at my last company. It does in fact open you up to legal liabilities. The company had to settle 18 cases where applicants "disagreed" with the reason of their rejection.


I think it is a shame when trying to help people opens you up to liability. If that's not a sign that our society is too litigious, I don't know what is.


It's also why companies do not apologize, except as part of a settlement. An apology is an admission of guilt, opening the company to liability.


Man, this country is really messed up sometimes...


What's really messed up is that companies can lose a case in court, and then still not admit guilt or wrong doing.

At that point, hasn't the court basically overruled them? They lost the court case. End of story (?)


The law should not compel you to say something you believe to be false. If you lose a court case, it should be legal to say, "I still believe I did nothing wrong, but I will pay the penalty as the court has ordered."


Losing a civil case is not proof beyond reasonable doubt, but a 51% preponderance of evidence. A company can lose a case, and still not be guilty - why apologize for something you're not guilty of?


Why not apologize for something you know you are guilty of? That's the real problem, that rarely happens (especially in the case of a corporation).


At least in German the word "to apologize" ("sich entschuldigen"; although this translation, though often used, is considered to be impolite; if you are interested in the details read http://www.spiegel.de/kultur/zwiebelfisch/zwiebelfisch-entsc...) has "Schuld" ("guilt") in it. This implicitely states the belief that there exists a concept as guilt, which I don't, since I don't believe in free will.


Can you go into any specifics as to what was (allegedly) said to the candidates? 18 cases sounds like the company was either interviewing thousands of applicants or giving very strong reasons for legal challenges.


A person does not need 'very strong' reasons for legal challenges. They can be spurious, with the plaintiff hoping the company will find it cheaper to settle than defend themselves.

A system where the loser pays the winner the amount the loser paid their own lawyers will stop most of this nonsense.


How often does this happen in these kinds of cases? Lawyers don't work for free and payouts from a hiring suit are unlikely to be all that large (compared to medical malpractice and the like).

I've been at companies hit with employment law cases but always from current or former employees, never from potential applicants. It seems difficult to prove, unless the rejected candidate is given physical proof of wrong-doing.


Loser pays sounds like a good system, and I'll admit your suggestion for amount makes a lot of sense, but what if the lawyer is working entirely on contingency, as many of these cases are?


The interesting thing about contingency is a lawyer isn't going to take on a frivolous lawsuit on contingency. A lawyer will only take one on that he knows he can win, otherwise it's a giant waste of the lawyer's time and money, which he won't do.

So I don't think it would be a problem.


This is true if contingency lawyers only charge their regular rate. Do they really? I thought they work for a stake in the award they are going to win. Otherwise, why would anybody take a case on contingency? There is no 100% guarantee of winning a civil case so it's effectively reducing your own rate since you are going to lose* some cases eventually (* you might even win every case but some of them did not get awarded enough money to pay the lawyer's fees).


Contingency means they charge a percentage of the winnings. If they lose, they get $0. Hence, lawyers don't take on contingency cases unless it's a strong case.


And if they win they might get a giant pile of money. Hence, rational lawyers take on contingency cases based on the strength of the case relative to the potential payout. A weak case with high payout could be a better option than a sure-win case with low payout. This very website is created by people who practice this strategy in investment and they seem to be doing just fine.


Germany has "loser pays everything". However, a settlement means no one lost and everybody pays his own lawyers.


A "loser pays" system sounds great on the surface, but is fraught with unintended consequences:

- A complainant who loses on a technicality or procedural failure, and is now on the hook for hundreds of thousands in legal fees.

- A big company that bullies the complainant with legal shenanegans until the complainant is worn out, drops the case, and is now on the hook for hundreds of thousands in legal fees.

Just the fact that, after your own expensive legal fees, you'll be saddled with the big company's (much bigger) fees as well, would be enough to deter most people from suing, even if they're in the right. It would become a new tool for bullying the poor.


The loser's max liability will be what he paid his own lawyers, not what the other party paid theirs. Thus, you cannot spend your opponent into oblivion.

A better formula for what loser pays would be:

    min(what you paid your lawyers, what the other side paid their lawyers)


And what about pro se litigants?

https://en.wikipedia.org/wiki/Pro_se_legal_representation_in...

For individuals, representing oneself pro se is extremely common.

Corporations must have an attorney, of course.


Their legal liability would then be $0. It wouldn't be worse than it is now.


I was looking for something like this. Regardless of how true the legal exposure is, every company I worked for claim this exact issue for not giving any reason. Been on the rwcicing end too, and felt that the whole exercise was a big waste of time considering the lack of feedback.


That is incredibly depressing to hear. I'm glad I operate out of another country if this is the case.


Based on what you wrote, you're probably being paranoid. I deliver lots of 'No' answers as well, and I don't see any issues with what you wrote. Legal liability tends to be around the generic responses where candidates may assume the worst (race, gender/orientation, age, etc.). A specific response that points to a lack of experience in a certain area seems a safer bet than 'not a fit' in most cases.


"Not a fit" is another way of saying "We don't like you" in a strange way.

I stay far away from those sweeping personality statements personally.


"Not a fit" can get dangerously close to "You're not the same gender/race/orientation/age-range as our core team" (especially if that happens to be true).


Yes that is a super tricky one and especially since cultural fit is probably one of the most important things to consider in the hiring process!!


Can you elaborate on what you consider cultural fit and why it is so important?


"cultural fit" is a rather awful description of a hundred small factors, some legitimate and some not.

Sometimes it refers to statements like "commit early, commit often" or "move fast and break things"; that's fine. Sometimes it refers to office interaction, such as whether you tolerate interruptions and social interaction: an introvert in an office full of extroverts or an extrovert in an office full of introverts; that's fine too, though at some point you'll scale large enough that you can't necessarily keep being that selective.

On the other hand, sometimes it means "are you going to play foosball with us and drink with us", which is wrong. And sometimes it means "do you have exactly the same personality/likes/dislikes/ethnicity/gender/etc as us", which is wrong and illegal.

In general, "cultural fit" is a dangerously vague excuse without a concrete reason. Say what you really mean, and if you can't bring yourself to say it, perhaps you shouldn't be using it as a hiring criteria.


Or... you're not a potential drinking buddy. ;)

http://www.forbes.com/sites/susanadams/2012/12/03/employers-...


Believe it or not, I was actually asked if I liked to drink. And I don't really drink.


So, were you offered the job?

Which is why I try to avoid all types of personal questions as much as possible. I do not want to take if you like squash or knitting or beer into account when I evaluate you as a potential hire. So if i don't know, it can't subconsciously affect my opinion of you. I am interested in your job performance.


I specifically meant the prohibited criteria, though I suppose as not drinking could be due to health or religion, it's also in a grey area... Could you sue someone for not hiring you because you don't fit in at the frat house?


Agreed, and I do as well. When a client asks me to relay a rejection due to "not a fit", I always ask for anything we can offer that would be useful to the candidate.


I've never had any issues in years and years.

I guess as long as you're being positive about it, and try to reinforce the shortcomings versus the positives it ends up being a good conversation. Always do it over the phone, email doesn't cut it.


It is a concern. When we hire, all the "no"s are filtered through our in-house recruiters who have been through trainings on what they can and can't say to rejected applicants. The situation is very similar to giving former employees a reference when applying for a new job. You have to toe the line and be very sure that everything you say is verifiably factually correct or you can be held liable.


It could, and you'll want to talk to labor lawyer for specifics about what is and isn't acceptable.

For example, when you talk about the candidate "seeming intelligent" that could suggest that appearances may have played a role in the evaluation, especially if you can't narrow down more specific reasons.

It's best to stick to objective factors such as the candidate's lack of experience in <some key area>.


If you're that worried why not cut it short to "We liked your attitude, you seem intelligent, and well-spoken, but we have concerns about your knowledge of <some key area>." There can't be any risk there, surely?


Even if it's not an official response, there are ways to be able to get backchannel information.. only if you're able to leverage relationships you've already built for people working at the company you interviewed with.


>Always explain rationale around the No, to help them improve

Many recruiters don't do this for legal reasons. Anti-discrimination laws make it very risky for companies to explain their hiring rationale, even if it's perfectly reasonable. It would be too expensive to have the lawyers check over every rejection.


I work in Australia, not in the US. I don't know the intrinsic legal differences here, but I do know a few things about my local market.

I feel really strongly about trying to help people improve, and it's really challenging to do that if you can't bring up the reasons for rejection. If you're being dicky about it "You're not good enough in memory management", that instantly makes people defensive.

If you're trying to help them forward and give them useful tips for improving their portfolio and skillset, the conversation is almost exclusively positive and 9/10 times I get a thank you very much in the end.


>If you're trying to help them forward and give them useful tips for improving their portfolio and skillset, the conversation is almost exclusively positive and 9/10 times I get a thank you very much in the end.

No doubt, and I know a lot of US recruiters wish very strongly that they could have these kind of interactions with potential hires.

However, the difficulty of friendly, open interviewer-interviewee discussions like this is one of those unintentional side effects of otherwise well-intentioned anti-discrimination laws. It's a good example of why trying to legislate a problem away can sometimes make other problems pop up in its place.


It's a better example of people rationalizing away humanity under the guise of "preventing liability" regarding things that, in practice, will never happen.

Bill S. Preston told you everything you need to know. People are not out to get you. Acting as if they are is toxic and inhumane.


A person is not out to get you. People collectively are. That is, that one person who sues you out of a literal thousand candidates will on their own still create enough of a stink that you'll do what you can to never have it happen again. There's no way to avoid this and retain the capability for lawsuits to cause actual damage, either. You can't have it all every way which around.


If you prioritize, or allow to be prioritized for you, the health of a fictitious entity such as a corporation over the nine hundred and ninety nine people who just want to know how to be better equipped to get a job so they can survive, I don't really think your fictitious entity deserves its survival.

Do what's right, not what's safe.


There is nothing fictitious about the capital, and means of making a living, lost from a lawsuit that a corporation loses. Legal abstractions like corporations represent people's property.


>regarding things that, in practice, will never happen.

It can and does happen. People sue over hiring decisions all the time.

It's unfortunate, but the way I figure, if you try to make laws that dictate morality (a la anti-discrimination laws), people are less likely to have and follow their own moral code in that area. "Why do I need to decide what's right or reasonable when the law does it for me?"

Also, most people are nice, but the small minority of people who are assholes can cause huge damage, amplified by the legal system. It's those people whom lawyers are (reasonably) worried about.


> It can and does happen. People sue over hiring decisions all the time.

It happens often enough that the conventional wisdom (and "conventional" generally means "wrong", so excuse my skepticism) is that people sue all the time, and so liability-paranoid corporate entities concoct policies that institutionalize fear of the people who could go work for them. To go along with the fear of the people who do work for them.

But I have yet to see data that suggests that it's on the top thousand things any corporation big enough to hire people should worry about.

> It's those people whom lawyers are (reasonably) worried about.

Fight them. I have long ago decided that I will quit if my job interferes with doing right by people.

It hasn't happened yet, but I'm careful about my employer.


This is why a general assessment should be separate from hiring.


After all, we are humans and rejection hurts any one. Related case is, firing without reason, all of a sudden which also hurts. What explanation can the effected employee provides to his family/friends for this sudden change?

In both cases, human mind keeps circling on what went wrong. Is there any misunderstanding or wrong perception? So providing reasons is humane in any such life altering transaction.

Related to law, is following possible?

Before interview, there will be an agreement needs to be signed by interviewee, recruiter, company involved, so that, after interview, recruiters can provide reasons for rejections and as long as the reason is with in the laws of the country or appears reasonable, then involved parties will not proceed legally. If it is against the law, then interviewee may proceed legally. It may be expensive but we are not robots, right?

Different cultures have different opinions on work/job/career...etc. Since Americans are advanced in technology as of now, many countries are adopting similar policies and during that process, workforce management related laws also getting copied. These laws may be new to that society and difficult to understand by society/family. This makes lot difficult to effected employee to explain the rationale, which he/she also do not know. People won't even believe that reasons are not provided.

In conclusion, providing reasons or at least honest effort in that direction is needed, since we are dealing with other human beings rather than robots.


> Before interview, there will be an agreement needs to be signed by interviewee, recruiter, company involved, so that, after interview, recruiters can provide reasons for rejections and as long as the reason is with in the laws of the country or appears reasonable, then involved parties will not proceed legally.

You don't need to sign an agreement: this is the status quo. The meat of the problem is when the candidate and the company disagree about what happened. It's a rare company that actually furnishes candidates with illegal reasons for rejection, so it's up to candidates if they believe they were illegally rejected.


The thing is you can give the appearance of discrimination without discriminating. Consider this: You say someone [a minority] needs more experience in X so they didn't get the job. The person who did get the job [a white male] has the same amount of experience with X. But they have demonstrated other skills that just blow you away so you hired them anyways. Person 1 finds out and since they weren't in the interview process, they don't have any more context. Now it looks bad from an outside perspective.


Yes, but having signed an agreement in advance won't really help: Person 1 may still feel they were treated improperly and sue. Except now they might be suing for breach of contract on the basis that the company lied to them about the reason for their rejection. Or Person 1 will simply argue that signing away their rights was not legal in the first place (which is true in many places).


Perhaps I wasn't clear... or responded to the wrong post.

I agree, signing a document is really stupid and unnecessary.

What I mean, if you give someone a reason, it can lead to it looking bad on paper. Unintentionally. If you don't give them a reason, you protect yourself.


>there will be an agreement needs to be signed by interviewee, recruiter, company involved, so that, after interview, recruiters can provide reasons for rejections and as long as the reason is with in the laws of the country or appears reasonable, then involved parties will not proceed legally.

Unfortunately, the government puts strict limits on the purview of contract law, so an agreement like this would likely not hold up in court.


Have you ever run into legal issues with #1 and #3? Every big company I've worked for has explicitly forbid this due to potential discrimination suits.


Thank you for this! I can't help but think that this benefits your company and your company's image in the long run as well.

I had a very promising half-day interview several years ago with a company I really liked and got nothing at all. Not even a "you're not being hired."

I sent the obligatory thank-you email the day after the interview and sent a polite "just checking in" email a couple weeks later. A few weeks after that I wrote and asked if he had any feedback or suggestions on things I might improve upon if I wanted to work for them in the future.

Now obviously, the hiring lead's obligation is to his employer and not some guy looking for a job. Not his job to be my career mentor.

But I'm an experienced developer, and I'm certain that I did well in all parts of the interview except one. With some additional experience in that area there's a very good chance I could have been a good contributor to their team - in a market that has a shortage of experienced developers.

So, on my most recent job search, I didn't even think about re-applying to that company. In a region where companies pay tens of thousands of dollars to tech recruiters for anything even remotely resembling experienced developers, maybe it's worth spending (literally) a few minutes maintaining at least a cursory relationship with those you didn't hire - but might like to someday.


I can see how you would do this for a technical shortcoming, but sometimes the choice of one candidate over another comes based on a personality judgement and who would fit better with the current team. How do you explain those types of decisions without sounding arbitrary?


Second round interviews, after having passed a code test as well, I do exclusively with the team in question all present.

It's less of an interview and more of a meet and greet, and we spend 30 minutes talking about anything under the sun.

The team makes the decision from this point. I very rarely veto.

Candidates know this is the process, because I tell them about it before hand. Does that make sense?


So you would tell a candidate rejected in this stage that the team chose someone else? More or less detail than that?


The first time I got a front page link to my site on HN, it did this exact same thing, which prompted me to move away from Wordpress. Static HTML ever since.

But to comment on the article, I think this is a fantastic idea. I do wonder though how he found so many enthusiastic people. Maybe it's just a new era, but I have a hard time finding people who even want to do a 1 hour coding challenge. He got these folks who were willing to learn something, and build and spend DAYS on it? It's awesome but it seems unlikely these days.

Taking that kind of time to choose the right person, then helping the other people network with other APL folks... that just spreads good vibes all around. I would like to see the "care more" trend spread in our industry. Even now with a programmer shortage companies are still unicorn hunting and making people jump through stupid hoops for jobs.


About 5 years ago, I moved to another city across the country to work for a small startup. The city was small, candidates were few locally, and maybe fewer still wanting to move there (Lubbock, but my inlaws are nearby, and I liked the idea of my kids getting to see their grandparents).

It was the funnest job I ever had, moreso than I could describe. I was hired on as a web developer, but about 3 weeks in they started asking me to help work on firmware written in C for pic microcontrollers. Soon after that, they asked me if I thought I could produce comparable products with commodity hardware, and I found myself trying to write linux drivers for a packet radio (the usb development kit that the chip maker sells... but only provides Windows drivers for).

A few weeks in, I had that working. With a dozen other projects on the backburner too, all of them interesting and challenging. They were buying whatever hardware I said I needed, and if I ordered something that turned out to not be so useful, no one ever complained.

It was easy to be excited doing all of this. So of course the day after I managed to get a working prototype of the biggest challenge yet, I was shitcanned. Startups run out of money.

Now I write stupid web apps for a university. They pay me better ($20,000 more a year, not including benefits, probably more like $35,000 more with those). But it's boring as hell. And it's not the university's fault. The world needs alot of boring stuff to keep running.

My point is, if you've found alot of enthusiastic people, it's not your HR department's competence that gets the credit. It's not really those people's credit either. You just have a rare job that's actually fun.


That's an interesting story. Did you have experience writing firmwares and drivers in C before joining that startup? Did they ask you about it or it came on the spot? I am quite curious.


I had never written C before that, not on the job. Not much hobby-wise, just maybe tweaking shitty open source code to fix syntax errors or whatever. Never submitted a patch.

First time I had to write a makefile too. Ouch.

It had memory leaks, but nothing I couldn't have fixed given more time. It was userland, libusb, hadn't had time to get it anywhere near ready for a kernel driver.

I don't even know that I've ever properly learned any programming language... I get syntax Alzheimer's quite a bit. Other than novelty languages, how can you not look at code and not have some idea of what's going on though?


My Wordpress blog used to go down because of HN. I fixed that as follows.

1. Use the Wordpress supercache plugin.

2. Put Apache behind Nginx, and limit the number of Apache processes to ~6. This way you're effectively using Apache as a "PHP app server", simulating an architecture similar to Passenger/Unicorn. Nginx acts only as a buffering reverse proxy, shielding Apache from slow clients.

Why this instead of running Wordpress/PHP through Nginx using php-fpm? It's because Apache is just easier: mod_rewrite rules work automatically, etc.


I'm not even sure step 2 is necessary, my WP blog has hit HN a few times and the supercache plugin alone has been more than sufficient to handle it.

Really the big problem at this point is that stock WordPress falling over under even moderate traffic is such a common experience that having caching broken out into an optional plugin doesn't make a whole lot of sense. WP should probably ship with at least a basic caching solution built in.


This is first time I've seen the words "Apache is just easier" in that arrangement. I think php-fpm is significantly easier to set up than Apache and expect it to be more performant with less resources.


This probably depends more on experience, and which OS/platform you're using; although I don't do it a lot, I've configured Apache servers several dozen times, whereas I've only done nginx a couple of times, so it is 'easier' for me.

Also, on ubuntu (and centos, but haven't used it in a while), it is something like 'apt-get install apache-mod-php' and everything is there :)


Yup. I've been running nginx + php-fpm for pretty much as long as it's been possible, and it's pretty great with far less hassle than most other configs.


It's easier for things that are written in broken ways that work best with Apache because that's the only platform they targeted.


Caching HTML to disk via W3 Total Cache or WP Super Cache is really all you need on most hosting. I never got around to putting Apache behind nginx, but have still survived some relatively large traffic spikes for a personal blog (e.g. 100k+ page views in a few hours) without any trouble at all.

Not to say that your setup isn't better (it obviously is), but I want to make sure no one's intimidated by the task of hardening their WP install because they think they'll need to do both 1 and 2 for it to be worthwhile.


Never configured Apache that way, that sounds really interesting. I was running the site on a fairly well tuned LEMP stack and was using a cache plugin (forgot the name) but it would still choke fairly often.

Since the content of my site only changes a couple times a month I started migrating away from towards a static solution. I'm not trying to say WP is bad but I think if your content is relatively static and you aren't doing a ton of updating, just make it static HTML instead of doing hacky cache stuff. It's simple, secure and runs on any type of server.

The only thing that's lacking right now is a really solid static site generator. Octopress/Jekyll are good solutions but can be a bit frustrating and not very portable.


Using nginx/varnish as a caching reverse proxy in front of apache/php is rather common. You get all the ease of use of Apache (mod_rewrite instant .htaccess rule changes, mod_php, etc.) , ability to use whatever cpu intensive plugins/code you want in your application, and once the page is cached it loads instantly for as long as you cache it. Nginx can be configured to serve static assets directly or your app can use CDN links.

I've never really understood the recent fascination with static site generators. I get that it's neat you can upload just everything to S3 and host it there with no servers, but then if you want to change something site wide you have to reload everything. Dynamic app + with caching reverse proxy + optional CDN is a tried and true method. I've been on projects that use this method with small VMs to power sites with tons of traffic.


I've had strong recommendations for nanoc and middleman. Additional static site generators can be found all over; one good resource is this list: http://blog.iwantmyname.com/2014/05/the-updated-big-list-of-...


In my case, I did two things:

1. Add memcached 2. Serve static files via nginx

It allowed me to handle 2.9 million requests

I documented it here: http://idiallo.com/blog/handling-1-million-web-request


Nice! I tweeted this, you might see some additional traffic, definitely something my group of friends would be interested in.


Thanks, and I'm glad you found it interesting.


Nginx + PHP-FPM isn't necessarily hard to setup, just different. It will be much faster than nginx in front of apache.


You can do the rewrite with a single nginx command:

    try_files $uri $uri/ /index.php?$args;


> Even now with a programmer shortage companies are still unicorn hunting and making people jump through stupid hoops for jobs.

What's worse is the companies who try to defend their unicorn hunts when called on it.


And arguably in some respects this was a unicorn hunt amounting to making people jump through even stupider than usual hoops (responding with a 500 page manual!) to prove their aptitude for learning. I'm surprised that, to the extent I can make it out from rather small pictures, the applicants don't appear to be in the sort of age bracket generally associated with unpaid internships...

Difference is, it balanced an unusually onerous assessment with the unusual reward of a de facto guarantee that anyone persistent and smart enough to get through it all would get a job at the end. I hope it paid as well as they presumably thought it would.

There are a few companies out there with a desire to build an ecosystem on obscure or unproven technology that could and probably should experiment with elements of this as a hiring strategy. Getting the class to vote on who gets the [first] jobs is particularly neat; it both selects the most effective team member(s) and leaves the rest with the impression they weren't ruled out of contention by the hiring manager and therefore shouldn't be deterred from reapplying in future


I actually applied to work with Brooke a couple years ago, and I probably still have the Craigslist post saved.

The original ad was posted with the title "If you enjoy mathematics, no prior work experience needed" and a really intriguing body that alluded to interesting work that they'd train you on. He asked if we had any questions for him, if we could get to his office (i.e. were in commuting range), what was interesting about us, and finally asked for a brief summary of our work/schooling. He specifically didn't ask for resumes, although a lot of people sent them to him (and then dressed for the open house in a suit, lol) because of how ingrained the standard motions of hiring are among candidates.

He followed up to every email with a personal response where he sounded like a human being, and then told candidates that there'd be an open house and then we could decide if we wanted to keep on in the process.

I imagine some people shied away because of the time commitment of learning what we could about a new, weird language over a week, and there were some things that didn't work very well because of how different his hiring process was from the norm, but it was enriching and fun in the end.

The big thing that might have worked in Brooke's favor was that this all took place in 2011, when the job market was even worse than it is now.


Fyi, the author is a man.


Fixed, thanks


This story reminds me of how broken software engineer interviewing is. Imagine if a company decided to hire software engineers by giving them five 6-sided dice. Then they have to come to the company building and roll each dice once every hour. And during that hour they have to dance and sing in front of someone while being recorded. If they roll all 6 on all 5 dice, their dancing and singing will be judged by the committee! And if the committee likes their performance they might get the job! The acceptance rate is 0.01%, the company is so elite. And this company is also complaining about a software engineer shortage. They wish they could find more good engineers!

It's pretty obvious which company (or group of companies) I'm referring to. The interviewing process of these companies has done great harm to the software industry. And now they're trying to do further harm by using it as an excuse to get cheap foreign labor to reduce salaries.


I've interviewed at all/most of the companies you're probably referring to.

None of my interviews were as you described. Sure, some of them were very abstract questions, but it's pretty obvious what the interviewers are getting at.

In fact, I prefer this over "implement a red-black tree" or other excessively technical questions. Those kinds of interviews just test memorization and not skill or reasoning ability. A skilled programmer with good reasoning can learn any of those concrete mechanical concepts very quickly.


I'm presuming you are talking about Google? Why can't they then just hire in their offshore offices then?


Maybe I'm just dumb but it's not at all obvious which company you're talking about


Looks like the American Idol audition

(I'm serious)

However, rolling 6 on 5 dice is 1 to 7766 odds, and I suspect AI has a lower entrance bar for the committee


This is what poor programmer are saying usually :)


Palantir?


I believe he or she is talking about Google.


Google's acceptance rate is well above .01%, just using basic reasoning. Google employs tens of thousands of engineers, which means they would have had to reject hundreds of millions of candidates for the role of software engineer.


You're hired!


Could you elaborate on why Palantir might fit the description?


I wonder how much of this kind of thinking can be traced back to a persistent startup-culture problem: the delusion that the people who work for you are, or even should be, your friends.

If that's the lens you're looking at candidates through -- as people auditioning to be your friend -- of course you'd feel you're obligated to help them through their job search! That's what friends do for each other.

But the people who work for you -- and even more so, the people who have only applied to work for you -- are not your friends. You can (and should!) be friendly with them, of course; but you can't have a real, true friendship with them, because you have power over their lives that they don't have over yours.

Moreover, if you try to just ignore that power differential and relate to your employees like they're your old dorm buddies, all you'll find is that the power differential poisons the relationship. They'll constantly be second-guessing their own reactions to you, out of fear of negative job consequences. You'll constantly be second-guessing your own reactions to them, out of fear of appearing to play favorites. And they'll all be second-guessing each others' reactions to you, out of fear of someone brown-nosing their way past them on the career ladder.

It's the same reason why it's always a bad idea to date someone who reports to you -- you can never have the kind of relationship with them you have with someone outside the hierarchy you sit at the top of. Suspicion and jealousy and gamesmanship taint it from the moment it begins.

The solution to all these problems is to learn, understand, and internalize the distinction between colleagues and friends -- two groups of people you owe very different things to -- and then act accordingly.



Pastebin for posterity when case Google Cache expires:

http://pastebin.com/raw.php?i=QtePMR26


And Coral Cache (it'll have to rely on the page coming back up at least briefly): http://brookeallen.com.nyud.net/pages/archives/1234


Hi, this is Brooke, author of the original story.

Wow, other than the grief I'm going to get from my ISP I'm so glad to see all this and when I get a chance over the next few days I'd like to add more.

Some quickies: I've generalized this approach and talk about it in a Quartz article: http://qz.com/88168/how-to-hire-good-people-instead-of-nice-...


You might want to look into Cloudflare to help protect your site from the HN/Digg effect. Free CDN FTW. Also, great story!


When you hire for a person, you find that personality traits are much more important than what an applicant has done in the past, including passion, drive, etc.

When you hire to fill a position, all this goes out the window the applicant goes into the hiring lottery pool to maybe get an interview, and then the traditional "You could totally goog this IRL, but I'm going to hire you based off your memory" type of hiring.


I find that > 90% of interviews to be the latter, unfortunately. The ones where I got the job were the former! I am stronger at concepts than memory.


The worst is when you have to go through one of those interviews with some smug hoser across from you whose face is contorted into a rictus grin because you couldn't recall, immediately from memory, some obscure Junior Year Computer Science thing. It's just amazing how bad the hiring situation is - It makes me a lot less likely to look around because I just don't want to go through that.


Yet the number of interviewees with a CS degree that can't even explain a basic algorithm, like traversing linked lists or binary search, is staggering.


It's amazing how the brain can totally blank in stressful situations.


Eh I doubt that explains it. In my experience, the response is shock. Not "oh hmm well, lemme think". It's " I've never written that code since school! That's a terrible thing to ask! Why would I ever write that? "

Also, for trivial algorithms and data structures, mind blanking is a potentially bad sign. Like, if you cannot explain the idea of garbage collection (not necessarily implementation details), then I gotta question your understanding of your environment.


I am reasonably experienced programmer who has delivered numerous web applications and websites. I could not explain to you how a linked list or binary tree worked - although I am sure I could look them up on google and understand the concepts given 30 minutes.


"Experienced programmers" who don't understand linked lists and binary trees without looking them up are strong no hires anywhere I have worked in the last three decades. Please stop writing software until this isn't a problem.

* edit: please stop asking people to pay you to write software. Keep writing software on your own until such elementary ideas such as linked lists and binary trees are core to your understanding, then apply again.


I have yet to encounter a situation in my career that called for a binary tree. I use general trees and graphs all the time, but never any of the specialized forms.

Maybe the problems your companies have worked on did. That's fine. Don't go telling people to "stop asking people to pay you to write software" just because they don't know how to use or write a binary tree, though.

I agree with you that I wouldn't hire someone who doesn't understand linked lists, but I still think your statement is too harsh for that situation as well.


Worth having some equivalent questions of your own.

"Good question, while I think about that, can I give you an interesting brain-teaser from my last interview?"

Figuring out if the tech lead who'll manage you is a jerk is a major task in being interviewed.


This of course goes both ways. If you put on your resume that you have expert/mastery level experience in technology X, don't be surprised if I drill you on it.


Because a good percentage of those experts then surprise interviewers by not having even a basic level of understanding of the subject. Usually those resumes were 'edited' by an agency trying to get their 20%.


Hey, you have no right to complain about my rictus grin. I even let you grab a free snack from the snack bar on your way out.


> When you hire for a person, you find that personality traits are much more important than what an applicant has done in the past, including passion, drive, etc.

For early- to mid-career developers, definitely. But I wouldn't hire a fixer-upper architect (or systems specialist) then turn him loose on business-critical parts of my system. That's not to say you can't hire an architect for her big upside, but you'd want someone to collaborate on important decisions until she's proven herself capable and trustworthy.


Agreed.

However, saying personality traits are much more important doesn't reduce the value of past experiences.


This is a very wise observation.


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

Search: