The risk of choosing the wrong person is so great, that it's often better to not choose anyone. If there is any doubt what-so-ever, it's better to not make a a hire, it can be too damaging to a team, manager, company.
I've tried so many different "coding interview" scenarios. But I found the best one was a real task that a real staff member would be expected to do, extract it out into its own example, and before I talk to someone, they present their solution to the task, and the only thing we talk about, is their solution. If they can dissect and discuss their solution eloquently, and reason about trade-offs, short-cuts, talk about what they may have done better....
Of course, it can also be a simple case of, "is this person an asshole? are they going to rub my team up the wrong way? yes? fuck them."
That's bullshit. Sorry, but it is.
If it was such a big risk, companies would:
1) Do much better jobs at retaining employees (that are known to be good).
2) Be in a lot of trouble currently, because companies hire all the time and fire all the time.
If you're having this problem you seriously need to reevaluate what you consider damaging. Hiring someone your team thinks is an idiot is not damaging.
Making your current team go home and talk to their roommate/spouse/so each night about how "we really need to fucking hire someone, this is ridiculous" while making your devs set through interviews is damaging :)
This is a great way to hire "People Like You". Look around at your team. How much diversity is there in age, race, gender, hobbies, college education, or even favorite TV shows? How many would be willing to tell you that you're wrong, and stick to it in the face of a (to you) completely logical explanation of why you are right?
What you qualify as a wrong hire is not necessarily the wrong person to hire. If you're so afraid to hire the wrong person that you will never hire someone you don't instantly like, you and your company will suffer for the lack of different views.
Even that "asshole" can make you think about things in a different light.
So the fix is in and the bosses nephew is going to hired or your frat bro you watched south park episodes with. HR makes you interview multiple people to make it look fair. Obviously its going to be a hostile interview experience. Maybe if you're a clone of Knuth and totally wow the interviewer, the bosses nephew will get kicked to the curb, or if you're cooler than the interviewer's frat bro, well, thats a strong maybe. But basically if you walk into an interview and they ask you about algos that a dog whistle you're not getting hired. Either the fix is already in, or you're a minority, either way you're not getting hired once the questions about red-black trees get unleashed. The interview is already over at that point unless its a 1 in 1000 meteorite strike, it does happen, just almost never.
There are way too many skilled programmers for way too few positions or else the system would collapse if just one employer defected. That hasn't happened, therefore there are too many applicants for too few positions.
The reason you hear nonsense about "not enough skilled programmers" is because they didn't mention they have to be white or male or members of the interviewer's fraternity or fans of the same TV show. There's no shortage at all of excellent programmers who happen to be minorities or unrelated to members of management.
I assume you don't live in the US or if you do, please elaborate because in the US there are virtually no such risks with at-will employment. It's so incredibly easy to fire people in the US that such an idea is actually ridiculous, yet people keep bringing it up all the time as if it's real.
Plus, it's sociopathic: If someone has a job already, having them quit that job, start working for you, and then get fired and end up on the street because it didn't work out... man, that's a jerk move. The manager owes it to the new hire to be confident that they'll work out.
Worse, if you have someone who just doesn't play well with others, there are no grounds for dismissal. You end up having to cook up some sort of severance package for genuinely toxic staff, and hope they hate the environment as much as others hate them.
"Please take this package. In the long run it will be better for everyone" and hope they see the light and walk.
1 the people that interviewed / recruited that bad egg will be scorned as the people that brought that idiot in
2 often people think the bad one will get better so they invent a lot of time into making it work. Time that could be better spent elsewhere.
3 typically groups have a very limited headcount. So if you bring in a bad person you've used up that slot and won't have anything available for months (if ever)
4 have you ever worked with a negative person? It really zaps the energy out of going into work.
5 the damage that a bad hire can also be great on the code base, let alone morale. Some junk stays in the code for years
This risk can be great, but the team and company can be organized such that the risk is extremely reduced. A pairing schedule, for example, can be very effective.
1) This person is talking directly to clients day one, solo
2) Their code is pushed without review...
3) They are making high-level (C-level, maybe a bit lower) decisions for your business
Otherwise, yeah... a bad employee can do some harm. But, it's that employee's fault, and the other employees will realize this.
It is the business's fault if they go a year under-staffed because "they are afraid."
The second is MUCH more damaging: shows your leadership is not bold, they are misguided, and they don't know what to do to correct course if something goes unplanned (sub-performing employee).