Whiteboard Review Questions - 401d29-advanced-javascript/data-structures-and-algorithms GitHub Wiki

  • writes down problem domain immediately
  • confirms specified output and input
  • creates visual of expected output and input
  • walks through thought process using visual input and output arrays
  • begin with big-O complexity
  • then begins algorithm in organized fashion
  • discusses case sensitive inputs like negative, odd, even numbers
  • asks interviewer if they understand them so far and if they can proceed to write pseudo code
  • writes out basic idea of how to get the desired output using pseudo code
  • talks through the entire process
  • takes a minute every now and then to step back and look at the whole board
  • follows the pseudo code written out
  • articulates every step when writing and refers back to pseudo code
  • when asked if there's a better way to write the same code (instead of creating a new array, can possibly keep the same array and just alter that instead)
  • Reviews visual, algorithm, and pseudo code again and makes necessary changes to accommodate the interviewer's suggestion
  • Does not start writing actual code until all pseudo code works in specified test cases
  • Explains WHY they use one method over another (EX: a while loop vs. a for loop)
  • Explains that they understand why the interviewer would make a suggestion to alter code.
  • Must ask CLARIFYING questions at the beginning of the problem domain