My Coding Interview Tarining Schema#
Intro#
- Explain this schema would work for train for most of coding interviews whiteboards hands 1-1 iterviews
- Explain most important is way of communication, thinking process, solving problem skills (from gathering requirements to testing and analysis), over just completing the challenge.
- Im going to give a short preparation process, to train main things to focus, just a couple of problems
Interview schema#
- During preparation, every problem you solve, even if you know the solution, or if you’ve already solved it. Try to speak in a loud voice, or if you can’t, just try to simulate you are talking in your head, and explain everything you have in mind.
- Write in comments every step, as a place holder, to not forget anything. Even in the actual interview you can do so.
- Steps:
/*
# 1. Understand the problem
# 2. Find edge cases
# 3. Propose several solutions
# 4. Implementation
# 5. Testing
# 6. Analysis
*/
1. Understand the problem#
- After finishing this step, you should get a real understanding of the problem
- Ask any clarification questions, even if it seems obvious.
- Happened to me that after Im implementating I realize the implementation is wrong because I didn’t understand the problem
- At the end, write a summary for the interviewer to check if you got it correctly
Find edge cases#
- Try to find any edge case:
- Input numbers: 0, negative, long int
- Arrays: null, empty, fewer items than required
- Strings: null, empty, fewer chars, weird characters
- Matrix: empty, null, fewer rows or cols
- TreeNodes (objects): null, roots, …
- problematic values depending on the problem specification
Propose several solutions#
- Find the brute force, or the first idea come to your mind (try to do it always)
- Then find a better one, or improve brute force
- If nothing comes to your mind, just ask for tips or help
- This is the most critical step