When I was in the fourth year of my college, I was perplexed and anxious about how to prepare for the tech interviews. Somehow I was able to land a job, and I consider myself lucky to find a job in cut-throat competitive job market. For the next three years, I continually tried to get interviews at bigger companies with better salaries. I received a few calls from the recruiters and even fewer interviews but failed to convert the opportunities. I lacked skills to pass the interviews to get into the Big 4: Google, Facebook, Amazon, and Apple, so I decided to pursue Master’s degree and get more trained. Two years later I found myself in the same position but now I have a Master’s degree, and I am $30,000 in debt. The CS academics doesn’t prepare a student for the job interviews and my decision to do Master’s backfired.
I didn’t give you the reason why tech interviews are so difficult and different from the academics. There are lots of sites to prepare for these interviews and every tech company has its style of interviewing; some ask difficult algorithm questions, some ask simpler questions but more difficult design questions. Besides, I was getting interviews in waves. A bunch of interviews next week then another bunch of interviews the week after next. So I never get to switch from preparing for algorithm-centric interviews to design-centric interviews to more soft skills based interviews. I always concentrated on algorithm based interviews because the majority of interviews for entry level engineers are basic coding questions.
Due to years of rejections, I completely freaked out when I realized that I have to go through the same painful experience again. But this time it was different, I was older and more experienced in getting rejected. I decided to pace out my interviews into comfortable intervals and group the similar kinds of interviews. I chose not to go for specific jobs but specific companies. Based on the interview questions and my anticipated level of preparation I grouped the companies into safe, maybe, difficult and dream.
Safe had all the companies with easiest interviews for entry-level engineers. By easiest, I mean only basic array and linked list questions and maybe a tree question. I had almost 3-5 companies in the list, only two selected my resume for the telephone screening.
Maybe companies asked some tree questions and if unlucky one or two questions on dynamic programming or languages like C++ or Java. They pay well but not as well as difficult or dream but enough to pay the student loan and live comfortably. This group had 20 companies, only four selected my resume for the telephone screening.
Difficult companies are the one which has more rigorous interviews. They ask all sort of questions from a wide range of topics. They pay in cash as well as in equity. The companies in this group would be ideal but a long shot given my level of preparation at that time. This group had almost 10 companies only two selected my resume.
Dream had companies that are unicorn startups which are sure to make tons of money and when they go for IPO will make everybody rich even the engineers.
I had send resume to almost 5 dream companies, none of them selected my resume 😢
After submitting applications, I had to wait almost for a month to get to telephonic interviews. I scheduled these interviews in the order safe -> maybe -> difficult. I submitted the applications in this order too. This strategy helped me prepare for the interviews for the difficult companies in an incremental manner. I studied for a month before the safe interviews which helped me asses my basic preparation level. Then maybe interviews in next two weeks which helped me assess my preparation for the more difficult difficult interviews which I scheduled last, one month after my first safe interview.
It turned out to be a good strategy, and within 3 months of starting the application process, I had job offers from one out of two safes, one out of four maybes and one difficult. None from the dream. Oh well!
I would highly recommend this strategy if you are in college and aiming for that job or internship. The strategy is agile, and you test and improve your preparation as you go, reduces your anxiety and makes you feel confident when you have that interview for the job which you always wanted. Since you have more than one job offers you get leverage to negotiate for a better salary or equity. You will be surprised by how effective this strategy is.
Stay tuned for more on this strategy and how to group the companies and begin the preparation targeting safe, maybe, difficult and dream companies.