Like every one else, I don’t enjoy the technical interview process but totally understand why it is important to evaluate and find good engineers. Here’re my tips to make the process less painful. I also write for Uniqtech , check out Uniqtech’s article on machine learning resumes. The article explains which projects, skills, educations to include. Y Sun plans to publish with Uniqtech a series of technical interview problems and solutions, pseudo codes very soon. This article focuses on intro level general tips. Also check out the 5 step interview framework.
Technical Interview Strategies and Tips for Developers
- Most important tip ever : think first, write pseudo code second, avoid writing codes right away. This way your interviewer has an opportunity to give you hints and correct you if you are going at the wrong direction.
- Take the time to understand the constraints, limitations and requirements. Is this for a production system? Is there space constraint? Speed constraint?
- Read Cracking the Coding Interview, even if you are not interviewing in JAVA (the code is written in JAVA). The author is very legit, and has extensive experience with technical interviews and decision making at Google and comes highly recommended by Google and all big techs.
- Build test cases, edge cases, early on by thinking through testing and edge case scenarios.
- Do not memorize the actual interview case, but memorize common patterns and computer science problems. It is okay to say “this reminds me of the xyz problem”. Your interviewer may agree with you or correct you.
- Pointers. Often we will need to iterate through data collections. So often I think, can I use left or right pointers iterate through a collection from both ends, or while low high pointers (
while lo < hi:) till they meet in the middle, or start with a min = inf or max = -inf placeholder.
- Write meaningful variable and function names. Instead of using i and j as indices, use left and right, low and high for example.
- Trees are graphs Breadth First Search (BFS) and Depth First Search (DFS) are useful concepts to know.
- Every data structure and algorithm have PROs and CONs. It’s good to note them down when studying each scenario.
- Optimization is a must for top tech companies like FANGs (Facebook, Apple, Netflix and Google). Big O of
lg(n)log base 2 of n is…