If I had a good heuristic for this I think I could pass almost any interview :).
Sadly, a lot of interviews are more about "likeability" and people skills than pure critical thinking skills. (I wish it were that easy...)
At top software companies they seem to weigh the technical aspects more, though (somewhat understandably) the interviewers want to imagine working with the candidate as a future positive interaction.
Personally I think I pass the personality test, but recently blown an interview due to being stale in some areas and insufficient mental flexibility ("going meta") on a couple of questions.
When do you go meta? When do you stop going meta?
In the video Q and A Eliezer offered some advice about this (the emphasis is mine):
In his discussion post "Are you doing what you should be doing?", Will_Newsome identified what seems to be an important guiding principle of meta-thinking:
(where "time-saving results" can be replaced with "greater marginal utility" to obtain a form that is more generally applicable)
Some questions we could explore:
(I plan to try to compile the insights and advice here into a top-level post discussing the principles of, and heuristics for, effective meta-level thinking)
Edit: Changed minor wording and altered the third question posed.