Reflection & Learning from Interviews (Mock ones included)
Don't jump into the solution, think about it from a wider and higher level perspective
I know that doing x solves the problem, but can I simplify/generalize/abstract it?
e.g. Soduoku cell placement validation: do I need to check it cell by cell, or is it enough to just check it row by row? The difference here might mean less code to write and hence less things to worry about
When in doubt, go back to the basics
If I know a brute force slow solution, how do I optimize it?
Think about trading space for time, or vice versa
Think about data structures that might be more suitable for the problem
One common example is the use of hash tables and sets to reduce the time complexity of lookups
Proactive communication is good, but don't try to fill all the silence
Trying to vocalize every thought might narrow my thinking and be less able to come up with an alternative