Whiteboard coding in software developer interviews.

[)roi(];17542262 said:
Lol, exactly we have far more in common with Matt Groening than we do with Edison or Albert Einstein.

That's a very broad brush you using on everyone, when you don't have a clue what we all do.
 
[)roi(];17542262 said:
Lol, exactly we have far more in common with Matt Groening than we do with Edison or Albert Einstein.

nom.png
 
That's a very broad brush you using on everyone, when you don't have a clue what we all do.
Nope, I provisioned for the few that either might be or those whose egos wouldn't admit to anything else
[)roi( said:
]
...(unless of course you're advancing in the field of computer science e.g. Quantum Computing, Lambda Calculus, ...)
 
image.jpg
I don’t want to be on an engineering team with people who were primarily chosen by their ability to write code on a whiteboard.
https://modelviewculture.com/pieces/technical-interviews-are-bull****

You’ve got one group of people who love whiteboarding. Whiteboarding allows interviewers to see how a candidate thinks. Whiteboarding gives the illusion of programming without the fear of compiler errors. Solving a problem algorithmically on a whiteboard is the same as programming.

And you’ve got the people who think whiteboarding during interviews is just as terrible as waterboarding a candidate. Whiteboard problems cause interviewers to become smug, sexist, and xenophobic. Candidates are forced to sweat bullets at a whiteboard while a death panel of interviewers silently judge them. Whiteboarding a programming problem is entirely different from computer programming.
https://larry-price.com

As to what's the alternative... I think Larry's idea sounds a lot better & probably far more effective than WB.
Let’s make them work like we do, but only for a reasonable amount of time. Come up with a medium-difficulty coding problem and write it yourself. But don’t make it clean. Make it sloppy. Make a ripe mess of that code. Add an obvious bug or two.

Now, when you bring in an interviewer or talk to them on a video call, show them this code. Can they figure out what it does? Can they find the bugs? Ask them to code review it. Do they see all the terrible things you’ve done? Can they tell you how to make it better? Can they do it without being condescending (news flash: most full-time programmers cannot do this)? This should all be a back-and-forth, with the (lone) interviewer working with the candidate to discuss any issues. If you have time, ask them to actually correct and refactor some of the code. If you’re into that kind of thing, work with them to write some test cases for the bugs you’ve fixed. If for some reason you still don’t know whether or not you like this person, have them add some functionality to the codebase. Then code review their code and see how they handle your suggestions. You should limit this exercise to an hour, maybe two if you’re a sadist. Do not make this an all day thing.

Think about how much you could get out of this exercise. You’ll determine whether the candidate knows what code looks like, knows how to read code, knows how to communicate about code, and knows how to fix bad code. You’ll also get a bit of their personality based on how mean they are during the code review sections. Hopefully, you were able to have a real discussion about design decisions and coding during the interview. The candidate will have done very little programming, just like you and me on a normal day. Best of all, you’ll only have spent an hour of each other’s time trying to figure out if the candidate is competent. Leave time for questions at the end and be done with it.
 
Last edited:
[)roi(];17543440 said:
Is this the way you look at art:
View attachment 359864
That way all you see is the "brush strokes"; stand back and admire the art. Naturally I'm assuming this is not you...
View attachment 359866
Art hardly evers looks beautiful under a microscope.

No, I look at it through my viewfinder and see this:

24527626191_7ac4966327_z.jpg

...and lemme tell you, writing code and creating art are two very different things. Anything one enjoys doing and are good at can feel like "art" but doesn't mean you are actually being artistic in doing it.
 
No, I look at it through my viewfinder and see this:

View attachment 359874

...and lemme tell you, writing code and creating art are two very different things. Anything one enjoys doing and are good at can feel like "art" but doesn't mean you are actually being artistic in doing it.
That probably says more about how you do it and less about how it's done overalll. Jokes aside. Art comes in a variety of forms, and nobody is going to love every rendition. That photo you took most probably came from a digital camera; now think for a moment of the software that makes the magic happen when you adjust settings and take the photo.

Similarly look at the touch phone you own and tell me its not a thing of beauty, not only in its physical design but inthe elegance of its operation, and what about web sites; they too can have a similar impact, but as with anything you get great art, mediocre art and the really awful stuff.

Some may say cabinet making is not art or the work done by a boilermaker, ... It's a matter of perspective; just like not everyone can accept that abstract art is art.
If you remember until recently the purist community used to debate whether digital art should be considered as real art; because "the computer had probably done most of the work" -- today we know that's rubbish.

I find this a little enlightening re this notion: http://www.paulgraham.com/knuth.html
 
Last edited:
[)roi(];17542220 said:
Go back and read your post prior to my response, assumptions are clear; unless of course you were part of these interviews.

Given that you're stating arbitrary things that I never actually assumed in any way, nor had any reason to assume (like terminology he knew before his interview) - I think that you actually need to tell me what these assumptions are, rather than making vague statements. Thus far it seems like you have a comprehension issue - or rather anything said (and apparently not even said) is an "assumption" if it doesn't match your opinion.

[)roi(];17542220 said:
You make generalized statements about individuals classifying their skill as if you're the authority on these matters, maybe you should take time to research their work before making crazy statements, especially when these statements leave no possibility of fault on the part of Google, ...

I am making generalized statements about an individual based on how he did in an interview question - that is the point of interviews. I am putting myself in the interviewer's shoes to help those who don't understand why things are the way they are over there, since I've actually been in those shoes thousands of times. The story thus far hasn't suggested anything that makes me think this is a problem with Google.

[)roi(];17542220 said:
do I really need to remind you that Max was employed by Apple, and his work since joining Apple is visible here:

Max was only employed by Apple several months after this. Apple, quite frankly, does not have the same standards as Google, and Apple has far less of a bend towards hiring computer scientists.

[)roi(];17542220 said:
Does this really look like the work of some fool that is incapable of reversing a binary tree, especially considering that you said: "I had never heard of 'inverting a binary tree'"; but still you can't imagine a scenario where you are in an interview asked the same question, and you simply don't know.

This work doesn't tell me anything about his capability to reverse a binary tree or not (this information comes from Max himself via Twitter), it is very "algorithm light". Also, if you can't invert a binary tree, it doesn't mean you're a fool, rather that you're really bad at computer science - you're the only one making the assertion that he must be a fool.

Of course I can imagine being in an interview and being asked the same question:
Interviewer: "Can you write some pseudo-code to invert a binary tree."
Me: "What do you mean by 'invert a binary tree'?
Interviewer: "Flip it vertically [possibly shows example]."
Me: "[30 seconds later] Here you go..."

You seem to be bent out of shape about knowing what this means - the interviewer will just tell you.

[)roi(];17542220 said:
if he really was such a lost case as you imply, then why did Apple employ him and choose to task him with a vital part of Swift's architecture; oh wait let me guess the answer on this... because Apple got it wrong... and Google doesn't.

err... because he already had extensive experience doing this, and Google didn't need him for this.

[)roi(];17542220 said:
FFS who really studies algorithms every day; for most developers its a situation of review the required topics and write the code. I could probably draw a bit of blank with many of these, except of course if you ask me to verbatim rewrite the stuff I recently coded, for example: parser combinator and applicative functors, .. But heck ask me to write a quicksort and expect a blank stare, similarly before I wrote the parser combinator & related applicative token functors, I had no clear way to tackle it; Google and a book helped frame that.

I don't "study" algorithms every day, but I and my colleagues (not at Google, FYI) work on developing and improving algorithms every day. Also, we're not talking about "most developers" here - this is Google.
 
Last edited:
[)roi(];17542242 said:
While I'm at it let me jump in on another bugbear, the use of the term Computer Scientist or Computer Science, when nothing we do justifies that classification (unless of course you're advancing in the field of computer science e.g. Quantum Computing, Lambda Calculus, ...), but for most of us it's a very big misnomer. I like to think of what we do as more of art than science; science is like baking; precision in ingredients and process is vital, but programming like art comes down to the skill of the artisan in using the tools at hand.

