January 27, 2023
How to prepare yourself to be better at Data Interviews?
In this blog, let’s talk about some specific actions you can take to perform better at Data Interviews. Below is general advice based on my experience coaching 100+ candidates and my industry experience being on both sides of the table.
Popular skill set as of 2023 still seems to be SQL, Python & Big Data fundamentals. Here is how to prepare for each of them.
Big Data fundamentals and Data Warehousing
- Designing Data-Intensive Applications “The Big Ideas Behind Reliable, Scalable, and Maintainable Systems”
When you read this book, do not expect to understand this after the first attempt; Just read through it. Some chapters make sense in the second or third iteration. Do not quit on the book because it’s too daunting at first. I have read this book at least five times and keep revising some chapters occasionally, improving my conceptual understanding.
- The Data Warehouse Toolkit: The Definitive Guide to Dimensional Modeling, 3rd Edition
Written by “Ralph Kimball” who is considered a thought leader for Data Warehousing. The concepts you will learn in this book still hold true in 2023.
I encourage you to ponder how these concepts hold in the Big Data space when you read this book. As a function of time, many of us graduated directly into the Big Data space without understanding data warehousing enough.
Think in SQL:
Most businesses do a SQL interview in addition to a coding interview because it is a crucial competence for data engineers, scientists or analysts. Building dependable and scalable data processing and data modelling solutions is your job, and SQL should come naturally to you.
People have a bad habit of running code every time they make a change. However, this often limits one’s ability to think about what big blocks of code do together. A good rule of thumb is to run each SQL solution, at most twice, when practicing for the coding round.
Write formatted SQL with self-descriptive variable names
Learn about partitions, indexes, etc.
(Advanced) Learn about explain plan and how databases run your query
Practice Python/ ( Or a language of your choice)
To practice your coding skills, you must use a whiteboard rather than just paper or integrated development environments (IDEs), which provide syntax support and standard formatting. Doing this will make you feel more at ease during the actual coding interview rounds. You ought to be knowledgeable about both simple and complicated issues. Learning the foundations of a programming language, like Python, and practicing its syntax and commands are good places to start.
Learn the Big O Notion so that you can write performant and testable code
Practice on an online platform: InterviewQuery, Leetcode, Hackerrank, etc
Read the below books
Elements of Programming Interviews in Python: The Insiders’ Guide
Cracking the Coding Interview: 189 Programming Questions and Solutions
As you start applying for jobs and come close to the on-site interview stage, practicing mock interviews with peers and experienced coaches who can give you personalized feedback to improve your interview performance is beneficial. Interviewing is a skill that needs to be polished before you go to the on-site interviews.
I recommend the candidates think about opportunity loss. Finding a good coach who can provide valuable tips can shorten your learning curve and will help you identify your blind spot.
Example: If you land a job worth $100K a week early. Then a week represents ~$1923 of opportunity.
**Blind** is an anonymous community app for the workplace. The tech community is very helpful and transparent. Always research the company, their interview style and compensation before your interviews.
“Opinions expressed are solely my own and do not express the views or opinions of my employer.”
If you’re interested in learning more and keeping up to date with the latest about Spark, Delta, DBT, Python, SQL, Terraform, and other big data technologies, check out my other blogs and follow.