- one hour setting
- Interviewer and interviewee
- Interviewer: “I’m going to write a problem on a white board, and I’d like you to solve it. It’s fine that you don’t know how to do this- this exercise is just to evaluate how you problem solve. Here’s the whiteboard marker.”
- Me: screams internally
This idea has always bothered me, but I wasn’t able to clearly identify why until recently.
I went to interview at a company and while most of the interview went perfectly, the whiteboard modules did not. So when I came home, I sat down to write down what I learned- both about the process and about myself. I had a lovely time with the folks who interviewed me, and this article should not be considered a reflection on them at all. I completely take the responsibility on myself to work this out.
The interviewee can be successful in one of two ways:
- they already know how to solve the problem and are really just walking through the thing and talking about it as they solve it.
- they don’t already know how to solve the problem but they typically solve problems on a whiteboard.
Why I don’t like it
This method doesn’t work for me right now. I acknowledge that it could with training/practice/probably therapy.
I’m a non-traditional candidate; it doesn’t give me room to problem solve in the way that I problem solve:
- I don’t go to a white board to problem. I go to a whiteboard when I want to teach or explain. This means that the whiteboard is, psychologically, the place where I go when I already know things.
- I don’t problem solve in isolation (I always ask for help and definitely pair up on something I don’t know how to do).
- If I need to get something done at work then I probably won’t take the time to figure it out if I have someone on my team who already knows how to do this and can ship it.
Because this is a foreign method for problem solving to me, there’s also a bit of “maybe I don’t really belong here because I don’t problem solve exactly this way”
I’m also dealing with this whole other thing where someone who doesn’t know me (they could literally be the nicest person ever, it doesn’t matter) is asking me to do something way far out of my normal, and then will give input that will end up deciding where my career (and comp) heads next. I wish I could accurately convey to you, dear reader, how much willpower it took not to simply walk out of the room. I wish I was joking. These were genuinely kind people though, and I’m a professional. So I stayed put.
Our brains are human
- I think if the module was really trying to only evaluate how the programmer solved problems, it has to be something that the programmer doesn’t already know how to solve.
- If they already know how to solve it and simply walk through that, it’s impossible to genuinely see how they problem solve because they’re not solving a problem, they’re regurgitating a solution.
- There is a (subliminal?) psychological effect of associating “something that is finished” with a positive feeling and “something that is not finished” with a negative feeling
I think we need to consider this: are whiteboard modules in an interview really the best way to evaluate a potential employee’s problem-solving capability?
If it is, then the interviewee should genuinely be given a problem they don’t know how to solve. How could an interviewer know that, though? I think I have an idea for this, but I need to dig into that a bit more- I’m thinking DLPT for programmers. Or some variation. Stay tuned.
If it’s just because “that’s the way it’s always been”, how about a different way of thinking about it then? What if we asked the candidate? I would have much preferred the homework approach with a code review discussion afterward, and that may have accomplished the same goal.
In the meantime…
In the meantime, here’s the things I was supposed to be able to do with strangers watching- I know it doesn’t count for anything now, it’s more to take care of that part of my brain that wanted to have solved it in the first place.
- accessible event card – https://codepen.io/melsumner/pen/EpvOZV
- accessible autocomplete – https://codepen.io/melsumner/pen/NBwrwz
- still thinking about doing the third one