Live data from Hacker News

Whiteboard exercises are a terrible way to investigate coding ability (2012)

exratione.com

31–40 of 42 posts

Re: Whiteboard exercises are a terrible way to investigate coding ability (2012)

#31

I don't see the problem with whiteboard as long as its emphasized that you are looking for an algorithmic solution, not a perfectly running code snippet in a specific language. Whiteboard is great for sketching out ideas and solving problems collaboratively, which is a good indicator of team fit.

Here's the problem with whiteboard interviewing. You can't see how I think. It's just not possible. I'm trapped in a box with a strange person who is staring at me & asking me really invasive questions. If you wanna know whether or not I know about optimistic locking, just ask me "do to know about optimistic locking well?". If I do, ask me an optimistic locking question of modest difficulty. If I don't, don't spend a…

I take drugs to do interviews. Modafinil. It gets me a little bit jittery and all over the place. But programmers tend to like that nervous energy

There is just no way for me to stay on point for all of four or five hours of successive grilling. It's a lot more exhausting than thinking about anything on my own

Re: Whiteboard exercises are a terrible way to investigate coding ability (2012)

#32
post #20

Earlier quoted context omitted.

Exactly right. I think a lot of people stress that a whiteboard exercise is not a great way to ascertain coding skill.... and they're right. The part they're missing is the whiteboard exercise isn't intended to only test coding skill. It's about how well you ask questions, how well you listen to instructions, how well you work with others and interpret the specs and information you're given. Then it's about how well…

In practice, facing down some 25 year old who’s been at the company for all of 9 months, it is all about “the answer.” In some cases, it’s about 3 answers. Often, it’s actually about their answer — you must do it their way, otherwise you are wrong. This is not the case 100% of the time, but it is often enough that if you’re interviewing in SF, particularly at startups, you will see it at least every few interviews. I…

Doesn't sound like a place anyone would want to work at anyway.

That's the great thing about an on-site interview, the evaluation goes both way.

Re: Whiteboard exercises are a terrible way to investigate coding ability (2012)

#33

I don't see the problem with whiteboard as long as its emphasized that you are looking for an algorithmic solution, not a perfectly running code snippet in a specific language. Whiteboard is great for sketching out ideas and solving problems collaboratively, which is a good indicator of team fit.

> Whiteboard is great for sketching out ideas and solving problems collaboratively, which is a good indicator of team fit.

Agreed.

But asking an algorithmic problem is usually not what you're going to solve on the whiteboard for the vast majority of jobs.

In most jobs, it's usually some variant of:

- We have some new feature, what's a good way to design it - We're trying to add this feature to this existing thing, what's the lowest impact way of modifying the existing code. - We've got an existing feature that has some problem (bug, complexity, performance), Is there a way to solve that, and perhaps the same entire class of problems across the application by implementing a known design pattern.

There's not a huge amount of novel thinking other than how to specifically glue existing libraries, design patterns and so forth, together with business specific logic.

Most whiteboard coding questions tend to be of the "Design an algorithm to solve an anagram" or "Implement a sort function" which don't relate to the job at all, and tell you nothing about the candidate's ability to do any of the things they're going to do day to day.

Re: Whiteboard exercises are a terrible way to investigate coding ability (2012)

#34

I don't see the problem with whiteboard as long as its emphasized that you are looking for an algorithmic solution, not a perfectly running code snippet in a specific language. Whiteboard is great for sketching out ideas and solving problems collaboratively, which is a good indicator of team fit.

> Whiteboard is great for sketching out ideas and solving problems collaboratively, which is a good indicator of team fit. Agreed. But asking an algorithmic problem is usually not what you're going to solve on the whiteboard for the vast majority of jobs. In most jobs, it's usually some variant of: - We have some new feature, what's a good way to design it - We're trying to add this feature to this existing thing, wh…

I guess you can run an interview poorly whether its on a whiteboard or anywhere else. If you are looking for an implementer-type role that isn't going to be doing much problem-solving, it could be that an interview working with real code makes more sense. A good process should involve a mix of these situations to get the full picture.

Re: Whiteboard exercises are a terrible way to investigate coding ability (2012)

#35
I like doing real work on a whiteboard. Especially if there's two or more devs involved. It's a great way to see the whole problem at once, and it's so much more productive than all sitting at a keyboard together.

So a whiteboard is a pretty natural medium for interviewing for me.