Jesus, dude you can't just make up your own definitions.
https://en.wikipedia.org/wiki/Computer_scientist

Nothing you do may match the definition, but don't speak for all of us.
 
Given that you're stating arbitrary things that I never actually assumed in any way, nor had any reason to assume (like terminology he knew before his interview) - I think that you actually need to tell me what these assumptions are, rather than making vague statements. Thus far it seems like you have a comprehension issue.



I am making generalized statements about an individual based on how he did in an interview question - that is the point of interviews. I am putting myself in the interviewer's shoes to help those who don't understand why things are the way they are over there, since I've actually been in those shoes thousands of times. The story thus far hasn't suggested anything that makes me think this is a problem with Google.



Max was only employed by Apple several months after this. Apple, quite frankly, does not have the same standards as Google, and Apple has far less of a bend towards hiring computer scientists.



This work doesn't tell me anything about his capability to reverse a binary tree or not, it is very "algorithm light". Also, if you can't invert a binary tree, it doesn't mean you're a fool, rather that you're really bad at computer science - you're the only one making that assertion.

Of course I can imagine being in an interview and being asked the same question:
Interviewer: "Can you write some pseudo-code to invert a binary tree."
Me: "What do you mean by 'invert a binary tree'?
Interviewer: "Flip it vertically [possibly shows example]."
Me: "[30 seconds later] Here you go..."

You seem to be bent out of shape about knowing what this means - the interviewer will just tell you.



err... because he already had extensive experience doing this, and Google didn't need him for this.



