Technical Interview Problem Clarification
During a technical interview, an interviewee will be presented with a problem to solve. The interviewee should clarify the problem with the interviewer so both parties understand the problem definition and its scope. The interviewee should be able to restate the problem in their own words and ask questions to clarify every unknown that comes to mind.
Technical Interview Solution Outline
The third step in the technical interview process following problem clarification and solution input-output and edge cases identification is developing a solution outline. Communicate effectively and cordially with the interviewer using a step-by-step approach to solving the problem. This will demonstrate your thought process and ability to receive and incorporate feedback from your interviewer to produce an acceptable workable solution.
Technical Interview Solution Whiteboarding
The fourth step in the technical interview process is to whiteboard your solution after you have previously outlined it. Make this step as collaborative as possible by explaining to the interviewer the code you are about to write before writing it on the board. Repeat this process for each outlined step in your solution. Face your interviewer when speaking and face the board when coding.
Technical Interview Solution Testing
In step five of the technical interview process, after the solution has been coded on the whiteboard, it’s time to test the solution with the clearly defined inputs from step two and verify the expected outputs. Walk through each line of code with your interviewer, identify and correct any logical error found, if possible.
Technical Interview Solution Efficiency
In the last step of the technical interview process, we discuss the efficiency of our coded solution in terms of time and space complexity. If improvements can be made, we do it. Otherwise, we can explain and justify our implementation.
Technical Interview Input-Output Edge Cases
The second step after problem clarification in a technical interview is to define acceptable inputs and expected outputs to the solution as well as identify edge cases that will stretch the solution to its limits. The ability to foresee potential setbacks and bound the problem adds merit to the interviewee’s credit.