Cracking the Coding Interview
Finally, give your code the complexities of time and space and explain why. You can annotate parts of your code with their various time and space complexities to demonstrate your understanding of the code. You can even provide APIs for the programming language of your choice. Explain any trade-offs in your current approach versus alternative cracking the coding interview approaches, perhaps in terms of time and space.
If your interviewer is satisfied with the solution, the interview usually ends here. It is also common for the interviewer to ask you lengthy questions, such as how you would handle the problem if the total input is too large to fit in memory, or if the input becomes a flow. This is a common follow-up question on Google, where many worry about scale. Is the answer usually a segregation and conquest approach? Perform distributed data processing and with only certain parts of the disk input read into memory, write the output to disk and combine them later.
Mock Interview Practice:
The steps mentioned above can be practiced over and over again until you are fully internalized and become unsurpassed. A good way to practice is to partner with a friend and take turns interviewing.
Interviews.io is a great resource to prepare for a coded interview. This platform offers free and anonymous practice interviews with engineers from Google and Facebook, which can lead to real jobs and internships. By virtue of being anonymous during the interview, the comprehensive interview process is unbiased and low-risk. At the end of the interview, the interviewer and the interviewee can give each other feedback to help each other improve.
Getting it right in mock interviews will unlock the job page for candidates and allow them to book interviews (also anonymous) with top companies like Uber, Lyft, Quora, Asana, and many more. For those who are not new to coding interviews, a demo interview can be viewed on this site. Please note that this site requires users to log in.
I used interviews.io, as an interviewer and as an interviewee. The experience was great. Aline Lerner, CEO and co-founder of interviews.io, and her team are passionate about revolutionizing the interview coding process and helping candidates improve their interviewing skills. She has published several interview-related coding articles on the interview.io blog. I recommend that you register as soon as interviews.io, albeit in beta, to increase the likelihood of being invited.
Where Interview.io matches potential job applicants with experienced coding interviewers, Pramp takes a different approach. Prepare to partner with other colleagues who are also looking for work. They both take turns assuming the roles of interviewer and interviewee. Pramp also prepares questions and provides solutions and tips to guide the interviewer.
Personally, I don't have that respect for Pramp's approach. Because when I do interviews, I ask familiar questions. Also, many users do not have the experience of being an interviewer, which can lead to a terrible interview experience. In one case, my matchmaking colleague took on the role of interviewer, but did not understand the problem well and tried to guide me down the wrong path to solve the problem. However, this is more of a candidate issue than the platform.
Go ahead and conquer:
After you've asked your fair share of LeetCode questions and a lot of practice doing mock interviews, get out there and test your newfound interview skills. Apply to your favorite companies or, better yet, get referrals from your friends who work for those companies. Referrals are generally noticed earlier and have a faster response rate than requesting without a referral. Good luck!
Tips for coding questions:
This section delves into practical advice on specific algorithmic topics and data structures, often seen in coding questions. Many query algorithms involve techniques that can be applied to similar queries.
The more techniques you have in your arsenal, the more likely you are to pass the interview. For each topic, there is also a list of suggested questions, which are valuable in mastering the basics. Some of the ce