Well, yeah, those cases suck. Can't argue with that. But have you looked into other professions? IT is, compared to many other jobs, on average very fair and meritocratic.
The line of what is and isn't skill is rather blurred.
Where do soft skills like communicating your ideas, teaching, and working in a team end and forthright bullshit like workplace politics begins?
Those soft skills are ultimately just secondary skills you need to be god at your job, but won't directly help you getting the job itself done. If I had to choose between employing someone who's good at programming and someone who sucks at it but is better at communicating, I'd go with the first one 10 out of 10 times.
It needs a balance.
Obviously you can't hire someone who is a poor programmer for a programming position.
But if they are a 0 on the soft skills, you will end up with a system no one can understand in the future.
Frankly, it will not even suit the business as talking to the domain experts is as big a part of development as writing code.
We’re a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.