Yes, this and reference checks. Plus, if a guy isn't working out, fire him. Not a huge deal. The current tech hiring process, at least what I read on here, is absurd.
Depends on what "isn't working out" means. If the employee is just bad at their job in mundane ways like low performance, poor quality, etc. then that's probably not too harmful (or it shouldn't be, if your company is more than a dozen people or so).
However, if "isn't working out" means that the employee has behavioral issues that harm colleagues, is inappropriate with clients, steals intellectual property, or something like that, the damage could be much worse—even catastrophic. Of course, companies should be built to be resilient to these situations, but it's rarely "not a huge deal".
All that being said, I agree with your premise that much of tech hiring is "absurd". Too many companies (especially consultancies) are built with a very low tolerance for underperformance, to the point that they don't contribute to the development of the overall workforce.
Sure, deciding why to let someone go is up to the company or manager. Firing someone isn't the huge deal, the reasons for firing them certainly can be. With development, you can actually have negative productivity. An example would be spending money to un-hose what the developer did years after they've left. If enough stuff was built on top of a mistake, it's unfeasible to fix. Bad design decisions tend to lead to other bad design decisions. I'm dealing with a lot of that where I am now.
I think part of the reason these tech interviews are so absurd is people are emotionally terrified of firing people, so they take great pains to ensure they won't have to. I'm just speculating though.