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.
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.
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.
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 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.
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.
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.
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.
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!!
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  or I just freeze up (think deer in headlights), typically a combination of the two which is even worse.
 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.)
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 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.
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!
> 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).
> ... 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...
> Is there anybody non-technical that might help you? Siblings, parents...?
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?
Because you'll never convince me that no musicians have toxic attitudes. Even at the symphony orchestra level.
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?
> 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.
So, yes, individually maybe they're not valuable, but in multiplicity they can become meaningful.
This is a good summary of some of the data:
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."
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.
> 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.
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.
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.
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.
> 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."
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.
What you are describing is, specifically, racism.
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.
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.
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 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.
 To be clear: I don't agree that either of these things are true.
If your optimized selection process selects away from Black candidates it is by definition racist.
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.
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.
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.
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.
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.
 that being said we always, always try to give some constructive feedback if asked.
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?
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.
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.
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.
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?
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.
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.
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.
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.
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.
It's usually not a conscious thing, and it's something we're all prone to doing.
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.
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.
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.
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.
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.
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. :-)
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.
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.
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.
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.
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?
I can pretty much debunk 1 and 3 personally. Good companies and people take hiring very seriously.
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.
(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)
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've told candidates variants on that theme before.
"This position requires knowledge of programming, particularly in (C, Python, insert details here)."
Dancing around that point is not a "politeness".
That was, incidentally, sekasi's point #3, several parent references up:
"3. Always respond to requests for more information"
"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.
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.
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.
(The job area was embedded development, involving C and C++, so asking for C code related to linked lists would have been fair game!)
And (hopefully) how well they did in the phone screen...?
(These werr people who couldn't program FizzBuzz)
Plus anyone can just make shit up on their resume.
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?
At that point, hasn't the court basically overruled them? They lost the court case. End of story (?)
A system where the loser pays the winner the amount the loser paid their own lawyers will stop most of this nonsense.
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.
So I don't think it would be a problem.
- 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.
A better formula for what loser pays would be:
min(what you paid your lawyers, what the other side paid their lawyers)
For individuals, representing oneself pro se is extremely common.
Corporations must have an attorney, of course.
I stay far away from those sweeping personality statements personally.
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.
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 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.
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>.
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 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.
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.
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.
Do what's right, not what's safe.
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 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.
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.
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.
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.
Unfortunately, the government puts strict limits on the purview of contract law, so an agreement like this would likely not hold up in court.
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.
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?
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.
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.
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?
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.
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.
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 :)
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.
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.
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.
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
try_files $uri $uri/ /index.php?$args;
What's worse is the companies who try to defend their unicorn hunts when called on it.
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
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.
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.
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.
However, rolling 6 on 5 dice is 1 to 7766 odds, and I suspect AI has a lower entrance bar for the committee
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.
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-...
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.
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.
* 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.
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.
"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.
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.
However, saying personality traits are much more important doesn't reduce the value of past experiences.