4 ms·
Idea, based on my extensive qualifications of reading HN hiring threads: Provide candidates a small sample "project" of 50-100 lines, a Flask webapp perhaps. W
by andrewflnr 6y ago
Idea, based on my extensive qualifications of reading HN hiring threads:
Provide candidates a small sample "project" of 50-100 lines, a Flask webapp perhaps. Work with them to get it running on whatever interview machine they're using. Have them extend it with some fairly trivial feature, around FizzBuzz complexity but with a bit of a design component. These questions should be carefully designed and standardized across interviews.
Key point: completely strip out identifying information from their solution and pass it to someone else for grading. The person "giving" the question is a proctor, not a judge, and they're officially on the candidate's side. Possibly add a side dish of talky conceptual, design, and behavioral questions, with as much blinding in the assessment of the answers as possible, though that's harder if it's a dialogue... Hmm.
A good interview is fun. You get a nice bite-sized problem to solve with someone to bounce ideas off of, and maybe learn something in the process. I'd suggest almost a game level-design approach to coding problems. Make interviewing fun again.
- wry_discontent 6y agoThis is the kind of interview I try to give. My favorite interview question I ever had was to design an elevator system. There's no right answer. It wasn't even mostly code, it was mostly talking. But every so often, they'd say "write that as a method" and let me imagine whatever api I wanted. I had so much fun doing that.
- jtchang 6y agoYou mean like a digital one or like the firmware to run an elevator? Or one that is centrally controlled and managed?
- gmanis 6y agoI don’t know if you’re aware of this but I had a lot of fun and maybe this can be used for some interview as an initial ice-breaker problem? https://play.elevatorsaga.com/ https://play.elevatorsaga.com/
- wry_discontent 6y agoI love elevatorsaga! It would be an interesting idea just to have a candidate go to the site and screenshare to watch them do some coding.
- conscion 6y agoThis setup sounds like the "judge" would just end up judging how well, and how much, the proctor helped the candidate with their task. As an interviewee, get a strict proctor that doesn't want to give out information? Well you're not going to appear as competent as the interviewee who got the proctor that wanted the interview to be fun
- andrewflnr 6y agoThat's definitely a factor, but seems surmountable with a modest amount of training for the proctors. You also want to watch out for proctors that have an unusually high/low pass rate. You might go as far as being strict with them about what hints are permissible, and/or audio recording the whole session to see what hints they had (and also to impartially evaluate soft questions). I would say it's still an improvement over leaving the whole thing up to the whims it the interviewer.
- jakevoytko 6y agoI want to second this style of question. My company, when we still conducted in-person interviews pre-Covid, gave a similar interview to this. We'd give someone a broken toy webapp, have them fix some bugs, and then discuss what they'd do to improve it. It had a few benefits: First, this is much closer to the type of work that we'd ask a new employee to do, as compared to the typical industry interview question: "did you pay attention in computer science? You did? Now prove it by solving this problem that's a thinly-veiled algorithm exercise. Using a computer? Oh heck no, you're going to use a marker! There's no trick to it, we don't ask interview questions that have tricks, but if it leaks externally, it's 100% useless and we cannot ever ask it again" On that topic, who cares if the premise leaks? If the code somehow got out, we'd just write another one. We get to hear them talk, out loud, about their expectations and how the app's organization differs from them. This isn't interesting by itself, but the candidate gets a chance to articulate their experiences and how well they notice patterns. For more senior engineers, you get to see how quickly they can pattern match and explain the structure of the client and server, and explain how it could evolve under different circumstances. "You're in a startup that just got a ton of VC based on this hackathon project. Your friends hire you and give you this codebase. How do you spend your next 2 months?" Also, you'd be surprised how many people disqualify themselves on attitude. People will read sections of the toy app and say out loud, "who the hell wrote this? This is terrible." And you'll ask them, "What do you mean by that?" and they'll rant about some section of it, and you're like, "wow, I really don't want to work with this person." If these engineers can't even keep it together during an EXERCISE whose PREMISE is that the code doesn't work well and can be improved, it's a negative signal that they're going to demonstrate any empathy when they're working with you or any of your colleagues over the years.
- posedge 6y agoI like the idea of a fun interview. This will take pressure off the candidate and he will be able to show his strenghts better.