For 2019, Glassdoor ranked data scientist as the number one best job in America. The ever-growing popularity of the data science career path has led to an explosion in degrees, programs, and bootcamps targeted at people looking to enter the field. According to Discover Data Science a bachelors degree in data science was nearly non-existent 5 years ago and now there are over 50. While demand for data scientists continues to grow (Indeed reported a 29% increase in demand from 2018 to 2019), I would argue that landing your first job as a data scientist is perhaps harder than ever due to the increased supply of entry-level talent. It doesn’t help that many job descriptions express qualifications around having multiple years of experience in the field. In fact, the first description I found for a data scientist job on Indeed had the following (note: this might be completely appropriate for this particular job; using it to illustrate the point that there tend to be few data science job descriptions that don’t require multiple years of experience):
- Bachelor’s degree or four or more years of work experience.
- Four or more years of relevant work experience.
Given all of this, it is not surprising that one of the most common questions I receive is, “How do I break into the field of data science?”
There are thousands of ways one might answer this question, but I’d like to focus on four. My answers assume a bit about you, though. Primarily, that you have in fact studied data science and feel comfortable with the basic principles of the field. If you are not sure, check out Andrew Ng’s machine learning course. If you feel comfortable with that material then I believe my advice applies (bonus points if you have also taken his deep learning course).
Unfortunately, most technical programs don’t focus very much on actually getting a job. Instead, students spend a vast amount of time chasing that perfect GPA. While there is certainly nothing wrong with aspiring to good grades, I find that it consumes so much time that when a student finally comes up for air at the end of their program, they find that they have not spent much time thinking strategically about landing their dream job.
I say strategically because as the job market becomes increasingly global, gone are the days that you can expect to land your dream job just by submitting an application and hoping for the best. Almost every job will have dozens if not hundreds of applications. In fact, Google gets about 3 million applications a year placing your expected chance of getting a job at about 0.2 percent. Harvard, on the other hand, has an acceptance rate of 4.5 percent. So while, yes, you can still get a job at Google by just submitting your resume and going through the “standard” process, you are much better off trying to raise your odds.
My first piece of advice for raising your odds is networking. Do not trust the “process” to get you a job because you are the best candidate. The recruiting process is extremely noisy and many great candidates get overlooked. Networking is so valuable because it usually can help you get past the resume screen. The normal process at most companies is to create a job posting, receive hundreds of applicants, and then use some process to filter the resumes to select who will move forward. The process of selecting resumes, in my experience, is the noisiest. The problem is very large companies have to have a pretty standard filter to be able to handle such a large amount of resumes and smaller companies tend to have almost no standard process. So if you don’t fit into exactly what the large company wants, you’re in trouble. And with the smaller companies, you might not get noticed simply because your resume was never even seen or perhaps the bias of when the company reviewed your resume worked against you.
So how does networking help? Networking is the first step to getting a referral. Dan Quine, who used to work at Google, said (in 2013)
There is no more powerful way to get to the top of the hiring queue than to be recommended by a current Google employee. When I was there about 4% of all people interviewed by the company were employee referrals, but they made up over 20% of the people hired. When a Googler recommends you, the recruiting team pays very close attention.
I have found this holds true at almost every company. Companies are dying to find great talent and they know their recruiting process is noisy. So when a great employee recommends someone, they listen.
So — my advice is to network, so you can get a referral, but where to start? Here is some advice:
- Just start talking to people. Get comfortable getting to know people and be genuinely interested in learning from them. There are probably people in your class whom you don’t know — get to know them! Imagine learning that you used to sit next to someone like Mark Zuckerberg and you never said a word to him. That feels bad.
- View networking as an opportunity to give, not just take. Adam Grant has an excellent book called Give and Take on the value of being a giver. It’s easy to view networking as trying to take value from someone. I would recommend flipping that on its head and try to give value to your network. More often than not, that will also lead to the most value for you.
- Don’t be afraid to go outside your comfort zone to expand your network. Get on meetup.com and find people with similar interests as you. Reach out to people on LinkedIn whom you admire. Want to get a job at Facebook? Try connecting with some current data scientists at the company. I have been surprised by how willing people are to connect. Note: when connecting on LinkedIn don’t be pushy and don’t be generic. In my experience, a short, polite note that shows you understand what the person does and why connecting would make sense, goes a long way. If they don’t respond, that is okay, and I would avoid being pushy.
Networking takes time, so the sooner you start, the better. But hopefully, through developing and giving to your network, you will have people who know you and your skills and would be more than willing to refer you to a job.
Do Something Unique
When I first started hiring data scientists, one of the things that most surprised me was how similar all of the candidates can start to feel. Most candidates have a decent GPA, call out knowing Scikit-Learn and Pandas, have a few school projects like spam classification or sentiment analysis, and even some knowledge of deep learning is becoming more common. This is all great, but the problem becomes that while you are a good candidate you are not a must-have candidate.
Your goal with your resume and during your interviews should not be to leave the company thinking you are a strong candidate. It should be to leave them thinking you are the perfect candidate and they better hire you now.
Here are some things I have found that help candidates stand out:
- Read, understand, and implement a research paper. Preferably one that isn’t common for students to implement (again — trying to stand out). Make sure your code is on GitHub and even make a blog post about your experience.
- Gain experience defining and solving a problem with machine learning from end-to-end. For example, maybe you are passionate about fantasy football. Talking about how you defined your problem, assembled your data set, analyzed the data, made predictions, and evaluated those predictions to make better fantasy football decisions is really valuable. Being a great data scientist is much more than just understanding all the algorithms. This type of project shows you can execute on the entire data science process.
- Spend time getting to know the company and the job requirements. Then tailor your resume and responses to most highlight how your skills fit with what the company is looking for. This seems obvious, but in my experience is seldom done well.
- Contribute to open-source and have an active GitHub account. Almost everyone these days links to a GitHub account and they are almost all empty, but for a few school projects. Not sure how to get started contributing to open-source? I would recommend looking at Scikit-Learn’s guide on contributing. They have really clear guidelines on how to get started for beginners. Set a goal to push some code to GitHub every week and you will start to develop a solid history of activity to showcase.
Have a Growth Mindset
A growth mindset is the understanding that abilities and intelligence can be developed. Dr. Dweck coined the term and discovered, “When students believe they can get smarter, they understand that effort makes them stronger. Therefore they put in extra time and effort, and that leads to higher achievement.” Google also found a growth mindset to be a key attribute of successful managers.
I am a huge fan of embracing the idea of a growth mindset and it is one of the key attributes I look for when hiring — especially entry-level positions. I have found that people with growth mindsets are more likely to view challenges and failures as opportunities to grow, embrace feedback, and push myself and the team to achieve more. My advice for developing a growth mindset:
- Put the idea to the test by always learning. If abilities and intelligence can be developed, then put the work in every day to do so and analyze the results. I personally make sure I spend at least 30 minutes of my free time dedicated to learning every day. I’ve been amazed by the results. This is how I first learned reinforcement learning, GANs, CSS, JS, and many more topics.
- Share your growth. As you learn and develop new skills, share them via outlets such as GitHub, LinkedIn, and Medium. The act of sharing will help reinforce your knowledge and often introduces you to other people with growth mindsets.
- Focus on what you can control. On some level, you can’t control how much time it will take to learn about an area before you feel comfortable with your knowledge. When I first started learning about reinforcement learning, it was a slow process for me. If I focused on “mastering” the area in some defined amount of time, it would have been easy to give up. Instead, I focused on what I could control: the amount of effort I put in. My goal, at that time, was to spend 30 minutes a day learning about reinforcement learning. How long it took for me to become comfortable with the area didn’t really matter.
- Don’t be afraid to branch out and learn about areas outside of data science. If you want to make learning a life long goal, you will need to make it enjoyable and be okay following your interests. I spent an entire summer mostly learning about how to build and deploy my own website. I also spent some time learning about the language Go.
- Try and view failures and challenges as signposts on the way to success and learning. No one likes to fail, but you will not grow without it. View failure as a sign that you are pushing yourself outside your comfort zone and growing. Now, this only works if you actually spend time thinking about your failures and how to grow and learn from them (and then put the work in to do so). Also, be strategic in your failures. While you would surely learn from failing to execute on a business idea that consumed your entire life savings, that failure would be very crippling and the path should only be pursued with serious forethought. Other failures are much safer and can be explored with much less prior analysis. For example, should I spend time learning about topic x or topic y? If you “fail” and pick a topic you decide you don’t enjoy, it is fairly easy to pivot to something new.
My advice to people looking to break into the field of data science is to be strategic, network, do something unique, and have a growth mindset. I also posed the question on LinkedIn, so if you would like to view other’s advice you can check it out here:
Tyler Folkman on LinkedIn: “I’m putting together an article with some advice for people looking to…
_September 23, 2019: Tyler Folkman posted on LinkedIn_www.linkedin.com(https://www.linkedin.com/posts/tylerfolkman_datascience-firstjob-advice-activity-6581901513793384448-gq1P)