LeetCode is tough, but applying those skills in a technical interview is even harder.
Here’s my 8-step process:
- Understand the Problem: Paraphrase the question to ensure clarity, and ask for details when you’re unclear
- Ask Clarifying Questions: Gather details about inputs and outputs, and questions about the problem
- Propose Test Cases: Suggest your own test cases to validate your assumptions. Format for text cases should be “given this input, should I expect this output?”
- Cover Various Test Cases: Ensure to address: Simple cases Edge cases (mostly conditionals, and unexpected steps in the code) Medium and long cases for thorough testing.
- Explain Your Algorithm: Outline your approach and thought process without getting too granular, making sure the interviewer understands your logic.
- Write the Code: Translate your thoughts into code while engaging with the interviewer, providing commentary on your choices.
- Walk Through the Code: Explain how your code works, using the test cases to demonstrate functionality.
- Discuss Time and Space Complexity: Clearly explain your reasoning for the complexities of your solution, don’t just say O(n). Tell me what “n” means
[[Watch the full video attached below to get the most detail. I explain how to use each step with an actual example so it's crystal clear for you.
By being part of this community, you get access to tutorials, posts and videos, before the general public, so take advantage of that.]]