6 ms·
Okay, but the problem is, 45-60 minutes is usually all hiring managers have to assess a candidate. What can you do in that amount of time to assess someone‘s re
by LanguageGamer 8y ago
Okay, but the problem is, 45-60 minutes is usually all hiring managers have to assess a candidate. What can you do in that amount of time to assess someone‘s real world performance? Having a high level conversation about technology and problem solving approach helps but often doesn’t translate into writing code. Tech-stack specific challenges are no good because general programming ability is more important, you can learn a new language on the job. Algorithm puzzle problems aren’t great because then we’re selecting for people who spend a lot of time on hackerrank or whatever.
Maybe effective programmer hiring is just an unsolved problem.
- asark 8y agoWhat's so friggin' different about hiring software developers that we've gotta get all weird about it and come up with some brand new thing? What's the hiring process like for other office workers? How about for other technical or specialist roles that are somewhat similar to software developer? Engineers of various sorts, maybe? Accountants? Hell, lawyers even? There's got to be some set of existing practices that'll fit this just fine. It's simply not. That. Special.
- dilyevsky 8y agoIt kind of is tho. Also you should research what kind of shit accountants have to go through to get hired at big 4 for instance. And lawyers have to pass bar.
- dmoy 8y agoMany things happen: * You hire people who end up not being able to do the work (I hear my wife complain about this problem in accounting just about every three days) * You end up needing more stringent certifications than exist in comp sci land (you mentioned lawyers, so that's one with bar exams, but also accounts with CPA exams, professional engineers, doctors, etc) * You get proof of prior work * You rely heavily on recommendations, with all the pros and cons there
- jnbiche 8y ago> You hire people who end up not being able to do the work Funnily enough, I've heard the same thing from some friends who worked at companies with algorithmic interviews. > You end up needing more stringent certifications than exist in comp sci land That sounds great. You just have to study up and take a very hard exam at the beginning of your career instead of having to study up and take a hard exam every few years. > You get proof of prior work And what about Github? Most employers want to see proof of prior work unless you've got a very good excuse. > You rely heavily on recommendations, with all the pros and cons there This may be the only decent argument against the accounting/engineering/medicine interview. Even with good performance, recommendations are a crap shoot (did you get along well w/your boss, are they pissed you're leaving, do they refuse to give out references to anyone like one contract employer I worked for for a year a long time ago). But then again, puzzle interviews are also a crap shoot.
- hackandtrip 8y agoGitHub can't be used in Graduate interview efficiently, and those one could be probably the most problematic. If a candidate has work experience, you can at least assess that he can do something
- dmoy 8y agoTo be clear I wasn't arguing anything, just stating what happens. Things are different in some ways, but not all (recommendations and proof of work are common in programming too)
- strken 8y agoMy brother is a mechanical engineer, and his org hires by bringing in graduates on a low salary, moving the competent ones to roles that make use of their competencies, and moving the incompetent ones to roles that are pretty much the same as unskilled technicians. Sometimes the boss meets a candidate at a conference or over beers and fast-tracks them. They have literally no women in the entire engineering department. I'm not defending whiteboarding the knapsack problem so much as I'm defending the difficulty of hiring skilled workers from different walks of life. Tech isn't special, hiring is just hard, and a lot of other industries are actually worse.
- jmchuster 8y agoThe software engineer analogue of this would be consulting. You hire everyone out of college. Start them off at a salary such that they are still net positive even if they only ever stay at the lowest possible billable rate. If you get good enough to command higher rates (or the effective rate through increasing the success rate of projects), you'll keep on getting commensurate raises.
- walrus1066 8y agoI think other professions emphasise past experience and referrals more. That and official credentials, especially in certified professions (I.e. Medicine). That said, I think all interviews have an element of silliness to them. I know a financial consultant who was quizzed over articles published in the days financial times newspaper. Also know one of our analysts makes candidates do long division on paper! Don't forget the infamous how many golf balls can you fit in a jumbo jet kind of thing.
- bradleyjg 8y ago> Hell, lawyers even? It's pretty terrible. There's no other profession that's quite as snobby as the legal profession. If you want to go work for a top firm you need to have gone to one of a handful of law schools. While there you need to have gotten good grades in your first years' classes so that when on campus recruiting happens at the start of the second year you get an interview. These OCI interviews are almost entirely what the tech industry would call culture fit, with all the implications of bias that implies. One a summer position is obtained, the job is yours to lose. Do reasonable work, don't get drunk and vomit on a partner's spouse or blow off your third year classes and you will probably get a job offer with the firm you summered for. I don't think this is a process any other field should try to emulate. Whiteboard interviews may have their flaw but it's a lot better than: Did you go to Harvard Law && Did you get top 1/3 grades as a 1L && Do you remind the partner you are interviewing with of himself and/or his kid
- skinnymuch 8y agoA lot of fields are similar in pretty lame ways like consultants from MBAs, accountants, lawyers. For all of them. Getting into the tier 1, tier 2/good boutique place is a rigid crappy system. I can’t remember exactly how investment banking and other main MBA sort of jobs work but I think they are similar too. Friends in more general office jobs like HR, managers, etc, it doesn’t seem much better. It’s different than how to get a software dev job, but to say it’s been better would be a bit much.
- andyidsinga 8y agoI've agree with the difficulty you describe - even with 4 hours of interviews. I've come to the conclusion that one (or both) of the following might be best: - a small take home project with a reasonable due date (say 5-8 days) that is representative of the kinds of work that is expected on the job. Then, a 1-2 hour code walk through and presentation. Candidate should expect to build, run, debug and describe the code and architecture, tools choices, show source control use etc. - a 3 month probationary period with a fairly narrow starting role that all new hires expected to be able to code are required to go through; ex: fixing bugs on project X; ramp-up and demonstrate _______ and _______ on project Y. Doing the take-home project is certainly difficult for some candidates who may have a hard time carving out time to do it - but the hiring manager can offer some flexibility here - and this seems like a much better approach than taking online code quizzes. The 3 month probationary period seems like a way to detect other on the job performance or interpersonal skills issues that may be a cause for disqualification.
- monkeyfacebag 8y agoThese are interesting ideas. It seems like a hurdle would be getting candidates to agree to the conditions. What incentive do I have to pick a company that requires a 3 month probationary period when I can just get very good at dynamic programming and topological sorting and ace a one day interview at another company? Also, I find that take home projects in particular are biased against people without free time, eg, parents.
- mixmastamyk 8y ago> when I can just get very good at dynamic programming and topological sorting might work at one place, but the next will ask completely different questions. You can’t know everything.
- isbvhodnvemrwvn 8y agoThe pool of problems asked at these places is pretty limited, which is why websites like leetcode are a thing. It's a shitty situation, but that's the reality.
- rayvy 8y agoI think you’ve mentioned a HUGE part of the interview process that interviewers forget: you only have 60 mins. 45 mins if you leave time for questions (which you always should). It’s an incredibly difficult task, and deserves significant effort, as opposed to just thinking “oh interviewing is easy”
- joeax 8y agoI used to be a lead software engineer and conducted dozens of interviews and phone screens. I would simply look at existing problems I had solved recently and ask the candidate how they would solve them. If they came up with something on par with my solution or better I would recommend them for a second interview. If they talked around the problem and just dropped buzzwords I knew right away they weren't a good match and/or didn't know their stuff. This approach is straightforward, real-world, and you can find out about a person this way in as little as 15 minutes.
- avn2109 8y agoShhhh stop giving away my trade secrets for hiring better than everyone else!
- sethammons 8y agoI have had a strong hand in the technical interview design at my company. Push back on 45 minutes. I've put a line in the sand that we at least an hour for code and an hour for design, and we schedule those next to each other if we need to give more time to code. For code, the key is to find a recent problem your team's have recently had to actually solve. Distill it down. As a interview question designer, give yourself 1/4 to 1/3 the coding interview time and see how far you get implementing the solution. That is the bar: don't expect a candidate to be able to get further than that in the whole time block. You also want to budget time to talk about productionizing the code (metrics, logging, monitoring, etc). I had a question that I wanted to give and required a couple passing unit tests. After applying the 1/3 time rule, I realized that my question was unfair and I had to alter what I started with.
- 01100011 8y agoYou can read my resume and call a few of my references. You can ask me to explain my previous work. You can ask me how I'd approach a problem you've worked on. It's not very complicated, and for some reason software hiring worked just fine with this approach up until 10 or so years ago. If you have a bad hire, you make them do shit work until they quit, or you fire them. I've worked with a few bad hires over the years and the team adapted around them just fine and work still got done.