Live data from Hacker News

Hiring Is Broken – My interview experience in the tech industry

medium.com

251–260 of 693 posts

Re: Hiring Is Broken – My interview experience in the tech industry

#251

When I hired a plumber for my heating firm, I put her through a hazing interview, tested her knowledge of Maxwell relations and thermodynamic equations. Oh wait, no I didn't. As she has been a plumber for years, so we recognised her skill and experience and cut to the chase. When I hired a programmer for our doomed to die VC life support funded fart of a project, we put her through numerous rounds of comp sci bingo a…

> We recognized her skill and experience and cut to the chase

So, to clarify, you're advocating that programmers be hired based on resume, references, and a conversation about prior projects? I'm not sure I agree with this. It seems you'd be selecting for ability to present yourself as a good programmer over actually being a good programmer.

What is your objection to attempting to verify someone's programming skill directly? It's certainly not an easy thing to do, but it doesn't seem apparent to me that it's impossible or not worthwhile.

If the standard "whiteboard algorithmic brainteaser" is not a high quality signal (which I'm not sure I grant, Google seems to think it is, and they claim to have the data to back it up, though they're probably much, much more false-negative tolerant than most), it seems like there's plenty of dials to twist to try and increase the signal-to-noise and cost/benefit.

a) Length of interview (one hour? full day? trial run of several weeks?)

b) Topic (algorithmic vs. brainteaser vs. some attempt to simulate the "real world" to some level of fidelity?)

c) Interface (Whiteboard vs. on computer vs. something else?)

(I'm being a little disingenuous with the whiteboard vs. computer thing. I don't get the value of writing on a whiteboard. I'm kinda hoping someone might be able to elucidate that.)

There's probably not a one-size-fits-all. Depends on your tolerance for risk, how senior you're trying to hire, how tight the job market is, etc. But I really would hesitate to work at a place that just took people's word on their programming ability.

Re: Hiring Is Broken – My interview experience in the tech industry

#252
I wonder if this has to do with your personality, how you behave under pressure, and how you react to not knowing the answer to something.

You seem more than capable enough to get a good job but in my experience, interviewers are looking to see how you react to being stumped. If it's anger/frustration/clamming up then that's a turn off for a lot of employers. They're looking for more than the right answer.

Re: Hiring Is Broken – My interview experience in the tech industry

#253
Fancy moving to the UK? :)

Seriously there's a job with your name on it if you're interested.

When I interview candidates I sit with them for half an hour or so to get to know them. Then I give them purposely broken, poorly written piece of code which I tell them to pull apart. This proves incredibly effective as even if they miss some of the more obvious errors I can at least point them in that area and then see if they can see the problem on their own. There are about 100 different things to talk about so it really gives me an idea of the level they are at, and also the type of programmer they are; passionate, lazy, smart, meticulous, inexperienced, confident etc. Then if I feel they are worth a second interview, I get them back to sit with me and my team for the day to see how they fit in with the team. Then all being well I offer the job.

Re: Hiring Is Broken – My interview experience in the tech industry

#254
post #176

After reading author's post I've a feeling that its not the programming skills that the author has issues with, but instead the attitude, stress durability, expectations to the world around him. True, hiring can be broken, it often is, but as with everything, the persistence usually allows us to find the proper company with proper hiring process. He's getting frustrated pretty quickly, complains when is asked to perf…

I agree with you. The author's inability to write a breadth-first-search under stress, for example, very much highlights this, in my opinion. I sort-of agree that these specific tasks shouldn't be used as an indicator of programming skills, but a breadth-first-search is really quite simple. It's mode of operation is in the name, and even if you haven't implemented one in a while, you should be able to derive some val…

The simplicity has nothing to do with it. For example, if you happen to be a very introverted person, then the social awkwardness of working in front of someone you don't know is enough to disrupt all your thinking abilities significantly. You're not only worried about the technical parts of the problem, but you are also worried about things like, "Oh god, I typed that semicolon in the wrong spot. This interviewer is going to think I'm an idiot..." and it's incredibly distracting.

This is a normal mode of self-conscious thought for a huge number of people who are otherwise excellent at their jobs and perfectly functional (e.g. introverts).

Plus, after you've worked a job for a while and know your team, know what's expected of you, and can get in the zone with some privacy, then these thoughts no longer really affect you. So they only play a significant role during an interview specifically because the interview is not at all a realistic representation of what working will be like.

I find it incredibly disturbing that you see fit to infer anything from the author's so-called "inability" to program "under stress." When someone makes that kind of inference, I think it says a lot more about their dysfunction as a colleague than it says about the other person's programming skill. Even if this problem had been Fizz Buzz or swapping two numbers, it's so, so far from simulating what a real work social situation would be like that it renders it useless for assessing the candidate, no matter if they answer it perfectly or fail completely. It's just a useless scenario.

Re: Hiring Is Broken – My interview experience in the tech industry

#255

When I hired a plumber for my heating firm, I put her through a hazing interview, tested her knowledge of Maxwell relations and thermodynamic equations. Oh wait, no I didn't. As she has been a plumber for years, so we recognised her skill and experience and cut to the chase. When I hired a programmer for our doomed to die VC life support funded fart of a project, we put her through numerous rounds of comp sci bingo a…

I frequently hear this basic point: "Software interviews test algorithms and data structures that are so clearly not relevant to the work being done and soooo theoretical I don't understand why interviewing isn't better???"

