Is Data Structures & Algorithms important for a data scientist

Does Leetcode grinding make you a better data scientist ?

TLDR - NOPE

In my 5 year expereince, spread across startups to large scale MNCs, I have hardly ever needed to know how to traverse a binary tree, say, in my day to day job as a data scientist! Yet, you’ll still find a lot of big tech companies include some Leetcode questions for the first round of most DS job interviews.

When I ask my colleagues the same question, they also respond in a similar manner that it’s a pointless skill in the data science domain, but something you need to learn to crack the interviews anyway. If you’re interested in a more non-anecdotal answer, check out a dicussion topic I started on Kaggle forum some time back. Largely, the only argument in favour of Leetcode style interviews is that it is a standard practise in the tech industry for hiring Software Engineers, and is a good step to filter out from 100’s, if not 1000’s, of applicants for DS job roles right now.

Honestly, Leetcode grinding (OR HackerRank OR HackerEarth) just seems depressing to me. Leetcode has become to FAANG what CAT is to IIMs or JEE is to IITs (Indian context), but in a wierd twisted way. Spend enough time on practising such problems and most people would be able to solve (regurgigate?) these typical problems after a while.

Data Structures and Algorithms, as a topic of learning though, is actually a very interesting and intellectually stimulating topic in itself. though. And it does make sense for Software Engineers to understand these concepts well for their day jobs. But for someone who has decent programming skills and is more interested in data analysis, studying this topic for the sole aim of a job interview will be a dry, abstract and meaningless process.

Leetcode questions are essentially gatekeeping DS roles from non-CS background candidates. Imagine a farcical hypothetical scenario where a candidate with Math PhD, who has sufficient programming skills to build and deploy ML models for his research, then has to practise manipulating a linked list and inverting a binary tree for his job interviews. Data science is a very broad field with people from diverse disciplines like Economics, Biology, Astrophysics, etc already using ML to solve cutting edge problems in their domains. Leetcoding problems today are essentially gatekeeping this diverse community from moving into the tech industry.

The good news is that some companies have started moving away from this process slowly and started testing their candidates on stuff that really matters For eg. statistics, probability or data manipulation, using case studies / take home assignements on ML and EDA. I hope this trend catches on as the data science ecosystem matures further, thus making the Data Science community more inclusive.

2021

Back to Top ↑

2020

Fun with Haskell

3 minute read

My notes halfway through the book Learn You A Haskell

Back to Top ↑