13 ms·
Interviews are Broken
- Aqueous 13y agoYes. I have a new rule with recruiters. If you are trying to recruit me, make me an offer. Otherwise, go away. You called me, not the other way around. I'm not going to jump through a bunch of your hoops to prove to you for free that I can do what you already know that I can do just by looking at my resume, looking at some of my public projects, and asking me questions in an informal, short interview. And I'm certainly not going to do that knowing that, even after the end of an extremely long and taxing process, you can still refuse to offer me a job. What I've done should be proof enough. I don't want to jump through a bunch of arbitrary hoops so that I can get an incrementally higher paying job (maybe) and devote my life to working on someone else's vision. Gee, can I? I already have a job, and it might be different if I didn't. But maybe not.
- Peroni 13y agoWhat I've done should be proof enough. It really isn't. It may be indicative of your technical ability however your past experience doesn't give me any indication if you'd be a good culture fit.
- Aqueous 13y agoDo you need another 5 hours of coding to prove that I'd be a good culture fit, or would a 30 minute - 1 hour interview and the high recommendation of my references suffice?
- Peroni 13y agoAn hour in a relatively relaxed environment over a cup of coffee is more than enough for me to work out if you would get along with our team, work well with your potential new boss, actually enjoy working for us or not and whether or not you are likely to stay loyal to our company.
- 7Figures2Commas 13y agoIn a single meeting, I believe it is often easy to determine if there is likely to be no fit. Going with your gut here makes a lot of sense. But it is completely unrealistic to believe that in a single meeting you will be able to predict with any certainty that a candidate will work well with your team, enjoy the position and remain loyal. You simply can't establish these things until a person is on the job. If you do a good job not hiring obvious poor fits, the odds that your relationship with your new employee will be a fruitful one obviously increase, but don't fool yourself into believing that there isn't a lot of luck involved.
- deleted 13y ago[deleted]
- incision 13y ago>"...good culture fit." What does that mean, how is it determined via an interview and how is it weighted against all the other factors that make up a good hire?
- Peroni 13y agoGranted it's a bit vague. See my response here for a more detailed explanation: https://news.ycombinator.com/item?id=6417834 https://news.ycombinator.com/item?id=6417834
- ath0 13y agoThe hard part of the job isn't writing code to a detailed spec that's assigned to you. It's knowing how to ask for clarification on requirements; how to balance speed of delivery with nebulous ideas of quality (how readable is my code, how effective are my tests, how extensible); how to decide which tools are right for the job. When I look for cultural fit, I mean: will you have productive conversations with your colleagues; have you shown yourself to be inquisitive about new things beyond what you're assigned so that you have a good understanding of what a solved problem looks like; will you force yourself to find a way around hard problems or will you quietly give up and call the problem impossible or blame someone else; are you interested in solving customer problems and iterating rapidly, or in building the most "well-engineered" solution; do you think your role in the organization is to build products or direct them. These aren't easy questions to answer, and they do open themselves up to bias in how you evaluate candidates. I like asking about folks' CV - even though there's already a written summary - to see what parts of a problem you considered most exciting and hard; I think that's revealing. But may not work for everyone.
- BigChiefSmokem 13y agoIsn't "cultural fit" another way to hide sexism, racism, and prejudice in the hiring process? I've seen it happen and it's a very good excuse to give to HR. Just like in social situations you can judge anyone pretty well in the first 5 minutes of a phone conversation, see if they will "click" with your team - hell you can almost do that just by looking at their open source (how they think/design). I don't need a high school coding exam and a 2 hour panel interview to see if someone is a "cultural fit".
- Peroni 13y agoIsn't "cultural fit" another way to hide sexism, racism, and prejudice in the hiring process? I'm sure that's the case in rare circumstances. The phrase 'cultural fit' is fairly common here in the UK but I agree it may be taken a bit too literally elsewhere. The cultural fit I'm referring to is attitude, work ethic, maturity, etc. I don't need a high school coding exam and a 2 hour panel interview to see if someone is a "cultural fit". Completely agree. I can't see how that scenario could give anyone an appropriate insight into a persons character. As explained in other comments below, a relaxed, two way conversation in a comfortable environment is one of the few ways of establishing how well a candidate would adapt to life at your company.
- jasonlotito 13y ago> Isn't "cultural fit" another way to hide sexism, racism, and prejudice in the hiring process? While that may be, it doesn't mean cultural fit is only used in those cases. There is a vast difference between someone who cares about doing their job well and someone who does their job. And 'cultural fit' will be used to describe that. Are you the type of person to put in your own time to advance your knowledge, or do you require the company to pay to keep you up to speed on the latest advances. I've seen both types of people. And the former is more valuable than the latter. And the former generally won't want to work with the latter, either. Granted, the former will cost more than the latter, as he brings more value to the table. You can argue the merits of 'cultural fit', but it's not just a word used to hide sexism, racism, and prejudice in the hiring process. And, personally, I think it's important because I want to enjoy the people I work with.
- 6d0debc071 13y agoI'd guess, might be wrong, that this isn't the type of thing was what Aqueous was referring to 'know that I can do just by looking at my resume, looking at some of my public projects, and asking me questions in an informal, short interview' I'd place emphasis on the last bit there. The trouble is that, well, I hate to be like Kant but a lot of recruiters do just seem to have conversations that are very... spanish-inquisition-y... with virtually none of your personality there. Like, when have I ever had a joke with them? Or an interesting discussion? When has a recruiter ever asked me about the people I work with/my friends? Or spent any real time talking with me my about my hobbies? Hard to bring your personality out when people are asking you things like - "Would you consider yourself competitive?" There's an underlying thing there where they're trying to guess at qualities they think contribute to behaviours they want in a very structured way rather than having a real conversation. And I'm sure we both know that people are more diverse than that, you can have lots of reasons for behaving in a particular way - not all of which the other person's going to be able to guess about. It just feels really awkward, you know? You want to know how I'll fit in with your culture, invite me out for a glass of wine or something and we'll find something to laugh about. You want to get fake-happy-happy me then stick me in a horribly formal situation. That said, I'm sure there are recruiters that treat you as human - and the more of them that are out there the better.
- mbesto 13y agoFurthermore, how on earth am I supposed to gauge your communication skills!?
- ryguytilidie 13y agoMy god this is such an ignorant comment . Stuff like this just makes Silicon Valley look pretty disgusting honestly. If you think a list of work you've done is the only thing a company should care about than there's really not much to argue about, you're just wrong.
- Aqueous 13y agoI guess you failed to read my comment. Did I say it was the only thing? No. I said that the burden of proof shouldn't require three phone screens, a multi-hour (7 - 8+?) coding test, and then a 5 hour on-site interview. Companies are taking time out of people's lives to string them along on a hiring process that could last up to a month and a half, and still could result in absolutely no offer. Second, I'm not merely referring to the list of things I've done. Like many people, I have public projects online that you can download and use, and in many cases, these projects have source trees that are publically available. Yet, most of the time, companies don't even care enough to do the background research of downloading the application and using it, or looking at the source of these applications to see if they are any good. I've submitted examples of work I've done and when I got to the on-site interview, the interviewer had no idea what I was talking about - hadn't used the application, hadn't seen the source, and in one case (where the application was actually quite popular) had never even heard of it, despite the fact that I'd mentioned it in at least two of my interviews. Companies should be respectful of people's time. They shouldn't make the burden of proof so high that only the most desperate would ever agree to jump through these hoops knowing what they are in advance. I shouldn't have to complete a 10 hour programming test and then spend 5 hours proving to you on a white board that I can code. At what point do you say that my knowledge is general enough that I can pretty much approach and come to a meaningful solution for any problem that you can throw at me ? The combination of a short, in-person interview and a review of my work history and my references should be sufficient to get a grasp of my work skills and this vague concept of 'cultural fit' which seems to amount to, "Are you nice and respectful and a team player?" Any thing beyond that is disrespectful to the candidate, especially if you are trying to recruit them away from another full-time position.
- 7Figures2Commas 13y ago> If you think a list of work you've done is the only thing a company should care about... I don't think anybody reasonable is going to suggest that there's a single criteria on which a hiring decision should be made, but if you don't think that what you've accomplished should be pretty high on the list, finding candidates with an ability to create real business value is probably going to be much harder. Who would you rather hire: a person with a track record of delivering working solutions or a person who can code on a whiteboard?
- freewheeling 13y agoMine is simpler: "Can I work remotely?" It seems to make them go away.
- briandear 13y agoTotally. Remote is the only work I'll ever do. I get more done, have great collaboration using the appropriate tools and don't have to be 'social' by being subjected to pong pong games. My work environment is perfect and therefore my work quality is among the best it has ever been. Losing the 2 hour daily commute in NYC was a huge boost to my productivity and energy.
- pjmorris 13y ago"If a company isn't making efforts to recognize you as an individual during the interview process, an accepted offer letter isn't going to promote you to personhood." This is a great point. I've noticed that culture tends to be pervasive. The good experiences I've had with companies started from first contact. So have the bad experiences.
- bliti 13y agoAlso applies as a consultant. Bad clients have noticeable red flags right from the start.
- Peroni 13y agoI've been in this game for a while now and the breakdown is pretty simple. If you are an employer, I implore you to trust me on these two simple points: 1. Finding decent people that are both technically competent and a good culture fit is bloody tough and can take a lot longer than you'd ever expect. 2. Interviewing/screening these people is simple. Don't make it more difficult than it needs to be. You've done the hard part and you're confident the person/people you've found are worth at least a couple of hours of your time for an interview so why waste that time by applying a boilerplate interview process that every other company uses? Give the candidate a realistic technical challenge to complete in a realistic timeframe, in an environment that will be indicative of the environment they would expect to work in should they succeed in getting the job. If you're happy with the technical results, spend at least an hour with them having an actual conversation. Don't sit there throwing stock interview questions at them, don't try and nitpick on their CV. Just talk to them. Get a feel for their personality, the things that motivate them, the things that annoy them, the things that inspire them, etc.
- Lost_BiomedE 13y agoI long for an interview like that. I first left the tech industry due to having to deal with HR and the hiring process. I became a chef, where the interview could be moved to having them watch me make a dish or show knife skills. Then out of interest, I went through a biomedical engineering degree and am back into the tech field. Still, due to my negative experiences with the filtering process, I have stayed in the realm of freelance and contracting. I would jump back into a tech job if interviews, like the above, were more common. Thanks.
- mmcnickle 13y agoI've always thought the simple coding interview questions was like asking a chef to prepare a very simple meal; they should be able to do it without any problem. Though it's apparent that coders, like chefs, can choke on even these simple tasks. You only need to watch the "skills tests" on "Masterchef: The Professionals" to see a dozen professional cooks fail to fry schnitzel or fillet a fish. The same chefs go on the create some fantastic dishes in less stressful challenges.
- tokenadult 13y agoPeroni writes in his top-level comment, "Give the candidate a realistic technical challenge to complete in a realistic timeframe, in an environment that will be indicative of the environment they would expect to work in should they succeed in getting the job." And of course that is saying "Give the candidate a work-sample test." That's a very well validated hiring procedure,[1] one that every company ought to use for essentially every job. In most parts of the world, you can add incremental validity to the hiring process by also testing the job candidate's general cognitive ability (a.k.a. IQ). In the United States, you have to take careful legal steps to be able to add a general cognitive ability test to your hiring process, but you would have to take the SAME legal steps to make a diploma or degree a requirement for hiring (a little known fact about the key Supreme Court case on the issue). Anything else you do in hiring has less impact on gaining successful workers than work-sample tests and general cognitive ability tests. [1] https://news.ycombinator.com/item?id=5227923 https://news.ycombinator.com/item?id=5227923 (this earlier Hacker News comment gives full references for the statements in this comment)
- davesims 13y agoThe challenge here, in my experience on both sides of this, is that a developer's deep domain knowledge of a large or large-ish app is essential to a 'work-sample' environment. And that's virtually impossible to duplicate even in the longest interview time frame. Making decisions about managing technical debt, adding architecturally-significant changes, balancing good OOP with responsiveness, knowing the difference between future-proofing and conscientious coding -- all of those are both crucial (in many cases the most crucial) to day-to-day work, and also so highly context-specific that those decision-making traits are nearly impossible to identify during a technical exercise. So for coding challenges, that leaves short-term tactical/analytic/algorithmic exercises, which in (anecdotally) 95% percent of cases cannot begin to approach a 'work-sample' environment. I've yet to encounter a technical challenge that would tell me much more about a candidate than basically how fluent they are with their tools, how well they know syntax and some general design principles, and what, for instance, their TDD (or lack of) workflow is like. Probably some insight into line-level analytic and algorithmic ability. All of that is helpful, but -- Trust Me Here!! -- can also be very deceiving. The same coders that can knock those challenges out of the park can also be highly-proficient Debt Machines, all the more destructive because of their special genius for cranking out architecturally suspect code at a breathtaking rate. To get into a real 'work-context' flow of a large app requires weeks, sometimes months, and only then can you get full perspective on how a given coder is going to contribute to your team on an ongoing basis. To get a feel for what that will look like in an interview, I've found I have to pretty much rely on the candidate's past projects, and informal conversations around larger architectural and OO principles.
- beat 13y agoI have a simple rule of thumb when interviewing other people... I don't care so much what you know how to do, as much as I care how you handle what you don't know how to do. Technical skill can be discovered quickly enough in the interview process. Ways of thinking, that takes work. As for the original article... if a company puts you through a long interview process, you should take advantage of it to learn about them as well, and see if it's where you want to work. Don't just be a replaceable part.
- msluyter 13y agoI think there's a lot of general recognition that the interview process is suboptimal, but it'll probably be slow to change at larger companies mostly out of inertia. Part of the problem is that developers tend to do most of the interviewing/phone-screening, and a lot of us don't like it and/or aren't very good at it. Thus, it's unlikely that we'll be willing to put much thought into improving the process (note, I have never had a performance goal related to interviewing). Usually, we just go with what we know, which is the standard white-boarding style interview. That, and I wonder if there's a certain fraternity-like hazing element. One of our HR people recently brought up the possibility of removing one of our hiring steps (a take home programming assignment), and I found myself irrationally against the idea. I even joked that I wanted new candidates to suffer just like I did. On reflection, that might not have been a joke... Not particularly proud of it, but part of me resists changing the process because I did really well at it.
- ada1981 13y agoHired.com can help this guy.
- balloot 13y agoThis person sounds completely insufferable. He basically is declaring himself too good for interviews (except for C-level execs, whom he apparently tolerates). Heaven forbid you don't just assume Ernie Miller is god's gift to your job position, because he is Ernie Miller and he is a special unique snowflake who is not to be insulted with petty questions pertaining to his ability to do the job. Anyway, good luck with that.
- ronaldx 13y agoIf you are an interviewer, then you should be pleased - he's ruling himself out. Win-win.
- emiller829 13y agoDid you actually read the article, or just the big, bold letters? The point wasn't that I am special. It's that each person is an individual, and a company that doesn't recognize that situations differ and make reasonable accommodations is unlikely to be a company at which I (or many like me, if the comments are any indicator) would enjoy working.
- ay2zed 13y ago"Did you actually read the article, or just the big, bold letters?" FYI, responses like this serve only to confirm the initial impression that you're insufferable.
- frenchy 13y agoI think he's responding more to what was implied in the article, which seem a bit in contradiction to what was explicitly stated. No offense intended to you. I doubt you meant it like this, but I got the same impression.
- philwelch 13y agoBecause nothing makes a hiring process more fair and accurate than changing the rules for each candidate.
- gedrap 13y agoI think that we can simply say "no one has been fired for traditional interview". Yes, it is broken, ineffective, interviewees mostly hate it, some egos get hurt while solving fizzbuzz on the whiteboard, etc. But for an interviewer, it's a safe choice. It's something he has done hundreds of times, something the interviewee expects. He might miss some really good potential employees but at the end of the day, everyone will be ok. Trying something totally new requires some courage and stepping out of comfort zone, probably a lot, and that explains it. And if we are talking about major corps, it would require lots of investment in terms of internal training, would take a while, in other words - it's expensive. And they still get a lot of top quality candidates, so why bother?
- rhizome 13y agoMediocre processes for mediocre companies.
- JackMorgan 13y ago>Trying something totally new requires some courage and stepping out of comfort zone, probably a lot, and that explains it I think you are on to something here. People want to do the safe, easy, and known thing. I cannot imagine most people, when finding out a poor employee was hired would blame the interviewer or the interview system. They assume that those are fine, because "Joel, Yegge, Google... everybody does them" and so they become a mental blind spot. The focus falls on the bad employee, "wow, he seemed so good, he must be a con artist or something". >And they still get a lot of top quality candidates, so why bother? This, I do not believe. By definition, most developers are not "top quality", rather just fit in just well enough to stay out of the "fire zone". From what I have seen, unless by "top quality" you mean "best development value for your buck", most developers at most shops are far below "top quality". Most are either overly conservative or overly aggressive, and have skills just barely good enough to do their job, which is good, because if they were truly the "top quality" they would tire quickly of your work and leave. The only way someone gets to be even close to "top quality" is by constantly doing new things, constantly pushing themselves, constantly getting better. Those traits _sound_ good till you consider what then will happen when they master the job you want them to do and get bored. That is what I mean by "best development value for your buck". Chances are, most development shops want most developers to be just barely good enough to get the work done in an arbitrary time with an arbitrary level of quality. Like the old joke goes, anyone coding slower/poorer/less than me is "a lazy idiot!", and anyone coding faster/better than me is "an architecture astronaut stuck up jerk!". Hiring becomes, "are you within an acceptably narrow band of skill that will all share?" So, companies get what they hire for. Chances are, they get mediocre programmers, because that is what they actually _need_. They don't need language-writing, development world colossi striding about their office, designing new paradigms for their slightly altered CRUD app. Most companies wouldn't know what to do with such developers if they had them. Heck, even Google apparently didn't know what to do with Guido. Instead most companies need someone happy sitting down to add a new field to this page, or make this checkbox work on this popup, or fix this bug that only shows up in IE7. Someone for whom that is just challenging enough to be interesting, but not impossible. Apparently, programmer quizzo is the cheapest/safest way to ascertain that.
- nissimk 13y agoIt's interesting to note how many people that actually work at a place had to jump through all of the pre job offer hoops. I think you'll usually find a lot of people who were able to avoid much of that stuff because: 1) they were hired before the company started doing it 2) they new someone going in so they got hired without as much rigmarole. 3) they started as a contractor/freelancer and were converted to employee without interviewing 4) they came to the company through an acquisition It seems like if you're not good at these annoying pre-offer activities that you're better off taking one of the above routes into a new job rather than trying to play these games. [edit formatting]
- 001sky 13y agoThis is a good point, and sort of supports the Author's thesis. Perhaps better than the submitted Article. The way to test if interviews are 'fit for purpose' is to see how effective they are in real use. If everybody is going around the formal process, by hiring friends/previous project-teamates/warm-referrals only...then that is pretty important observational data.
- JackMorgan 13y agoOh, dark. Maybe all the people there beat the system. I have to ask around my office now, see if that was the case.
- leothekim 13y agoI'd say asking a candidate to implement levenshtein distance in an interview (probably not the best question to ask I'd say) is more about creating a level playing field for candidates who might not have "attended and spoken at relevant conferences" or have "a bunch of apps doing mission-critical work in production", but might be thoroughly productive and successful at XCorp nonetheless. In fact, a candidate might have experience in something completely different but maybe just as impressive - publishing a paper on an optimization for an algorithm, creating a programming language, submitting Linux kernel patches, etc. How would one differentiate a candidate like that with someone with "a list of public repositories on GitHub as long as your arm"?
- emiller829 13y agoI wouldn't differentiate them. In fact, that's kinda the point. Each candidate should be evaluated on the unique experience they bring to the table. Trying to create the illusion of a level playing field by standardizing on generic code challenges in interview exercises is just that, an illusion.
- Apocryphon 13y agoYou know, there's a lot of these interview articles. Where whiteboarding doesn't work. Or whiteboarding works but filters out a vast majority of applicants. Give homework problems instead. No, applicants can easily cheat or resort to copy pasting code when given time away from the interviewer. The future is GitHub repos to see candidates' prior work. No, open-source code is not verifiable and easily falsifiable. What about determining if an applicant has solid fundamentals, not overthinking it, and having him or her learn on the job? Whatever happened to providing training? Is there really no room for apprentices or novices in modern tech companies?
- JackMorgan 13y agoPlenty of places do this, I have run training programs and helped with co-op training for new developers now in three different companies, and I can say, yes, there is room. And, yet, our demand for developers with experience surpassing the average co-op or college grad doesn't change. It can be hard to make much progress with a team of mostly younger developers when every technical discussion someone is asking, "what is FTP", or "I read that GET is the only safe way to pass values", etc. Sometimes, it _really_ pays off to just hire someone who has already figured out a certain level of the fundamentals and can hit the ground running into more advanced walls like lack of business domain knowledge.
- codegeek 13y agoMy personal opinion. If you are hiring for a fulltime role where you hope to have that person on the team for a long time , then it is a heck of a lot more than just technical ability that matters. I learned this from an ex-boss who taught me the value of skills that matter in the long run. Hint: technical skill is just one aspect and not enough. It matters what the attitude is, what encourages/discourages them etc. Why do these matter ? Because we are humans and we use our experiences/emotions/values in practice a lot more than just technical skills. The game changes however if you need an expert consultant/contractor/freelancer who can solve a very specific problem with a very short period of time. For those, go hard on the specific tech. questions.
- antidaily 13y ago__________ is broken.
- tieTYT 13y ago> Once I started to apply this simple filter to the incoming opportunities, things got much easier What filter? I didn't see him mention the filter he's using. Maybe he means he rejects a company unless it has an adaptive interview. But, how can you do that unless you take the interview?
- anmalhot 13y agoI am attending interviews these days and can echo a lot of what I read. Sometimes the interviewers just keep forcing you to the answers they have or they ask the same question to everyone - it's new to the first one but anyone coming in later already has the perfect answer. Your past doesn't matter - only the 30 min demo of you will sell. Only if in real world products got sold by their demo and not final functionality.
- vytasgd 13y agoI've done very few interviews (on either side of the table) but I wish I would come across one that had two main questions in the technical interview: 1. Write some piece of code that you think is cool. It doesn't have to originally be yours, and if it would take too long to recreate exactly, write it out in pseudo code and explain how it works and why you chose it. 2. (Slightly more common, and I've asked this before) We are having Problem A, and it would be within the scope of your responsibilities. How would you approach it? the interviewer asks follow up questions to both and hopefully learns something in the process.
- grammaton 13y agoUgh, coming up with something "cool" under time constraints, while someone is sitting there and watching my every move, is not exactly a realistic gauge of anything. One of the reasons the hiring process is so broken for so many is that they fail to take in to account the nervousness and pressure the candidate will invariably be feeling. Speaking as someone who has done many interviews, questions like this always make me cringe. Sitting there in a suit, sweating and angling for a job, isn't really the best time for me to come up with something "cool."
- vytasgd 13y agoi meant this more in the sense of "what's a piece of code you've seen(or written) that made you excited and made you think 'wow that's really clever!'" It shouldn't necessarily be something earth shattering, could be very simple, just something you genuinely liked. I personally believe enthusiasm (including intellectual curiosity) is the most important quality somebody can have in the workplace. If your problem with the question is trying to think of a response that the interviewer would want to hear, then you aren't approaching the question correctly and/or neither is the interviewer.
- richardlblair 13y agoIve been doing interviews for a few months now, and I try to make it as casual as possible. Why? Because I don't want to ask the candidate about who they think they are, I want to know who they actually are.
- rlu 13y agoI never got to interview for a startup. Is it common to have a 1:n interview? At every single big company I've interviewed with, interviews were always 1:1. He threw out 1:n interviews being bad as if it were the norm. I also have no idea what he meant by this: "All of this for a position that will involve working remotely (you are working remotely, aren't you?)." Stopped reading after that because it didn't sound like he and I were in the same industry at all.
- rrouse 13y agoI recently failed a tech interview. I was asked to pair program on a calculator. Something so simple became more difficult under the pressure of someone watching you the entire time. It's also nothing I've ever even thought of building nor something I would ever be asked to build in a real work environment. I have stellar reviews from my former employers. I know I don't suck, but hell if that didn't shake me to the core. Maybe I'm just venting.
- gaius 13y agoSimilar experience recently, writing some trivial awk while being watched, on a keyboard with an unfamiliar mapping too. Probably took me 5x as long as normal, which was unfortunate as this was a timed test!