Discover more from Big Tech Interview Prep
How to Make Studying for Programming Interviews Suck Less
Tldr: Stay focused, attack ambiguity, and most importantly be kind to yourself.
Studying for programming interviews is both painful and isolating. When I was going through the process, I found myself questioning what it is that makes me worthy to apply, even as my desire to progress in the industry was taking over every other aspect of life.
I felt as though I was completely alone. I couldn’t talk to my friends about it because they didn’t understand what I was learning and I couldn’t talk to my coworkers because I was trying to leave the company. It was just me, banging my head against the computer trying to solve leetcode problems. To top it all off, there were a thousand different study methods and everyone was trying to tell me to do something different.
All of this led to a feeling of being lost with a lack of confidence in how I was studying. I would then enter periods of burnout, where the thought of giving up was an everyday occurrence. For me, the cycle was 2 months of productivity and then 1 month of being burnt out. It was an incredibly unhealthy way to study. Each time I would feel this burnout I would get back on track a month later feeling like I had lost all of my progress.
The good news is that you don’t have to go through what I went through. You can do it in a way that’s healthier for you. Remembering this advice can feel difficult in the moment, but it will push you through to the finish line.
Join a community of people also studying for programming interviews or find a study buddy. Not 100% confident in what you are studying? Flag it. Talk to someone. Don't let ambiguity creep in. A sign that you are a little lost is if you are constantly bouncing between resources and not finishing any of them. Make a plan and stick to it.
Be kind to yourself
It's easy to start putting yourself down, and thinking you don't have what it takes. Failing a leetcode and asking yourself "How was I supposed to know that trick?!" every day will eventually get you feeling like you just don't belong. You do belong. Be patient and recognize you are a bad ass for showing up every day. This shit is hard and takes time to marinate. You are cramming a CS degree into a few months. Don't rush it too much. Even if your interview is in two weeks, you can usually push back to buy yourself more time if needed.
There are a million things that can pull your attention. Building random projects, learning a new language, deep diving into Web3, etc. Time spent on other things is not time spent on moving toward your goal. You can always mix up your study style if you are getting frustrated with the current approach (Ex. Switch to more discussions and mocks if Leetcode is driving you nuts). More tips on staying focused here.
Especially during the dips in motivation, consistency is key. If you are feeling like crap one day, do your dailies then log off. Don't push it too hard, because it will catch up with you. Your natural motivation will come back, you just need to weather the dip and not be too hard on yourself during that period.
This process isn’t easy for anyone. If it was, everyone would be a software engineer working at Google. Remember that something being hard, just means it takes more time.
Stay focused, attack ambiguity, and most importantly be kind to yourself.
Learn System Design
I’m actively tweeting about building LeetDesign, a massive list of interactive system design problems to help you learn system design faster.
If you are interested in the all of the lessons and wacky bugs I encounter building the product, give me a follow: https://twitter.com/DannyHabibs