Preparing for interviews can be daunting, especially if you’re new to interviewing, or if it’s been a few years since your last one.
Here a six resources which will help you feel more prepared!
Note: Buying resources offline and online can be expensive, so always check with friends or local libraries to see if they have a copy or free access. If the edition you find is not the latest iteration, don’t worry – latest editions tend to be more expansive, but on the whole very little of the core material changes from edition to edition!
No.1 ‘Cracking the Coding Interview’ by Gayle McDowell
This is one of the best-known resources for technical interviews and for good reason. Gayle McDowell’s ‘one stop shop’ for programmers looking to nail an interview is a comprehensive and clear look into what it takes to do well at interview. The first 6 chapters are especially good for reviewing your data structures and algorithmic knowledge from university (which is probably a little rusty). Don’t expect all the 150 practise questions to come up in interviews, though; most interviewers are well aware of the book, and have caught on to engineers using it as a resource! All the same, it’s a great way to practise and that’s why it’s top of the list.
No.2 ‘Designing Data-Intensive Applications’ by Martin Kleppman
Recommended by an engineer who recently nailed the Palantir interview process, this book helps you to navigate the pros and cons of different technologies used for processing and storing data. Although it’s fairly specific to data-centric companies and roles, it’s a great resource to make you more aware of the general technical landscape. The book is specifically recommended for Systems Design interviews, since it offers a comprehensive overview of the underlying technologies used by all the major current computer systems. If you’re looking to brush up on your knowledge of how the whole lifecycle works, this is a great place to start.
No.3 ‘Programming Pearls’ by Joe Bentley
This book is commonly listed amongst engineers’ favourites, and it’s because (we’re assured) it’s a fun and engaging way to practise interview-style questions. The book contains tons of hard problems you need to solve by coding, and it’ll give you an in-depth understanding of how to actively solve these problems in an interview environment. All the problems are real problems engineers have had to solve, and the book offers practical programming methods and environments with which to approach them. If you enjoy challenging yourself and want to engage your creativity too, this is a great tool to have at hand!
No.4 www.pramp.com
Once you’ve practised with the books and got your algorithms back up to scratch, it’s time to practise with someone else! Pramp is unique because of its model: it pairs you up with another interviewee so the two of you can practise how to answer questions in interview conditions. As a hiring manager once phrased it to me: ‘we would never try to solve a problem at work in isolation, so why would we try to do that in an interview?’ This website should help you understand why and how you need to communicate your thought process during the interviews. It will push you to be stricter with yourself, and you’ll have your partner there to keep you accountable. All round, this is a great way to test yourself.
No.5 www.projecteuler.net
This is a great resource for practising the vague algorithmic questions interviewers love to ask. The great thing about Project Euler is that it includes examples of how other engineers have solved the problems before, which can be super helpful if you’re stuck. Essentially, Project Euler is just a massive library of all kinds of really challenging questions, so if you get through the books and want to challenge yourself, give this a go. Check them out on Twitter too @projecteulerbot
No.6 www.educative.io
Grokking the System Design Interview – Another site suggested by an engineer. This is a great course which covers how to go about nailing the systems design interviews. Most engineers tend to get thrown off by these interviews, since they won’t often have encountered something similar before. If this course is a little pricey for you, try checking out this GitHub Repo instead.
#shecancode
Louisa Cowan has spent her career to date in technology recruitment and has experience spanning start-up, scale-up and corporate clients. Louisa was raised in Cheltenham and studied English Literature at UCL.
She lives in North West London but enjoys working in the hub of London’s thriving tech scene.
Follow Louisa: LinkedIn