How to Prepare for a Python Coding Interview
A “minimalist guide” on how to prepare for your upcoming Python interview in three steps.
Participating in a “Silicon Valley style” coding interview can feel scary as heck.
Unlike other professionals, it seems to be okay for software developers to expect to get humiliated at a job interview:
“What, you can’t code up a recursive descent parser on a whiteboard in 7.5 minutes? How DARE YOU
even apply for this job!”
Yeah, it’s one of the things that sucks about our industry—
Personally, I believe that 80-90% of the questions that you get asked during a typical coding interview have very little to do with your real performance on the job.
But unfortunately these interviews aren’t going to go away over night.
If you want a well-paid job as a software developer, you’re likely going to encounter some coding quiz as part of your interviewing experience.
For the foreseeable future, interviewers are going to keep squeezing you through the same processes and will keep asking you those same questions…
And if you’re like me, there’s a pretty slim chance you’ll pass an interview like that without some serious prep work—either to learn the right skills or to refresh your memory.
Alright, that all sounds pretty glum, no?
But here’s what you need to realize:
Interviewing is a skill you can
learn like any other.
It’s something you get better at with practice.
It’s true—just remember that all that prep work needs time. So be sure to plan ahead with ample of buffer to get enough study days in before your “big day.”
If I had a coding interview coming up in 1-2 months, here’s a rough outline of what I’d do to prepare:
Step 1:
Buy the following two books:
- “Elements of Programming Interviews (Python Ed.)” by Aziz, Lee and Prakash; and
- “Cracking the Coding Interview” by Gayle Laakmann McDowell
Step 2:
Buy a whiteboard and some markers. Put the whiteboard on an actual wall, and make sure you get a board with a decent size. This is where 90% of your prep work will happen over the next few weeks.
Step 3:
Every day, stand in front of your whiteboard and work on at least one problem from the books listed in Step 1.
Talk out loud about what you’re doing, and snap a photo of the board when you’re done. Set a 30 minute timer for each problem to put some pressure on yourself.
If you can’t solve a problem, pick up the book and go through all the motions with the solution in front of you. Rinse and repeat.
The closer you get to your interview date the more you want to practice—ramp it up to around 5 problems per day in the last two weeks before your interview.
Just repeat after me:
“Interviewing is a learned skill.”
The more “reps” you can get on each problem, the better your chances of getting a job offer will be. I know this sounds tough—but with persistence and regular practice you can do it. Keep at it and you’ll eventually succeed. It’ll be worth it!