Yes, this is bias. Most candidates aren't being hunted by employers. It's the other way around.
It's quite the opposite of "simple." It's a soul-crushing experience of being denied at every interview because you can't think out loud or do whiteboard coding and don't have a social media portfolio presence to fall back on. The only simple part is how simple it is to reject a candidate based on the personal prejudices of just one of the five different interviewers you have to meet with.
I call this the talent gap. When you are a newb or completely lack either experience or confidence in your skills life is harder. You have massively increased competition for lower paying jobs filled with more menial tasks. I have been there too. If a candidate doesn't want to be there they will invest in themselves outside the office. I spent as much time as I could writing open source software and language parsers while on military deployments.
Most developers I know are frequently hounded by recruiters because the demand for senior developers is stupid ridiculous.
Maybe in your bubble. My experience is that very few recruiters are hounding me, because most of them don't know I exist. I don't live or work in a tech hub, I don't work for a famous company, and I haven't published anything. I don't think that's a particularly unusual position to be in.
It's absolutely nothing to do with talent or experience, though.
Yes, but the next step is actually interviewing at companies. It's obviously the best strategy to coax an employer into being interested in you, rather than the other way around. But most employers typically have an interview funnel, which I think is what people are talking about here. It sounds like you're referring to an employer actively seeking out a specific candidate that they're interested in. While that does happen, it's probably not the typical interview experience.
Just be honest (immediately so), be humble, and have confidence that you will do your very best. What ever happens after that you don't really control. It is okay to be nervous, but keep it in context. Nobody is shooting at you. You aren't drowning. Your housing isn't burning down. It is just a conversation.
That might be an unfair characterization. But only just.
But really, if someone can describe the detailed psuedocode for an algorithm and explain its runtime characteristics, are you going to make them write out what they have just said?
Personally, I think the talking is a lot more valuable than the whiteboard. I rarely have to hand-write complete algorithm on a whiteboard, but I regularly need to communicate technical ideas accurately and succinctly. That's what I'm really trying to demonstrate anyways: of course I can code, but I can also organize my thoughts well and communicate them clearly to others.
Honestly, in my experience, most application problems can be reasonably talked through without writing any code.
I share your experience that most problems can be reasonably talked through without writing code, but most people here are talking about a specific kind of interview that does not work that way.
That would be a nice improvement as a first filter, IMO, but this isn't always the case. For Google, for instance, the very first step might be a 45-minute phone conversation with a bored engineer who just wants you to code up whatever tree-based structure and methods tickle their fancy. They might not even tell you what team they work on, or what they do. They have a script, and they run it from memory, and your experience and past accomplishments are out the window.
Now I know there are a lot of weak and timid personalities in the world of development, but once you put that blood into the water usually it doesn't take the sharks long to swarm on it. I have never walked away from an interview feeling dejected for asking the interviewer reasonable questions or attempting to qualify their assertions.
Maybe if you are a college grad with 0 real life experience then maybe interview prep is necessary... don't know. I could be biased though. The last place I interviewed at they knew who I was, something about my software, and some of my online controversies before I even walked in the door.
The best preparation for interviewing at large companies is having a second part-time job somewhere in management. I held my first management position in a part-time job at age 24 and was once a director. I have never held a management position in the primary full-time career, which is a weird inverse of power-distance in some work meetings. Being a parent is also good experience for dealing with people.
What they need to provide education on isn't dominating the interview process... but drilling down on the proper information necessary for new candidate retention.
I have worked at places that are awesome and really work hard to ensure you are happy and constantly engaged in the work. I have also worked at places that completely suck full of benchwarmers with a million layers of abstractions so that code monkeys can feel a bit more confident. It is helpful to know if you are going to be miserable in the organization.
The candidate really does share some of the burden of figuring out if they will be a good fit for the organization, but this is often really hard to interrogate out of the interviewers even for experienced people.