I used to believe this myself, mostly because I didn't have a strong CS background and was still successful at carrying out software projects at a relatively high level.

The truth is, as I learned more CS I learned that these things are actually pretty crucial. Not necessarily for executing one single project, but for building a large system that scales reasonably? Absolutely. I spent years reinventing the wheel of basic data structures and algos simply because I did not know them or how to use them.

Bottom line: I would not want to work with the me of 5 years ago because I wrote shitty code while proudly proclaiming that CS was theoretical bullshit that didn't matter in web development, and I think many people who make these types of claims really just don't understand how applicable a good CS foundation is.

I'd agree that ideally you want some kind of work sample as well. Either an OS contribution, github or even small project written specifically for the interview. You can't ask someone to write enough code on an interview that you really see what happens when they have to structure a real project (ie: thousands of lines) or work within a real system (ie: millions of lines). This is where CS foundations in interviews have their relevancy.

Re: Hiring Is Broken – My interview experience in the tech industry

#256

Earlier quoted context omitted.

I have yet to meet a professional plumber who is female, and I've met a lot of plumbers (I'm in construction). Just saying, it's jarring.

Yeah, it's a pipe line problem.

Sounds like something a plumber should fix.

Re: Hiring Is Broken – My interview experience in the tech industry

#257

After reading author's post I've a feeling that its not the programming skills that the author has issues with, but instead the attitude, stress durability, expectations to the world around him. True, hiring can be broken, it often is, but as with everything, the persistence usually allows us to find the proper company with proper hiring process. He's getting frustrated pretty quickly, complains when is asked to perf…

If interviews weren't scheduled at the drop of a hat and employers actually took the time to decide whether to bring someone in for an onsite interview, then this wouldn't be a problem as big as it is. Fact is, when someone needs to take a day off of work, or to do schedule gymnastics for every one of their interviews of course your attitude's going to get screwed up in the process. It's exhausting, often humiliating…

Yes, and I think the appropriate response is to rate-limit the interviews to one that you can handle easily. 1/week? Employers typically have pipelines designed for hiring throughput, so they won't mind spacing out stages longer (modulo any recruiter metrics, but I haven't heard of a case of that).

And as they're all similar style questions, they should just read up on these. Hold off on interviews until you're confident, or just schedule the less-desirable firms first, so that you have enough time to read up.

Interviewees know that these questions are coming, they can control the schedule, and they're the only ones who know their own energy and state. Nobody tells them that it's up to them to do flow control. But it's a hot market and people want good programmers. Even if you don't do tree searches or inversions in your normal work day, you can show that you're good because you can understand this stuff. Most candidates can't. So please, take your time, skim the textbooks, take a few notes, maybe do a few flash cards.

Re: Hiring Is Broken – My interview experience in the tech industry

#258

After reading author's post I've a feeling that its not the programming skills that the author has issues with, but instead the attitude, stress durability, expectations to the world around him. True, hiring can be broken, it often is, but as with everything, the persistence usually allows us to find the proper company with proper hiring process. He's getting frustrated pretty quickly, complains when is asked to perf…

the author has issues with, but instead the attitude, stress durability, expectations to the world around him.

That seems like a reasonable interpretation, emphasized by when he got through all the programming questions without a problem, and still didn't get the job.

One thing I've found when I'm interviewing, I try to be enthusiastic and act like I really want to work at the company, even when it's a boring company. Attitude makes a huge difference.

Re: Hiring Is Broken – My interview experience in the tech industry

#259
post #246

I hired Sahat as an intern three years ago while he was an undergrad. It was one of the best hiring decisions I have ever made. He was productive immediately and our (small) team felt the loss when he went back to school. This guy is good and gets stuff done, ask people who have worked with him. I wish Sahat had reached out to more of his network before responding to random recruiters. Tech interviews as Sahat experi…

I've done a large number of interviews by reaching out through my network and those interviews are no different. The companies involved still have a process whereby they get your resume as an internal recommendation, then move you over to the usual programming riddles, hazing, bullshit kinds of hiring stuff. Unless someone in your network has enough political pull to ensure you get bypassed around that shit, then net…

Yep - network helps you get an interview where you otherwise would be ignored (if you haven't gone to MIT/Stanford/CMU and haven't yet worked at Google/Facebook/Palantir/YC Startup), but it doesn't get you out of the interview puzzles.

Only way to bypass that is to start your own company or know somebody in a powerful position.

Re: Hiring Is Broken – My interview experience in the tech industry

#260
I think this boils down to just knowing what you are. Are you a computer scientist or a programmer? These are two very different things - as much as many people like to think they are not. To be a good (or very good) general software programmer you need about as much math and physics as someone who has completed 9th grade.

Some areas of programming will require specialized math knowledge of course i.e. basic linear algebra for general game programming, and various algorithms depending on your specialty. But in any programming field you will almost never be expected to research new algorithms from scratch - this is the job of scientists - and your job is just to implement those, and know enough to choose the right one for the job.

This is just a long winded way of saying, I think a lot of HR departments need to clear up for themselves what it is they are trying to recruit. If they want people researching, you are going to need the algorithm/math/physics chops inside and out, but if you are building 98% of the not so super theoretically revolutionary products out there in the world, you really just want to hire people who know how to pick the right tool and then use it i.e. code with it. And to know how to pick the right tool, you do not need a PHD in CS.

Post reply on HN