I don't "study" algorithms every day, but I and my colleagues (not at Google, FYI) work on developing and improving algorithms every day. Also, we're not talking about "most developers" here - this is Google.
This is sounding far too much like it belongs in a fanboy thread: just a lot of "Google vs. Apple" unsubstantiated dribble.

Sorry but you lost me at "Apple, quite frankly, does not have the same standards as Google, and Apple has far less of a bend towards hiring computer scientists.". Again as always I'll apologise if you can produce any concrete evidence to support this; but let me guess: you'll counter it with something like: "Google it yourself, I frankly don't have time to do it for you...blah blah ...avoidance hogwash..."

Sorry but I'm starting to wonder why I even bother replying to your posts...
 
Last edited:
Jesus, dude you can't just make up your own definitions.
https://en.wikipedia.org/wiki/Computer_scientist

Nothing you do may match the definition, but don't speak for all of us.
Maybe if you actually read a bit, you'll understand this is not something new: http://www.paulgraham.com/knuth.html
It has been referred to as an art for longer than we've both been alive... and for considerably longer than it has been called a science.

But I guess as soon as I pissed on your ego... the brain turned off..

I really like Don Knuth's summary of this:
To summarize: We have seen that computer programming is an art, because it applies accumulated knowledge to the world, because it requires skill and ingenuity, and especially because it produces objects of beauty. A programmer who subconsciously views himself as an artist will enjoy what he does and will do it better. Therefore we can be glad that people who lecture at computer conferences speak about the state of the Art.

This post on Stackoverflow is probably a succinct enough split between Computer Scientists and Computer Programmers:
Computer science is an academic field. It's a little like studying mathematics. It's studying and researching algorithms, data structures, and similar.
Computer Programmers write programs; the term tends to be used to describe people in industry, although of course computer scientists write programs too.
An archetypal computer scientist would be someone like Don Knuth. His work on algorithms is legendary.
An archetypal computer programmer might be Jeff Atwood. We're using his site right now.
 
Last edited:
Okay we get it, its an art. Can we move on now ? Or do you want to flog this dead horse even more.
 
[)roi(];17543604 said:
View attachment 359870

https://modelviewculture.com/pieces/technical-interviews-are-bull****


https://larry-price.com

As to what's the alternative... I think Larry's idea sounds a lot better & probably far more effective than WB.

I'm reading that piece and I just don't see how whiteboard interviews are possibly sexist. Massive assumption made by the author of that article.

Any of the replacements that she suggests as possible replacements for whiteboard interviews would still be subjective and thus suffer the same "bias problems" as whiteboard interviews. A whiteboard is essentially a tool to facilitate conversation around a technical question - it should seen as optional. Each of her suggestions involves different replacements for the whiteboard.

the article said:
It’s always struck me as odd that an industry which regularly bemoans the lack of qualified software engineers (specifically, the lack of qualified software engineers who aren’t straight cisgender white or Asian men)

I didn't know it was a bad thing to be a cisgender white male software engineer. I'm sorry for being born this way.
 
Last edited:
Okay we get it, its an art. Can we move on now ? Or do you want to flog this dead horse even more.
Sorry, probably should have brought that up on a separate thread (CLOSED)
 
I'm reading that piece and I just don't see how whiteboard interviews are possibly sexist. Massive assumption made by the author of that article.

Any of the replacements that she suggests as possible replacements for whiteboard interviews would still be subjective and thus suffer the same "bias problems" as whiteboard interviews. A whiteboard is essentially a tool to facilitate conversation around a technical question - it should seen as optional. Each of her suggestions involves different replacements for the whiteboard.



I didn't know it was a bad thing to be a cisgender white male software engineer. I'm sorry for being born this way.
I didn't think the articles were that bad,.

