- Don’t rush to write code. Think about the problem first and think out loud.
- Ask as many questions as you have about the problem before starting to solve it.
- Don’t strive to impress with the right answer, talk about all approaches you can take and talk about the tradeoffs with each.
- Plan your solution with a pseudocode.
- Talk out loud about what you are doing while implementing the solution.
- Write comprehensive test cases.
Pro-tip by the author in case you are stuck: Some of the best problem solving happens when you can align the strength of a specific data structure to a problem’s bottleneck.
Full post here, 8 mins read