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