12 ms·
Whiteboard interviews are a test of obedience, not intelligence
- optimalsolver 2y agoCan't it be both? In the same way a college degree tests your willingness to jump through hoops authority figures set for you, but it also demonstrates a basic level of mental competence.
- j7ake 2y agoYeah clearly. Most companies only want engineers to implement the companies ideas, but don’t actually care about high level ideas from those engineers. Imagine you are interviewing senior levels of engineer, like Guido van Rossum: in an ideal interview, you don’t want to hear him regurgitate textbook problems taken from an exam book. You want to hear about his vision of where he sees the field in 15 years. But this is not what companies want.
- brandall10 2y agoA real life example of this is Kyle Simpson, the You Don't Know JS author. He's recently been public with his issues finding employment.
- tomrod 2y agoDo you have any sources you recommend?
- Aurornis 2y agoI’ve hired a book author, worked side by side with internet-famous lead devs of two different popular open source projects, and followed the lead dev of another semi-popular open source project that shows up on the HN front page frequently. The key thing I learned is that they were all very talented at what brought them success in their endeavors, but none of them actually made great developers within a company. In two cases, it became immediately obvious that they wanted to treat their job as a side project (that pays the bills) while they further expanded their book/course/open-source empire. Being the author of popular educational material doesn’t necessarily make someone a great employee. It can actually present a significant distraction, which unfortunately can make it difficult for them to get jobs.
- DanAtC 2y ago> a side project (that pays the bills) as it should be
- Aurornis 2y agoThis is exactly what Staff Engineer roles are supposed to be, and they exist all over the place. > Imagine you are interviewing senior levels of engineer, like Guido van Rossum: The average engineer applicant is not Guido van Rossum. The 99.8% percentile engineer is not Guido van Rossum. Using such a publicly accomplished and prolific person as your example isn’t doing the conversation any justice because it’s not relevant in any way to how actually hiring works.
- jasonpeacock 2y agoThe author falls into the trap of every "technical interviews such, just talk to them about their experience!" argument - it's easy to sound like you know what you're talking about but not be able to actually write code. I've had so many interviews that started strong, great conversation, amazing resume, and then they couldn't write a basic function to implement a straightforward algorithm. Like, they literally could not write a nested for-loop that worked (in a language of their choice!). IMO, the solution is apprenticeships/probationary offers. "Try before you buy" goes both ways - it gives the candidate and opportunity to try out the company (how many companies like about their culture, tools, quality, and work/life balance?!). Alas, it requires the industry to shift to support that model, it's very difficult for companies and candidates to support that model on their own without most other companies doing the same.
- robertjpayne 2y agoI absolutely love the idea of both sides being able to "try before you buy". Some jobs just suck for the employee and they wont know until they're a month or so in and it's a waste of effort for both parties to continue cordially expecting it to magically get better.
- JohnFen 2y agoI think about half of the dev jobs I've had started with a 3 month probationary period, during which either myself or the employer can decide "never mind" without serious consequences. As the new hire, I strongly prefer it for the exact reason you state: it's pretty hard to know if I'm a good fit in a company prior to actually working there. I've used the probationary period twice to get out of such mistakes. As the hiring company, it's also a great thing for exactly the same reason but from the other side of the equation. Lots of companies do this. I think more companies should join the bandwagon.
- parpfish 2y agoWhat kind of consequences would a dev have for quitting early? I think you can do that at any job. The consequences are always about your next job and whether you can explain leaving a position quickly
- tedunangst 2y agoThis will be shocking, but honestly, the point of asking someone to code up fizzbuzz on the whiteboard is not sifting for obedient slaves. Hand to god, chop down the cherry tree, no lie.
- eindiran 2y agoAt some point the test stopped being fizz buzz and started being "reproduce Brent's cycle detection algorithm from memory or from first principles if you have forgotten what it is", which isn't testing your ability to program in any meaningful way.
- convolvatron 2y agoi used to ask cycles in a graph. we were building a database, used graphs alot. if we cant talk about the problem together from first principles and make some progress, and you cant demonstrate that you're tracking the discussion at all then we cant work together on that database. sure, for devops, who cares.
- zaptheimpaler 2y agoIt isn't if the problem is FizzBuzz or a slightly more challenging and realistic problem. When its 1-2 leetcode hards in 45 minutes that can only be solved by having done hundreds of those problems, it does seem the purpose is more to just gauge how many such problems you've spent time grinding on before even though they have very little relevance to programming.
- titanomachy 2y agoI've interviewed at various "prestigious" companies widely considered to be rigorous in their interviewing, and no one has ever asked me to solve 2 leetcode hards in 45 minutes. I think I might have gotten one leetcode hard question ever. Most companies seem to ask relatively straightforward questions, although they do sometimes expect you to solve them quite quickly. Doing a bunch of leetcode problems (something like 20-30 hours over a few weeks) certainly made it easier to answer questions quickly, largely by becoming more fluent in the language and libraries.
- micromacrofoot 2y ago> We don't need free thinkers or leaders, we need obedient slaves, individuals who'll unquestioningly follow orders and work overtime. Their expertise? Irrelevant. We'll train them, we can afford it, our customers will pay for that. I mean, yes that's actually what most large companies want. "Free thinkers" can often be outright terrible employees because they're just not interested in building whatever boring thing a company needs. They put a small number of these people in a box and make the majority of the company build what seem like the most profitable ideas to come out of the box.
- the_real_cher 2y agoActual coding has always been like 20% of my job. The rest is spent co-ordinating, planning, troubleshooting, etc. If youre going to test me on coding then actually let me code. lol
- schneems 2y agoA whiteboard test asks the question: do I have anxiety about whiteboard tests. The answer is “yes”.
- tennisflyi 2y agoYes and interviews are about who interviews the best. Not the best fit or smartest
- zerr 2y agoSame goes for [unpaid] take-homes and leetcode grind.
- jahewson 2y agoI don’t get the hate for unpaid take-homes. It’s not like you are getting paid for multiple hours of interviews.
- theideaofcoffee 2y agoIt's the asymmetry of time invested that gets me. You (the interviewee) are expected to put in your personal time preparing a hastily thought out and assigned example problem that usually has, in my experience, nothing to do with the position, on top of investing even more time talking to interviewers beyond that. The interviewers are already getting paid to do that on their side so you're suffering opportunity cost not being able to take other interviews that may be more relevant. It's just a completely whack system and all about the power imbalance. But then again, whack is describing this stupid industry more and more these days so I guess it fits. Personally, I think the main post hits it right on.
- jahewson 2y agoOk the asymmetry complaint makes sense. I’m confused that you’d cite the opportunity cost of interviews as an issue - the cost to the employer is substantial. It costs thousands of dollars in engineering time to put a candidate through a full round of interviews and pulls employees away from their “real work” that has deadlines.
- michaelt 2y agoWhen I spend an hour at an interview, someone at the company spends an hour at an interview. So they've got every reason to read my damn resume first and not waste both of our time. A take-home test, though? They can waste 3 hours of my time to save 5 minutes of their time. Send me a take-home test, I spend a few hours and pass it with flying colours, then they reject me for being "too expensive". No thanks.
- TN1ck 2y agoWhile (live) code challenges have a lot of problems, I don't see it as a possibility to get entirely rid of them. As someone who hires engineers, I do want to verify that people can actually code. While most people who are "merely talk" can be already filtered without a code challenge, there are plenty who make a good impression, but lack fundamentals in coding or do not have the skill level I'm hiring for. Live codings especially are a very good insight in how someone thinks and approaches a problem, never thought about obedience in any aspect. If someone has contributed to an open source project or has some themselves, talking about those instead is enough for me as well, but that's even more to ask for imo, as not everyone has the time to create a project that is worth talking about and demonstrates their skill.
- rkagerer 2y agoWhen I went to my first job interview after years building my own software product, I brought all kinds of examples of code I wrote which I felt showcased my talent (including an effective API I created for one of their services that lacked one, and code examples of mine that had been published in a textbook). The interviewers had zero interest, and just wanted to discuss superficial / artificial whiteboard-type problems and (in retrospect) how to hose more ad revenue out of users by upending expected browser behavior. I can appreciate how some of it offered a glimpse into how I approach problem solving, but the process (not just that aspect) left a sour taste, and over a decade later I'm so glad I didn't wind up in a career position there. If you want to attract top tier talent, as an employer you should also work to make your interview process fun and challenging, and showcase what sets you apart from you competitors. Too often firms loose sight of the fact that in the interview, they are being evaluated too.
- theogravity 2y agoI'm absolutely terrible at interviews, especially whiteboarding, and the best ones either involve taking a tour of my own code, or them showing parts of their codebase and me asking questions around it; or, take homes and I have a chance to explain what I built. I don't have the memory capacity that others do to just stuff leetcode challenge algorithms that I'll never use in my head.
- fivereason 2y agoone advantage to the whiteboard interview is that it allows a person to get the job regardless of their past experience, which can be determined by what they were "allowed" to do at previous companies. in some cases, people are pigeonholed into various genre of engineering based on assumptions about them (e.g., assign african americans or women certain types of work even though that isn't what they prefer). if you can only speak to what you've been allowed to do compared with what you can prove you've learned to do (via the interview), you could be at a disadvantage. what if we could pick the type of interview we wanted? whiteboard coding challenge or work experience based?
- roncesvalles 2y agoAgree wholly. Especially for early career people, going by past experience is just a test of luck more than anything else. I've meet truly world-class people who've worked on "nothing more" than maintaining some old single-VM C# monolith or some university's LMS system, and a lot of idiots who have impressive resumes with a lot of fancy numbers to show impact.
- throwawa14223 2y agoI've worked at companies that required very heavy whiteboard interviews and companies that banned them. The caliber of engineers at the whiteboard heavy companies was higher at each. At this point I see them as a needed filter.
- olliecornelia 2y ago[dead]
- DFHippie 2y agoOne thing a whiteboard interview does is confirm that you resemble the person described in your application. This is ever more important as many people have an LLM write their application for them. Here's a prediction: as it becomes ever easier to fake details remotely, there will be an ever greater emphasis placed on in-person interviews in the hiring process, with the result being that even remote work is less remote: you have to being the physical presence of an interviewer at some point. If the job is in Kalamazoo, most of the people making the final cut will be near Kalamazoo.
- thedynamicduo 2y agoIt's hard to read this as anything other than a bitter candidate who got rejected after a series of FAANG interviews. There are some legitimate criticisms sprinkled in, but to characterize everyone who made it through as slaves who are more obedient than you seems like a coping mechanism.
- whimsicalism 2y agoit's a common one :)
- makeitdouble 2y agoThe very notion of obediency being a negative trait is flawed IMHO. People working at humanly unfathomable size organizations being more obedient doesn't sound like an issue to me, nor would it correlate with other qualities, including intelligence or critical thinking.
- thedynamicduo 2y agoSo if someone told you they admired how obedient you are, you would take that as a compliment?
- makeitdouble 2y agoJust call me "conciliant" or "cooperative" if you want to make it sound more like a compliment. "Obedient" is just putting connotations on an otherwise neutral trait.
- devit 2y agoThey are a test for people who are very strongly identified with being highly intelligent/skilled where their definition of "intelligence/skill" includes solving programming and computer science problems (and have the capability to achieve a good level). If that's your identity, then not being able to solve hard Leetcode problems (which, to my knowledge, are not even actually hard, since they seem to be easier than the problems in actual top competitions like the IOI, ICPC, etc.) is completely unacceptable and thus you will study and practice relentlessly until you manage (if you can); conversely, if that's not your identity, it's probably going to be hard to find the motivation to do so.
- janalsncm 2y agoA while ago I interviewed at Scale AI. After reading about them online I was fairly certain I didn’t want to work there, but I decided to do the interview as practice anyways. The interview had nothing to do with the role I would be doing, and worse yet, the interviewer seemed pretty tired and uninterested. So when I was rejected I wasn’t too upset.
- newprint 2y agohere we go, we came full circle. now the code tests are oppression tool.
- deleted 2y ago[deleted]
- deathanatos 2y agoMotte and bailey, and the comments here show it. Half of people arguing "reasonable whiteboard tests rule out candidates who cannot code" and the other half arguing "but leet code!" which is a different goal-post. But this stems from the article's thesis itself being unclear: both positions are superimposed in TFA, so it's no wonder half the readers came away with one goal post, and half the other. Motte: Leet-code interviews requiring memorization of problems unlikely to ever be actually encountered during one's career are bad. Bailey: "[All] Whiteboard interviews are a test of obedience, not intelligence" and the entire "How (Most) Interviews Should Be Conducted" which implicitly rules out any whiteboard/coding questions by not including it. To the author, if they're here: which position are you actually arguing? I agree with the motte, as one might guess. If it's truly is the bailey, why should a Senior SWE not be able to implement min()? (… like, realistically, in their sleep?) Perhaps I'm returning false negative in 1/10,000 people, but I'll take that for the true negatives of "cannot, apparently, implement min()". "min()" has pass rates of like 50% in my interviews. The problem with the suggested interview style is that it does not yield reliable information. People bullshit, people lie. People exaggerate their contributions to something. Worse, the people who you probably do want to hire are going to be modest and honest as to their role. I'll also add that "whiteboard coding" should ideally not be literal. I really want the candidate to have a good IDE / dev env to work in. I am often hamstrung by what HR/the corp. is willing to provide; if all I've got is a whiteboard, I'm sorry. Everyone being remote should have made this easier, but I still encounter many candidates who struggle to bring an IDE of their choosing in a language they're most comfortable with, to the VC, with advanced notice. (And this is generally a nudge towards "no hire"…)
- janalsncm 2y agoI like this comment a lot because it identifies an extremely common pattern in online discourse. Write an article describing the motte, and give it a title that is an inflammatory bailey.
- cjoelbrowning 2y agoI think coding tests can be done in a way that’s useful, but on the other hand I’ve never been fooled by a candidate who was an “impostor” during a non-technical screening. Everyone I’ve judged to be a competent engineer after 30 min of semi-structured technical discussion has indeed been a competent engineer.
- insaneisnotfree 2y agoAll good until the part of you need them working, not interviewing. That’s not true at all. If someone has to enter a team, should be screened by the team lead
- ashgw 2y agoHi, I wrote the article. I see a lot of opinions here and I want to thank everyone for taking time out of their day to read it. I'm not the OP though; I was informed that the article was shared here, so let me explain some things that I think weren't clear. Nope. I've never applied to FAANG and never will. And yes, I do know how to revert a binary tree and run zigzag level order traversal from memory using bare C without seg faults, not using JS/Python. But I don't remember other things, and if I have to invest time to train my brain, I better get a good ROI. I did not call everyone slaves, and I'm not calling anyone a slave, including people working at FAANG. I'm just saying that from the perspective of big corporations, that's how they see us—not just tech corporations, but all corporations. FAANG companies need to conduct whiteboard interviews because, as I mentioned in the Google section, they have no choice. You're mostly going to be using some tech you've never used before, so they just want to see how you solve problems. I still don't approve of this as it's lacking; it's still a pattern recognition game. I can solve the hardest questions without training, but it would take me time. Expecting me to solve a new riddle my brain hasn't seen before in 45 minutes is just a numbers game. It's pattern recognition, not problem-solving, which needs a more creative aspect. It's like knowing how to play a song on a piano by memorizing the keys versus composing your own music. Memorizing a song is one thing, but creating your own requires deeper understanding and creativity. Companies need both types of skills, but relying too heavily on memorization leads to a lack of true innovation. Also, asking veterans how to use a specific function/class/method in library X or framework Y is not it, chief. I often forget most of my own libraries' APIs, let alone other people's. You think I really remember what that method was called? Unless I worked with it recently (within ~6 months), I need a refresher. However, my problem is with cheap startups and "enterprises" that still use jQuery and Java -1, acting as if they're Google. You're not. You don't make the software they do, you don't pay as much, and working with you sucks. If you're running a startup and you ask me for take-home assignments and expect me to spend two months relearning patterns I’ve forgotten, you need to pay me as much as FAANG does, or you need to humble yourself and see reality for what it is. Your software sucks, your management sucks, y'all suck. You're not that guy, pal. You're not that guy. If I'm getting a good ROI, why wouldn't I brush up on basic algo manipulation techniques? I'll gladly do it—I'll consider it an investment. If I'm going to be a good slave from your point of view can I at least make good money off it?
- RecycledEle 2y agoI just assumed the interviewers were incompetent. Here is a list if things to NOT say when interviewing for a job: * I can not talk to you anymore. I need to talk to someone who is competent. * Are you in drugs? * Is there a technical person here that I can speak with? * I need a list of the drugs you have taken in the last 48 hours. * Are you serious? * Are you hallucinating? Nobody said that. I think you need help. * No. This job is not worth being humiliated by someone who is so innumerate that they have to put things back at the grocery store checkout.