How to Prepare for Coding Challenges & Technical Interviews
(this page may contain amazon affiliate links)
Congratulations! If you're reading this article, you've probably received a coding challenge or technical interview request.
Or maybe you're just super proactive and are already training for when you do get one.
Or perhaps you got rejected after your last technical interview.
Either way I would like to commend you for trying to better yourself, I promise you, these tips made a huge difference for me when I was looking for internships and they will for you too!
Without further ado, here are the top 3 tools and strategies I used to prepare myself for Coding Challenges and Technical Interviews.
1. Do MORE Practice Coding Challenges!
(If you weren't using Leetcode before you got this coding challenge, I highly suggest going on to Leetcode and trying some easy problems to see where you stand. If you can’t figure them out you can also look at the solutions that other people have come up with under the discussion tab of the problem. Hopefully you have at least two weeks before the challenge is due but sometimes they give you two days. If you're in the boat where you just bombed a coding challenge or you are trying to prepare yourself for future coding challenges this article for you, and you have nowhere to go but up from here :).)
Be Consistent:
Getting really good at Coding Challenges and Technical Interviews takes a lot of practice.
Being consistent and setting goals of how many Leetcode problems you want to do per week or per day is really helpful.
Setting a concrete number will help you track your progress and hold yourself accountable. For example right now my Leetcode goals are 5 problems per week(unless I have a real coding challenge that week, then I’m more flexible)
Push the Difficulty Level:
Also remember to push the difficulty levels of the types of coding challenges you can do, for example if you’ve mastered easy problems, start pushing yourself to do mediums and if you can do mediums start doing hard problems.
A lot of the bigger, coveted companies like Facebook and Amazon require you to be able to do medium problems quickly and accurately, so start pushing yourself to do those more difficult problems ASAP if you want to work at a FANG company.
Optimize the Runtimes/Memory Consumption Solutions:
In addition to consistency and difficulty you should also keep in mind the costs of your solution.
Each of the different levels(easy-hard) will have different runtime requirements and therefore require a different quality of answer.
On Leetcode it compares your solution to others, which is usually a pretty good metric to see how good your solution is.
Unfortunately for us, O(n^2) just won’t cut it in some interviews :(
Push how fast you can solve them:
Leetcode also has the option to do a mock interview that is timed.
I highly recommend this for those of you whose heart starts pounding at the sight of a timer.
Doing practice timed interviews can be a game changer for the real thing and helps to relieve the stress on challenge day.
Try different sites:
I love Leetcode.
It is the main site I use to prepare for Coding Challenges, but every now and then a company will give you a problem on an outdated or creatively designed site.
So it’s a good idea to expose yourself to other sites if you haven’t ever used anything but your site of choice.
After you’ve experienced the rainbow of different coding challenge sites this tip is less necessary.
2. Do Mock Technical Interviews
The first Technical Interview I did was with Facebook and it left me completely shell shocked.
I totally bombed the interview and felt really unprepared.
One way to avoid the situation I was in is to do mock interviews before your real interview with friends.
Make sure you guys take this seriously and treat it like a real interview.
If you feel super nervous before a mock interview, that’s great! It means this preparation will help you even more, now you can get your practice on when the only thing on the line is a interview review at the end and not a fantastic job.
If you are lacking in the friend department, another way to find a mock interview partner is to ask around in technical clubs at your college to see if anyone is interested in practicing with you.
Some last minute tips to remember before a Technical Interview:
Think out loud! The interviewer can’t read your mind and if you speak out your thought process, then they can help guide you through the problem
They want you to succeed: recruiting is hard and the interviewer wants you to be the right candidate!
Show Up! I’ve felt so anxious before interviews that I have actually considered NOT going. The way I get myself out of that state is to listen to pump up music and think about the worst case scenario. Worst case, I embarrass myself. Best case I could get a fantastic job! For my fellow nervous interviewees, make it your mantra before the interview, “I can do this, I prepared!” I literally repeated this to myself about 10 times before I went to the interview that got me my first internship.
3. "Cracking the Coding Interview"
I want to preface this by saying, YOU DO NOT NEED THIS BOOK TO SMASH A CODING CHALLENGE.
That being said I did buy this book and find it helpful.
This book is controversial because some people don't believe that coding challenges are the best way to assess a coder's skills and dislike the fact that someone is profiting off of teaching people how to “Crack” Coding Challenges.
Nevertheless I found this book helpful because I had about zero confidence after getting rejected from over 200 places before my first internship.
The first couple chapters of the book really validated my feelings and experience with the job search and bolstered me to keep trying.
This book is also more of a teaching tool than Leetcode in that it has different chapters that focus on each data structure.
The biggest difference I found between Leetcode and this book is that the book provides detailed walk throughs of how to solve each of the practice problems.
There are a lot of different versions of this book, I have the 6th Edition.
I can only recommend this particular version because this is the one I got that helped me with my coding challenges.
I repeat you by no means need to go and buy this book to get a tech job, but it can be helpful.
Leetcode is definitely enough to prepare you for coding challenges, even though the well documented solutions are less readily available on Leetcode than in the book, Leetcode is free :D plus there are a ton of coding challenge gurus on Youtube that do a good job of walking through solutions.
If you want to check this book out and *support this website please find the book here: https://www.amazon.com/gp/product/0984782850?ie=UTF8&linkCode=ll1&tag=&linkId=427eb1b4fac0ba560409b32c40318d4b&language=en_US&ref_=as_li_ss_tl
*As an Amazon Associate I earn from qualifying purchases
Last Update: 10/22/2021
Photo Creds:
Photo by Sebastian Herrmann on Unsplash
Photo by KOBU Agency on Unsplash
Photo by Fabiola Peñalba on Unsplash