5 ms·
How much code do you normally write on whiteboards in front of people? It is such an artificial and for some, confrontational, way of problem solving, that it
by louthy 6y ago
How much code do you normally write on whiteboards in front of people? It is such an artificial and for some, confrontational, way of problem solving, that it just filters for people who can stand in-front of whiteboards. It's a discriminatory process that shows pretty much nothing about the individual's capacity to function as a software engineer in a team.
- blamestross 6y agoI realized 4 years of teaching in grad-school precisely prepared me for whiteboard interviews. I literally spent 3 days a week working out problems on whiteboards in front of bored/annoyed people.
- mixmastamyk 6y agoGood practice, yes. However what if those bored/annoyed people decided you were a failure and couldn't feed your family if a single unseen problem is not done in 15 minutes?
- mcguire 6y agoUltimately, I'm not sure what form of interview process would satisfy you.
- novok 6y agoA work sample test set that is restricted to material relevant for the job you are doing? Only writing code on a laptop text editor? Ex: Code this mini app, code this mini api, figure out why this code is buggy, design this app / backend service that does this, why did you choose that, etc.
- mixmastamyk 6y agoWhen I started my career a simple interview and can you start Monday sufficed. You’d be be let go by Wednesday if you couldn’t produce. I’d return to that, it worked. Perhaps with a few harder questions about hexadecimal and a code review.
- jefftk 6y agoMany people move across the country or even between countries for these jobs, especially to the SF Bay Area. You want more assurance than that before you uproot your life. Additionally, the time to spin up at a mature company with it's on tooling and enormous amounts of existing code can be really long. I don't think you can generally tell in two days whether a person is going to do well.
- mixmastamyk 6y agoIf you can do common things well, you can learn a codebase. Remote contracts are a thing as well. I'm not sure international hires are relevant to the discussion, they are at best a sliver of the whole.
- blamestross 6y agoThe biggest problem with this is that in bigger companies it is assumed you will need up to a year to "onboard" and that your first first few months will be drinking from a firehose of custom local knowledge and infrastructure details. We don't expect new hires to be productive for at least a month or three after hire.
- scarmig 6y agoIt's not a question of whether it provides a perfect signal. It's a question of how the signal it provides compares to alternatives. Say what you will about whiteboards, but every other interview structure has its own issues, including being artificial, particularly at scale.
- Aeolun 6y agoIf a doctor can be interviewed without being asked to operate on people, or an architect without being asked to build a home, can we not interview without asking someone to write code?
- scarmig 6y agoMoving to a doctor-style credential model would probably make the interview process less intense. But it also adds years of additional education and certifications. And it's unclear whether it would cause a net reduction of stress and pointless studying: pre-med and medical students aren't known for their laid back progression to gainful employment. A lot of the people here would clearly be shocked to discover just how adversarial jobs outside of software engineering can be.
- stormbrew 6y agoHonestly I think this is a poor analogy. It's considerably easier to verify the work history of a surgeon or an architect. Their work is prominent and difficult to plagiarize. Trades might be more applicable, and in trades you likewise have certain kinds of certification or even a guild-like system to keep skills and performance visible and consistent. There's not really any equivalent in programming (though there is in IT more broadly). Even a university degree is not really any particular proof of an ability to code, a lot of programs can be taken without having to write much code solo. Programming is usually done collaboratively, either implicitly (through the use of base libraries) or explicitly (coworkers, group projects) and there are definitely people who freeride on those collaborations to a great extent.
- mdifrgechd 6y agoI'm not super familiar with doctors' career progression but as I understand they have a residency which is basically a super long training / interview. And I bet to become a surgeon at an elite institution you have spent a lot of time being watched doing your job. Also another good example is cooks, who get hired based on working a shift unpaid to see how they fit with the team. Asking for a hands on demo is pretty common.
- ksk 6y agoI disagree. It doesn't have to be confrontational if you don't want it to be. As a manager whose used it plenty in the past, I've found it to be an excellent tool to filter out people who were smooth talkers and seemed "clued in" but didn't have the technical chops to do anything. I didn't care at all about syntax, language of choice, or anything superficial like that. All I wanted to see was how they approached a problem, not that they simply memorized a piece of trivia. Also you can ask design or high level architecture questions during a whiteboard-interview too. I have found that simply trusting someone's word is not enough, you need to verify that they can actually back it up. In the end, resume, grades, side-projects, whiteboard code, style of problem solving, feedback from previous co-workers, etc, etc, are all signals that you have to absorb and make a decision. You can't just rely on one signal.