I was hoping the additional links would help to frame some more of the negativity with WB (there's a lot); the US in recent years has become very sensitive to not only gender bias in the tech industry, but also bias against LGBT. You need only follow similar discussions on Twitter to realize it's a very vocal movement, and in amongst that discontent, there has to be merit. The Tech industry is still very male dominated; how it became that way is a separate debate, but related to this there's a belief that WB interviews in particular don't facilitate a fair platform to measure ability, specifically because it does nothing to neutralize the effect of the bias that is inherent to US culture.

I doubt that SA given its history is any better off in this regard?
 
Last edited:
[)roi(];17544068 said:
Maybe if you actually read a bit, you'll understand this is not something new: http://www.paulgraham.com/knuth.html
It has been referred to as an art for longer than we've both been alive... and for considerably longer than it has been called a science.

But I guess as soon as I pissed on your ego... the brain turned off..

I really like Don Knuth's summary of this:


This post on Stackoverflow is probably a succinct enough split between Computer Scientists and Computer Programmers:

This just doesn't make any sense - just because some people consider it an art, doesn't mean that Computer Science, is not a science and someone that works "researching algorithms, data strucures and similar", aren't "Comptuter Scientists". I don't take issue with other people defining things differently, it's when someone says that the most commonly used definition of the term is invalid because of some bizarre need to make things mutually exclusive (and an even more bizarre need to derail threads, rather than addressing any of the points brought up).
 
This just doesn't make any sense - just because some people consider it an art, doesn't mean that Computer Science, is not a science and someone that works "researching algorithms, data strucures and similar", aren't "Comptuter Scientists". I don't take issue with other people defining things differently, it's when someone says that the most commonly used definition of the term is invalid because of some bizarre need to make things mutually exclusive (and an even more bizarre need to derail threads, rather than addressing any of the points brought up).
Topic is closed; FYI Knuth, was the author of that: https://en.m.wikipedia.org/wiki/Donald_Knuth
 
[)roi(];17546492 said:
I didn't think the articles were that bad,.

I was hoping the additional links would help to frame some more of the negativity with WB (there's a lot); the US in recent years has become very sensitive to not only gender bias in the tech industry, but also bias against LGBT. You need only follow similar discussions on Twitter to realize it's a very vocal movement, and in amongst that discontent, there has to be merit. The Tech industry is still very male dominated; how it became that way is a separate debate, but related to this there's a belief that WB interviews in particular don't facilitate a fair platform to measure ability, specifically because it does nothing to neutralize the effect of the bias that is inherent to US culture.

I doubt that SA given its history is any better off in this regard?

Frankly I don't see either the massive negativity with regards to WB tests, or more specifically, how WB tests are biased against women.

More specifically, they have not said why WB tests are biased and why other tests are not. They just claim that these tests are biased, but offer no proof for such. Neither do they offer any tests that any non WB tests would not be biased. Even if I assign you a written test to do, the way in which I construct the test could still have a subtle bias that could enable candidates of my preferred group to do better. Perhaps I like Asian gay men with long blonde hair - I'm sure I could construct a written programming test with a subtle bias towards them. Perhaps I'd share their hand more enthusiastically when I greeted them. Who knows? The point is, while there are valid criticisms of WB tests, I don't see bias as one of them.
 
Last edited:
[)roi(];17544060 said:
This is sounding far too much like it belongs in a fanboy thread: just a lot of "Google vs. Apple" unsubstantiated dribble.

Sorry but you lost me at "Apple, quite frankly, does not have the same standards as Google, and Apple has far less of a bend towards hiring computer scientists.". Again as always I'll apologise if you can produce any concrete evidence to support this; but let me guess: you'll counter it with something like: "Google it yourself, I frankly don't have time to do it for you...blah blah ...avoidance hogwash..."

Sorry but I'm starting to wonder why I even bother replying to your posts...

Can you produce concrete evidence to support that Apple has more stringent hiring requirements than FNB? I couldn't possibly see how such a thing could exist.

Some things to think about:
- Google's bread and butter is algorithms, Apple's bread and butter is design -- I don't know why you would even expect Apple to try compete with Google for computer scientists.

- The larger the supply of candidates applying to a company, the higher they raise the bar. From an employee's perspective, Apple is a second tier tech company -- lower compensation, fewer benefits, less interesting projects and less prestige (relative to Google, Facebook and a few "hot" smaller companies)

- Google's intense interview process, high bar, and heavy competition for positions are infamous -- if you aren't aware of this, you've been living under a rock.

- Anecdotally, when people left my old company, both being very large companies, naturally, many people went to Apple, and many went to Google. Most of the smarter guys went to Google, and most of the remainder went to Apple.

- Also anecdotally, I've never heard of someone failing the Apple interview, and passing the Google interview, but I have heard of the reverse numerous times

The anecdotes above aren't just "stuff I've seen as some guy somewhere", I was a Silicon Valley manager in a large company, where we would keep track of these things, so this actually adds up to a lot of samples.

As for being a "Google fan-boi" - I don't like Google's interview process, or hiring process, and don't particularly like the company, and don't expect that I would ever want to work there. They've been after me to interview for nearly 10 years, and I never have. Still, there's no denying their reputation in the valley, and that they've been hiring only top talent.

Speaking of avoidance, rather than reply coherently to any of my posts, you make random unsubstantiated accusations of "lots of assumptions", and even give bogus examples of assumptions, yet can't point out where I made them in the text when asked. You somehow seem to not understand the difference between being asked to apply a specific algorithm and to create a new algorithm. You seem to think that trees are some special thing that only computer scientists working in particular fields would understand, and keep drawing analogies between this and advanced compiler architecture. In this thread, and other threads, you simply ignore questions, and randomly rage on about some tangential issue. This brings me to only one conclusion: you must be Swa.
 
Last edited:
Top
Sign up to the MyBroadband newsletter
X