A Student's Guide to Preparing for Data Science Interviews
acheronanalytics.com
acheronanalytics.com
As a new grad that went through the hunt very recently - it was a messy process. Very few places will consider you without extensive experience, or a masters/Ph.D. Of course if you're hiring people to research machine learning algorithms that's justifiable, but plenty of the responsibilities people associate with data scientists don't require advanced degrees.
And the number of posts asking for 5, 7, even 10 years of experience... absolutely astounding.
As someone uninterested in going back to school, I've resigned myself to getting some work experience and doing personal projects for 1-2 yrs before trying again.
applied to ~85 data science positions. I can't even get recruiters to call me for a phone screening, so don't feel down =)
1. Previous internship in data science 2. Experience developing R packages and putting them on GitHub 3. Really having statistical theory down pat
You don't need an advanced degree to be a data scientist but you need a strong understanding of stats and how to work with data. Having an advanced degree is a good indicator that you can do that. But it's not a prerequisite for an undergrad: Github, internships, TA-ships can make that up.
I think one advantage is that while PhD's are typically very good at the research process and the techniques used in their research, undergrads could be more flexible and adaptive to different situations.
Or maybe there's a better explanation for asking for a candidate with a Ph.D. in Statistics to create a linear regression model in Excel. Because truth is, for many companies that's all they need.
Linear regression, logistic regression and k-means clustering, if you can get a project into actual real-money production on one of those, you are already well ahead of 90% of data scientists. And these techniques are decades old!
But also recall, that there are alot of people with general computer backgrounds and a whole lot more real-world work experience who could pick up the basics of data scicnce stuff as well..
Places where these jobs tend to be needed are often very highly placed and very strategic, with the decisions being made based on the data very critical to the overall company health. Some of what is being requested by requiring this level of credentials is real-world work experience and a certain level of maturity/professionalism that is often implied by this as well..
If the level of skill is basic enough that any other regular employee could learn it in short order, why wouldn't they and then have the cushy 'sit around and play with numbers all day' job too.. There needs to be enough 'there there' to placate internal politics as well..
Further, having a more advanced person would also likely need to be taking leadership roles in picking and rolling out solutions with long term costs associated with them, training other employees, etc, which also comes with the professionalism/experience part..
Definitely will take note of that in the future though.
I may do a postmortem on my search later, but speaking from my experience with many, many interviews over the past couple months, the TL;DR is that the conventional interview wisdom on Hacker News/the cscareerquestions subreddit/this article is wrong and out of date. Interviews for such positions require a different set of skills than just reading Cracking the Code Interview (and ones that you can't get at a data bootcamp).
On the technical side, there is often more-advanced SQL (nested JOINs + PostgreSQL window functions). On the big data side, there is often discussion of distributed systems (e.g. Spark clusters) and practical algorithmic complexity at scale (i.e. instant fail if you suggest anything loglinear or slower).
Foundations of Data Science (Blum, Hopcroft, Kannan) https://www.cs.cornell.edu/jeh/book2016June9.pdf
Trying to do data science with zero knowledge of the fundamentals of probability is dangerous. Bayes rule isn't some kind of deep magic, it's covered within the first few lectures of an undergraduate probability course and it's absolutely necessary to understand the output of any machine learning model.
Depends on what you're hiring for, but I'll take "competition winner with no version control" over "average programmer with expert VC capabilities".
>Bayes rule isn't some kind of deep magic
Yes, it's largely conceptually obsolete.
The people jamming out weekly SOTA machine learning models on arxiv aren't sitting around meditating on conditional probabilities. They're making little tweaks to giant models that are basically impossible for a human to comprehend.
I'm sorry, what? How did you arrive at a point where you believe this is true? This is like calling compilers "obsolete."
Is it because you believe deep learning has "taken over" or something?
So we instead sample from that posterior.
Unless you think MCMC is also obsolete, in which case I’ll see myself out.
We're also ignoring the benefits of a posterior distribution, which is useful for understanding the data-generating process.
Maybe there are some jobs and some problem spaces where you can just tweak big black box models and you don't ever need to think about what their output means. But if you're the kind of data scientist who helps make decisions with data -- you better believe statistics and probability is conceptually relevant. As soon as models meet the real world, you've got to understand probability in order to know what to expect.
Wow
Metis, another known bootcamp, does explicitly mention things like k-means, which is something I didn't know: https://www.thisismetis.com/data-science-bootcamps
Not to say that a data science boot camp is all you would ever need to know, but I would give them a little more credit in what they teach. That galvanize link is not really their syllabus, they probably keep it vague to force you to sign up to their email list to get the real one.
On Hacker News, every time an interview thread pops up, there is a discussion decrying the use of technical screenings before an onsite, and often suggest practical work experience instead using a homework assignment (which this article does not discuss).
Most of the companies I've talked with for data analyst/science roles have given me both a homework assignment and a technical screen before the onsite. And often a prescreen test before both of them.
There have been a number of occasions where I easily passed the homework screen but failed the technical screen (without any feedback as to why). And it's beginning to get annoying.
I've never actually met someone off the internet who calls themselves a data scientist.
You could probably say the same about a lot of job titles. I've never meet a sanitation worker but my trash gets picked up once a week nonetheless.
Maybe this holds in the consulting world? It definitely does not hold in the tech world, IME.
And what is a data scientist then, if their work does not involve analysing data and presenting their analysis?
99.9% of "data science" is exactly what people used to do in tools like Excel, MATLAB, even SQL, just in Jupyter instead. On a Mac while sipping a latte.
This is a dead giveaway that you have no idea what you’re talking about. You’ve captured about 5% of my work.
The rest of the time, I’m writing software (ETL pipelines or real-time services, including tests), debugging some distributed system, collecting or cleaning data, or gathering requirements and developing feature specs with other folks.
Fortunately for you, you nailed the Mac-using latte-drinking part!
EDIT: Reading your comment history on regression and k-means. you _do_ know what you’re talking about. It is hard to get models into production, so I’m surprised to see your snark here. What gives? Do you have experience with DS who don’t deliver?
I have experience of DS who define what they do by the tools they use, not the results they deliver, it's a pet peeve of mine :-)
Thanks for going back and making the edit!
Very few companies are actually using their data scientists as scientists. From my experience.Except for when I worked at a large hospital. We had a research board, and had to be certified to study Humans CITI. But beyond that..
In what way is what statisticians do not "scientific"? Setting up and rejecting (or not) the null hypothesis is the very definition of the scientific process...