Building on that: There's a few reasons why a company won't explain why they reject a candidate.
One of the reasons is that they don't want candidates to "game" the system, because it makes it hard to screen for the people they want to hire.
Another reason is that often rejections are highly subjective, and telling a candidate that "we didn't hire you because of X" could be highly insulting.
Finally, quite often candidates are rejected because the people hiring ultimately are looking for people they will get along with. It doesn't matter how smart someone is, if something about the working relationship causes friction, the team dynamic can quickly devolve. (And to be quite frank, in these situations the candidate will probably have a better job working elsewhere.) These kinds of rejections are highly subjective, so no one really wants to give a candidate feedback.
Building on that: There's a few reasons why a company won't explain why they reject a candidate.
One of the reasons is that they don't want candidates to "game" the system, because it makes it hard to screen for the people they want to hire.
Another reason is that often rejections are highly subjective, and telling a candidate that "we didn't hire you because of X" could be highly insulting.
Finally, quite often candidates are rejected because the people hiring ultimately are looking for people they will get along with. It doesn't matter how smart someone is, if something about the working relationship causes friction, the team dynamic can quickly devolve. (And to be quite frank, in these situations the candidate will probably have a better job working elsewhere.) These kinds of rejections are highly subjective, so no one really wants to give a candidate feedback.