I completely agree with your gripe on feedback. I have been responsible for the technical interview part (which involves pair programming on some code) and having been on the receiving end of the interview process I make it a point to:
- State exactly what kind of things I’m looking for and reinforce it during the interview if the person goes off track
- If they are rejected based on their performance will list why they are not going forward (and which things were good) and how to improve
The last bit causes a huge range of reactions. Some have no previous interview experience and are either devastated (they are learning about rejection by a professional) or delighted (eager to absorb advice). So I’m not sure this is universally appreciated.