Whenever a topic like this comes up, people inevitably talk about broken FAANG hiring and the stupidity of whiteboard programing (aka Leetcode.)
I often worry that people who say this are somewhat missing the point of what interviewing is about, and thus lower both their own chances of getting more & better offers, and worse, if someone else is influenced by their writing, their odds go down too.
I say this as a hiring manager and someone responsible for company-wide engineering recruitment for a long time, not at a FAANG but a company of that caliber who competed w. FAANGs for talent. From that perspective, whiteboard programing provide a meaningful signal (though not the only signal) towards a hiring decision.
When I am hiring someone, I care about many things: how do they understand and solve problems, how do they prioritize and trade-off solutions, how do they collaborate and communicate, how they react when they are "stumped", how they react to coaching/hints/feedback/etc. And yes, whether they can code well, and how they deal with pressure.
So when I used to go through one of these problems with a candidate, I would form a picture of how they'd interact with their product manager (from the way they asked questions and clarified their understanding of their problem), how they'd interact with their technical team (in the way they explain their thinking and evolve their solution in response to feedback) to how they'd be with me/their manager (from the way they took feedback and reacted to being coached/helped) to how they would be in an incident/outage (based on whether they were able to make progress despite the time pressure of the interview) and ultimately what their code looked like in my repo (from... the way their code looked like.)
Yes obviously there are factors that make people perform differently in an interview than at the job and as an experienced interviewer you try to discern that, but the bigger point is if you are ranting against whiteboard coding interviews, but you don't understand what I just wrote, then you are basically arguing from a point of view of ignorance. If you don't understand what the process is meant to do, then of course it seems stupid to you but that's not a problem with the process...
I can also look at it from an ever more "real" perspective. Companies hire you to solve problems. To do that, you need the smarts to understand what it takes to solve the problem and the drive and persistence to actually solve it. So if the problem in front of you is "I want to be hired by Google", are you able to recognize that part of the solution is "I need to get good at whiteboard programming" and that a part of that is research and disciplined practice? If not, then you're sort of failing at the meta-interview, because your very approach to problem solving falls short of the level required to get these jobs.
By the way, there are plenty of great places to work that hire on other criteria, and what those places expect from programmers day to day is different to some extent than FAANG-caliber. That's totally fine to be working there, I just wish people had the self-awareness to know what FAANGS want and how they screen for it, vs just saying "oh I am not good at that but it's OK cuz it's stupid to begin with."
I often worry that people who say this are somewhat missing the point of what interviewing is about, and thus lower both their own chances of getting more & better offers, and worse, if someone else is influenced by their writing, their odds go down too.
I say this as a hiring manager and someone responsible for company-wide engineering recruitment for a long time, not at a FAANG but a company of that caliber who competed w. FAANGs for talent. From that perspective, whiteboard programing provide a meaningful signal (though not the only signal) towards a hiring decision.
When I am hiring someone, I care about many things: how do they understand and solve problems, how do they prioritize and trade-off solutions, how do they collaborate and communicate, how they react when they are "stumped", how they react to coaching/hints/feedback/etc. And yes, whether they can code well, and how they deal with pressure.
So when I used to go through one of these problems with a candidate, I would form a picture of how they'd interact with their product manager (from the way they asked questions and clarified their understanding of their problem), how they'd interact with their technical team (in the way they explain their thinking and evolve their solution in response to feedback) to how they'd be with me/their manager (from the way they took feedback and reacted to being coached/helped) to how they would be in an incident/outage (based on whether they were able to make progress despite the time pressure of the interview) and ultimately what their code looked like in my repo (from... the way their code looked like.)
Yes obviously there are factors that make people perform differently in an interview than at the job and as an experienced interviewer you try to discern that, but the bigger point is if you are ranting against whiteboard coding interviews, but you don't understand what I just wrote, then you are basically arguing from a point of view of ignorance. If you don't understand what the process is meant to do, then of course it seems stupid to you but that's not a problem with the process...
I can also look at it from an ever more "real" perspective. Companies hire you to solve problems. To do that, you need the smarts to understand what it takes to solve the problem and the drive and persistence to actually solve it. So if the problem in front of you is "I want to be hired by Google", are you able to recognize that part of the solution is "I need to get good at whiteboard programming" and that a part of that is research and disciplined practice? If not, then you're sort of failing at the meta-interview, because your very approach to problem solving falls short of the level required to get these jobs.
By the way, there are plenty of great places to work that hire on other criteria, and what those places expect from programmers day to day is different to some extent than FAANG-caliber. That's totally fine to be working there, I just wish people had the self-awareness to know what FAANGS want and how they screen for it, vs just saying "oh I am not good at that but it's OK cuz it's stupid to begin with."