News for hackers. Stuff that matters.
Re:Engineering whiteboard interviews: yay or nay? by pavel_lishin on Thursday August 09, 2018 @03:04PM (#17727380)
Minor kvetch: quoting the way you did it makes long lines very difficult to read. I usually quote like this:

> I am a quote

This makes the quotation doubly-distinct, and still readable on mobile devices.

===

To the actual point I wanted to make: plenty of engineers at companies code on a whiteboard. They schedule a meeting, grab a room, and talk things out, while making notes, diagrams and sometimes even actually writing out some code on a whiteboard.

I hope nobody asks people to write compilable code on a whiteboard, but asking a person to talk through a problem and jot down some pseudocode doesn't seem like an awful thing to me. Communication is a pretty critical part of our job.

Re:Engineering whiteboard interviews: yay or nay? by pmiller2 on Thursday August 09, 2018 @03:10PM (#17727440)
“Jotting down some code on a whiteboard” with a colleague is a much lower stress scenario than deriving and writing down, under a time limit, some DP algorithm you might not have used since college, and proving its correctness and run time to some stranger who may be barely out of college themselves.
Re:Engineering whiteboard interviews: yay or nay? by pavel_lishin on Thursday August 09, 2018 @03:39PM (#17727728)
I don't think people should play CS-quizshow during whiteboard interviews. Being asked to implement a breadth-first search, or whatever, is kind of annoying - especially since there's effectively one correct answer. At best, you're testing my memory and whether I read the right interview book.

I had to do that at my last interview. I got through it ok-ish. The more interesting question was a more general system design question - how would I architect a system to do X, under constraints Y and Z. What would I do if a new constraint came up? Ok, now how would I make it more resilient? There, the whiteboards is just a tool I can use, not the primary focus.

Re:Engineering whiteboard interviews: yay or nay? by scarejunba on Thursday August 09, 2018 @03:58PM (#17727936)
Surely not BFS. That's something you can figure out from first principles and knowledge of some data structures like stacks and queues, but I'd expect knowledge of those data structures anyway.
Re:Engineering whiteboard interviews: yay or nay? by pavel_lishin on Thursday August 09, 2018 @05:14PM (#17728568)
Sure, I can, and I did, although I didn't come up with the super-hindsight-obvious solution I'm sure I learned three times over in college.

But it's the interview equivalent of your driving instructor making sure you adjust your side and rear view mirrors before you start the car.

Re:Engineering whiteboard interviews: yay or nay? by throwawayboye on Thursday August 09, 2018 @04:33PM (#17728216)
I don’t care if candidates can figure out BFS under intense pressure in 30-60 minutes. That is nobody’s job anywhere ever. I want to know if someone can think creatively, if they’re a pain in the ass to work with, if they’re thoughtful and careful or if they shoot from the hip. Admittedly, these are hard to measure (which is one reason why I would support some kind of mild licensure, but that’s a different subject), but being able to derive BFS does not correlate with competence or ability. Maybe if you’re doing router hacking or something, I guess, but specific algorithms are so little of most developers’ careers.

Honestly, we all might as well read chicken entrails because that would be about as predictive as our current interview practices.

Re:Engineering whiteboard interviews: yay or nay? by pmiller2 on Thursday August 09, 2018 @04:12PM (#17728033)
You’d be amazed at how little some otherwise competent people can figure out from first principles in an interview in front of a whiteboard.
Re:Engineering whiteboard interviews: yay or nay? by recursive on Thursday August 09, 2018 @03:12PM (#17727453)
Interviews are necessarily more stressful than typical work. That's not just a property of whiteboard coding.
Re:Engineering whiteboard interviews: yay or nay? by pmiller2 on Thursday August 09, 2018 @03:25PM (#17727596)
More stressful, sure. For many people, whiteboard coding is disproportionately more stressful than typical work, and that’s the problem.
Re:Engineering whiteboard interviews: yay or nay? by lfowles on Thursday August 09, 2018 @03:28PM (#17727623)
One particular expectation when whiteboard coding for an interview is that there is little/no downtime, you must be making progress or talking about your thoughts. Incidentally, 50% of my thought process then becomes "How do I talk about what I'm thinking about? Oh no, I'm only thinking about talking about what I'm thinking about..."
Re:Engineering whiteboard interviews: yay or nay? by ubernostrum on Thursday August 09, 2018 @03:44PM (#17727778)
I'm working on a large-ish project right now, and into one of the more tricky bits literally today. And you know what? I take breaks. I go read something on the internet or post a comment, or I go for a walk, or I go do one of the smaller housekeeping tickets I keep in my queue to give my brain a rest from continually focusing on the hard parts of the problem.

Can't do that in a whiteboard session.

Re:Engineering whiteboard interviews: yay or nay? by hackits on Thursday August 09, 2018 @08:14PM (#17729684)
Most of the time their technology stack with be vastly different than anything else you've worked with. There will be other people you will need to discuss and coordinate with. Articulating your thoughts and expressing yourself clearly and concisely is more important.

Vast majority of the technical problems have been solved and its delivery a solution to a business problem that is the most important aspect.

Re:Engineering whiteboard interviews: yay or nay? by hackits on Thursday August 09, 2018 @08:12PM (#17729672)
For this reason I don't do living coding sessions. People have asked me `why` which I politely say the answer is no. They seem to like the boundaries I set for myself and my project's more than some sort of white board.

Yes, I've been turned down for jobs over the white board but I've had more positive results than negative.

Re:Engineering whiteboard interviews: yay or nay? by stlHusker on Thursday August 09, 2018 @03:39PM (#17727733)
"Interviews are necessarily more stressful than typical work. That's not just a property of whiteboard coding."

My sister, a pediatric ER nurse would disagree with you. The interviews are largely behavioral and are a breeze. No dummy is wheeled in with head trauma, random "new" diseases aren't invented and asked to be treated, etc. The simple fact of the matter is if hospitals hired in the same way, they would have no staff.

Re:Engineering whiteboard interviews: yay or nay? by pavel_lishin on Thursday August 09, 2018 @03:50PM (#17727847)
I would argue that a piece of paper showing that someone attended school and graduated and is licensed to be an ER nurse carries much more weight than a piece of paper showing that I'm allegedly qualified to be a software engineer.

I know it's totally anecdotal, but we've all heard horror stories about candidates who couldn't write a for loop; some of us have witnessed these things first hand. And yes, phone screens should be filtering out those sorts of candidates long before they start sweating with a dry-erase marker in their hand, but, well.

How likely is an applicant for a nursing job to flat out not know how to stitch up a wound, or to take a patient's pulse and temperature?

Re:Engineering whiteboard interviews: yay or nay? by stlHusker on Friday August 10, 2018 @10:24AM (#17733477)
Again, the op stated these things are put there to "show how people react to stress" -- my post was a response to that, there is no re-creation of a stressful environment in the situations I stated.

"I know it's totally anecdotal, but we've all heard horror stories about candidates who couldn't write a for loop; some of us have witnessed these things first hand. And yes, phone screens should be filtering out those sorts of candidates long before they start sweating with a dry-erase marker in their hand, but, well."

Yes, it is a failure of how you have set up your hiring pipeline which you are now band-aiding. The majority of those folks can be screened by one look at a resume or in the first 30 seconds of the phone interview. Other hiring managers in our company repeatedly had this problem until we got them to focus of the right candidate qualities and ask the appropriate questions.

Take for example your local symphony orchestra; they have the same problem where people with visions of "making it" show up not being able to play at all. Want to audition? Send us an audition tape and a check. When you show up for the audition, you'll play a selection from these pieces and be asked to sight read this music. It is ironic that for an industry that is in a sense so subjective that the gates in the hiring process are more concrete.

To make an analogy, the software world is akin to:

Interviewer: "I see you are interviewing for the 1rst chair violin. The 3rd chair tuba player is really into experimental music, he would like to transpose Vivaldi's Four Seasons into a new scale with 12.5 notes per octave with a slight progressive jazz leaning. Oh, and since we all know there is pressure in performing in front of an audience, you have 30 seconds to think before the 2nd chair begins to throw rotten food at you. Reaction to stress and all you know...here is your tuba."

"But I don't play tuba...Are you asking me to play tuba? Am I going to be playing this nutcase's new music as part of our program?"

"Sigh...you don't know music do you?"

Re:Engineering whiteboard interviews: yay or nay? by vkou on Friday August 10, 2018 @01:50PM (#17735364)
The analogy to white-board interviews for hiring a musician is:

"Here's a couple of pages of unfamiliar sheet music that a second-year student should be able to play. You have an hour to figure out how to muddle through it on an instrument of your choice."

People hiring musicians don't do that, because they instead prefer to give candidates 16 bars of complex sheet music, and expect them to play it perfectly during the audition.

The programming equivalent would be to give someone a hard take-home problem, let them stew on it, bring them into the interview, and ask them to type in their solution, from memory, into a text file, on a keyboard with a broken Backspace key. That they will then compile, run, and compare the result of to that of the other 60 candidates auditioning for the role.

Are you sure you want to do auditions, instead of interviews?

> It is ironic that for an industry that is in a sense so subjective that the gates in the hiring process are more concrete.

That's because there's fifty thousand correct ways to solve a trivial programming problem, but only 'one' way to correctly play second violin in Vivaldi Four Seasons.

Music is a subjective art. Playing music is a mechanical process. My iPod can play music. My iPod can't implement a sorting algorithm.

Re:Engineering whiteboard interviews: yay or nay? by pavel_lishin on Friday August 10, 2018 @11:32AM (#17734236)
> The majority of those folks can be screened by one look at a resume

Not a significant enough majority, imo.

Re:Engineering whiteboard interviews: yay or nay? by vkou on Thursday August 09, 2018 @06:42PM (#17729194)
That's because she's already went through all that stress and bullshit and skills testing in med school and residency. If any clown could call themselves a nurse, and would apply to ER nurse jobs, it would take all of ten seconds before nurses would have to do whiteboard triage interviews.

I have no idea what the candidate did in their CS undergrad. Maybe they cribbed all their work from their roommate. Maybe they went to a party school. Maybe they spent the last 4 years as a 'Senior Developer' at FooCorp copying files from hard drives to floppy disks, and posting a few paragraphs a day on the company's WordPress install. Maybe they are an Architecture Astronaut who can talk for six hours about how great Haskell is at doing multi-manifold monadic trivariable entaglement, but has no idea how to do any real work.

Or maybe they spent the last decade building Bigtable and MapReduce, and Spanner, and TensorFlow at Google. I'm not an expert on Bigtable, or MapReduce, or Spanner, or TensorFlow, though - and I can't definitively, in 60 minutes, tell if the person I'm talking to is bullshitting me. I can't tell if they actually did any of that work, or they coasted. I can't tell if the complicated problem they are describing to me is actually hard, or if they are embellishing it. Even if I felt confident that I could make that conclusion, my opinion would be incredibly colored by personal biases.

Oh, I should check their GitHub, you say? Well, guess what - Jeff Dean - the guy who did spend the last decade building Bigtable and Mapreduce, and Spanner, and TensorFlow - doesn't have a GitHub account. Presumably because he has better things to do with his free time, then work on OSS.

Oh, I should hire fast and fire fast? Don't get me started on why that doesn't work...

Re:Engineering whiteboard interviews: yay or nay? by pmiller2 on Thursday August 09, 2018 @08:21PM (#17729726)
At least a test of triage skills would be a real world skills test. The equivalent for most whiteboard software engineer interviews would be a quiz on cellular biology.
Re:Engineering whiteboard interviews: yay or nay? by philwelch on Thursday August 09, 2018 @10:45PM (#17730329)
Hospitals also hire people who went already through an even more rigorous screening process than even exists in our field just to become eligible to be nurses and doctors.

Once you're an RN or an MD with all the appropriate qualifications, assuming you're not outright faking them, they can be reasonably confident that you are, in fact, a competent nurse or physician and move on from there.

We don't have that, and so we have to spend a lot of time making sure that a prospective candidate even has the basic skills and qualifications of a software engineer.

Re:Engineering whiteboard interviews: yay or nay? by jpindar on Thursday August 09, 2018 @08:37PM (#17729781)
As an embedded systems engineer, I disagree. I have never been asked to design a circuit, or even pseudocode firmware, on a whiteboard. In the electronics manufacturing industry, interviews consist of talking, mostly about projects I've worked on before and projects they've done before. Occasionally someone will give me the same written test they give technicians, but those tend to be pretty easy.
Re:Engineering whiteboard interviews: yay or nay? by dionidium on Thursday August 09, 2018 @03:43PM (#17727762)
> some DP algorithm you might not have used since college, and proving its correctness and run time to some stranger who may be barely out of college themselves.

I'm not opposed to white-boarding, but to reinforce this point I'll note that I would have done much better on some of these problems when I was just out of college than I would today, because they were all fresh in my mind.

I assure you I wasn't a better programmer or employee then.

Re:Engineering whiteboard interviews: yay or nay? by ubernostrum on Thursday August 09, 2018 @03:37PM (#17727712)
"Whiteboard interview" typically does not mean "sketch a general design of a system", or the other things whiteboards get actually used for on the job. It means "here's an algorithm challenge, solve it by writing the code on the whiteboard, and we'll flunk you if you make any mistakes".

Not always a whiteboard, either; one of the best engineers I ever knew flunked a Google interview because of a situation where he had to write a bash script and read it over the phone to the interviewer, who apparently didn't transcribe it correctly on the other end. But "they only hire the best", you know, and their practices are rock-solid and proven.

Re:Engineering whiteboard interviews: yay or nay? by lfowles on Thursday August 09, 2018 @03:45PM (#17727794)
Oof, I've had that experience during a technical phone screen with a different "hires only the best" company. I was asked to write (over the phone) a trivial statistical algorithm and started to describe the algorithm: "Function F returns a double and has two parameters, pointer to the start of the double array P and integer N for length of array." Apparently on the other end of the line was a human compiler that kept rejecting my input and preferred "double F open parens double star P comma int n close parens"!
Re:Engineering whiteboard interviews: yay or nay? by scarejunba on Thursday August 09, 2018 @04:00PM (#17727961)
This is hilarious! Such a strong indicator that you, as a candidate, should reject the employer.
Re:Engineering whiteboard interviews: yay or nay? by lfowles on Thursday August 09, 2018 @04:06PM (#17727995)
Yes, it was the final straw and led to me rejecting that industry as a whole :)
Re:Engineering whiteboard interviews: yay or nay? by pavel_lishin on Thursday August 09, 2018 @04:22PM (#17728118)
What are you doing now?
Re:Engineering whiteboard interviews: yay or nay? by lfowles on Thursday August 09, 2018 @04:24PM (#17728143)
Re:Engineering whiteboard interviews: yay or nay? by pavel_lishin on Thursday August 09, 2018 @05:16PM (#17728584)
Hah! I love the AXBY code-entering minigame :P This is pretty neat so far.

I, too, have a side project I'd love to quit my job to work on, but I think it's less monetizable than an actual game.

Re:Engineering whiteboard interviews: yay or nay? by lfowles on Thursday August 09, 2018 @07:16PM (#17729381)
Thanks! I really enjoy coming up with the themed minigames. The next one planned is a Kanban board minigame ... think of a cross between Tetris and the boardgame Patchwork.
Re:Engineering whiteboard interviews: yay or nay? by drharby on Friday August 10, 2018 @11:29AM (#17734200)
Ha! I did that for a year...and thinking about doing it again. I mean, selling my home and moving to say, costa rica, i could stretch my dollar, dev my heart out, and watch all the sunsets my heart desires
Re:Engineering whiteboard interviews: yay or nay? by BinaryIdiot on Thursday August 09, 2018 @03:52PM (#17727863)
I've worked at quite a lot of companies. Many of us will, occasionally, grab a room / whiteboard to go over something but 99% of the time it's a sort of flow or UX type thing.

I've _never_ seen someone, or have asked to participate in, some sort of whiteboard coding thing. Even with pseudo code. That just doesn't seem helpful to me, at all.

Re:Engineering whiteboard interviews: yay or nay? by tluyben2 on Thursday August 09, 2018 @09:07PM (#17729919)
Agreed; when there is code talking, we share screen on a projector/flatscreen and do it that way. How is writing code on a whiteboard good for anyone? Cumbersome and not reusable.
Re:Engineering whiteboard interviews: yay or nay? by privacypoller on Thursday August 09, 2018 @03:42PM (#17727761)
I don't doubt lots of companies do this, but I skeptical about the coding on a whiteboard. They talk in person, sketch out diagrams, highlight important aspects - why? because these things are all easier on a fluid analog medium like a whiteboard or piece of paper.

Actual Code? Not a chance. Portability, Durability, Efficiency - It's the worst of all worlds.

Re:Engineering whiteboard interviews: yay or nay? by bradenb on Thursday August 09, 2018 @07:44PM (#17729532)
Thank you for the quote pointed. I will remember that for next time! As to you’re point, I think others have covered it well, but I will add my agreement that communicating in an environment where you are comfortable and familiar with the topics ahead of time and won’t have your career prospects put in the line is much easier. Some people like myself simply can’t prepare for an infinite number of possible whiteboard scenarios and look competent.