Re: Whiteboard exercises are a terrible way to investigate coding ability (2012)

#36

I don't see the problem with whiteboard as long as its emphasized that you are looking for an algorithmic solution, not a perfectly running code snippet in a specific language. Whiteboard is great for sketching out ideas and solving problems collaboratively, which is a good indicator of team fit.

Yup.

In a normal environment, when given a tough problem to solve, a whiteboard is like a scratch pad for ideas.

Out of that amalgamation of insights, comes the final solution.

When given a whiteboard, the interviewer ought to assess the thought process the interviewee is going through. Even if the outcome is wrong, if the thought process in acceptable, the solution will present itself eventually.

As an interviewer, I would also ask to list out the many ways one can solve a problem.

To me this is utmost important because in the real world, choosing one of the many ways to solve a problem is an important skill. The theoretically correct solution is not always the practical / implementable / cost-effective solution.

Re: Whiteboard exercises are a terrible way to investigate coding ability (2012)

#37

I don't see the problem with whiteboard as long as its emphasized that you are looking for an algorithmic solution, not a perfectly running code snippet in a specific language. Whiteboard is great for sketching out ideas and solving problems collaboratively, which is a good indicator of team fit.

Yup. In a normal environment, when given a tough problem to solve, a whiteboard is like a scratch pad for ideas. Out of that amalgamation of insights, comes the final solution. When given a whiteboard, the interviewer ought to assess the thought process the interviewee is going through. Even if the outcome is wrong, if the thought process in acceptable, the solution will present itself eventually. As an interviewer,…

Add to that the need for being able to explain that solution, which is something that the automated "pass the test" type screens can't assess.

Re: Whiteboard exercises are a terrible way to investigate coding ability (2012)

#38

I'm an anomaly. I like whiteboard algorithm tests. I do still think it is kinda a waste of time doing Leetcode over and over like what I'm doing right now, but hear me out. An even more waste of time is actually learning framework A, B, C, D, database A, B, C, D, bundler A, B, C, D. The more and more I think about it, as a fullstack developer, I continuously forget documentations and how a specific technology works,…

I had this problem with switching contexts. For work, we use a combination of old Java, Tomcat, JS and the likes. For my hobby, I mainly program games in C#. Two entirely different infrastructures. That said, I can keep both up decently well due to the sheer volume of practice.

A few months ago I had my first go at ASP.NET Core, specifically Razor. Hadn't touched it for months, now I'm trying it again and I already forget intricacies of the syntax (when to put curly braces etc.), all stuff you only really remember through continued practice. Most of all: its just knowledge you can find on the internet. The case isn't unique enough to not have a creative solution or find a source on. In fact, the information is so easy to find, its almost a waste of brain space to remember rather than figuring out the pattern to uncover the solution next time.

I also find webdev to be more and more complex by the year. Not because of the frameworks introduced, but due to the increasing demands from users, the competition and security issues, while there's still very little to streamline the process for the developer. It takes a lot of steps to get to the point where your site is online, with certified security, connected to a domain instead of an IPaddress, coming as someone who primarily did desktop development.

Re: Whiteboard exercises are a terrible way to investigate coding ability (2012)

#39
Surely this can be tested fairly easily by seeing how well whiteboard test results correlate with coding ability or developer effectiveness more generally. I'd assume businesses that hire a lot of developers have the data to know whether whiteboard tests are useful for achieving their hiring goals.

Re: Whiteboard exercises are a terrible way to investigate coding ability (2012)

#40
post #9

Programming on a projector is the stuff nightmares are made of... but it still beats a whiteboard. Anyway, I don't think those boards are there to investigate ability. They are basically useless for that. If they have a rational motive at all, it's probably because the most strict schools teach the "assemble everything in your head, then write it" method, so they accidentally select people with good credentials.

How about: bring a laptop with an HDMI port (or adapter) and a dev environment for "whiteboard" and "napkin" problems. I'd be OK with an Interview like that, just don't laugh about the fact that my laptop is a still functional but otherwise aging smart terminal for securely connecting to my real workstations when I'm somewhere I don't trust.

It's not the setup that is bad, it's how there are a lot of people focused on your code, noticing your typos before you do.

It's bad enough when you are in a position of power like in a presentation or a class. It's nearly unthinkable when you are in a position of weakness.

Post reply on HN