Level up your Tech Skills ๐งฐ - Introduction
Introduction
The goal of this section is to introduce you to the landscape of roles related to data science, and provide you with a library of resources for each role. You should read through each page in this section, then come back and utilize individual resources as they pertain to your job search.
Objectives
- Understand the general landscape of the data science career field
- Understand the distinctions between and typical qualifications for Business Analyst, Data Analyst, Data Scientist, Data Engineer, and Machine Learning Engineer roles
- Locate relevant resources for each of these job titles, as well as "Other" roles such as Software Engineer
Data Science Landscape
A Data What?
Data science as a field is still quite new, so there are a lot of different job titles. Compared to the software field โ where Software Engineer and Software Developer are the main two job titles โ data science has practically as many job titles as there are data professionals! You will see jobs with nouns such as analyst, scientist, engineer, strategist, consultant, and architect, as well as descriptors like data, business, customer, analytics, and more.
In general, the larger the company (and the more mature its data science org), the more granular and specialized the role will be. For example, a Data Scientist at a small company might be responsible for a range of tasks that would be covered by a separate Data Engineer, a Data Scientist, and a Machine Learning Engineer at a larger company. This fact, along with the immaturity of the industry in general, means that it is very important to read a given job description in order to understand what a given role requires.
Top Roles for Flatiron Grads
Despite all of this variation, we will provide you with some general guidelines about some of the top roles that Flatiron School DS grads end up filling. It's a good idea to read through all of the descriptions before mapping out your study plan, since there will still be significant overlap between the roles, but we will only link each resource once.
In the table below, we outline the job titles and the level of skill expected in each of three areas:
- Communication and Consulting: Working with technical and non-technical stakeholders to understand requirements and ensure that they are met. Communicating results through writing, visualizations, and presentations.
- Statistics and Machine Learning: Understanding and applying statistical techniques to answer business questions. The "High" skill level may include developing novel machine learning approaches.
- Engineering: Writing code to solve business problems, including scripts, queries, and sometimes full-stack software. Can also involve systems administration and configuration of cloud tools.
Communication and Consulting | Statistics and Machine Learning | Engineering | |
---|---|---|---|
Business Analyst | High | Low | Low |
Data Analyst | High | Medium | Medium |
Data Scientist | Medium | High | Medium |
Data Engineer | Low | Low | High |
ML Engineer | Low | High | High |
All of the above are approximations, but they should help you figure out what jobs to start applying for. In general, roles that are more "technical" (require more engineering skill) will be more highly compensated and potentially more challenging to achieve. Roles that require more statistics and machine learning skill will often nominally require an advanced degree (especially at larger companies), although we have found that many Flatiron School grads are able to get these jobs after a few years of work experience. If you're not sure where to start, we recommend the Data Analyst role.
Side-by-Side Comparisons
While we will go into more depth about each of these roles in the next lessons, here are some key distinctions between the roles that aren't quite captured by the table above.
Business Analyst vs. Data Analyst
In general, Business Analyst roles are considered less "technical" than Data Analyst roles. Business Analysts may be expected to write SQL queries but are rarely asked to use Python, whereas Data Analysts often use Python in scripts to clean and analyze data. Data Analysts are also more likely to use machine learning than Business Analysts.
Data Analyst vs. Data Scientist
In some organizations, the only difference between a Data Analyst and a Data Scientist is experience โ both perform data cleaning, data analysis, and modeling. In other organizations, the distinction is that Data Scientists use machine learning, while Data Analysts do not. In still other organizations, both Data Analysts and Data Scientists use Python and machine learning, but only Data Scientists use inferential statistics and models. One other distinction is that Data Scientists are much more likely to use R rather than Python (although Python tends to be the most popular for both roles), and Data Analysts are slightly more likely to use SQL.
We have found that about half of Flatiron School grads in Data Analyst roles use machine learning, whereas almost all of our grads in Data Scientist roles use it. As you can see, there is significant overlap, so it's important to review the actual job descriptions to understand what is expected in a given role.
Data Analyst/Scientist vs. Data Engineer
The key distinction between a Data Engineer and the previous two roles is that Data Engineers typically focus exclusively on data sourcing and cleaning. Most of the time they do not use Python, do not create data visualizations, and do not use statistics or machine learning. Instead they focus more on the "back end" processes, mostly using SQL to create data pipelines but also using cloud tools and Big Data tools that sometimes use formats other than SQL.
Data Scientist vs. ML Engineer
Both Data Scientists and ML Engineers are routinely responsible for building machine learning models, but the roles differ in how much they emphasize engineering vs. communication. Data Scientists are more likely to build models designed for decision support, which are only run occasionally and with human intervention. ML Engineers are more likely to build models designed to be part of a software product, which are constantly re-training and running and are deployed using cloud tools. This means that ML Engineers need to have a stronger understanding of the software development cycle and tooling, and are less likely to give formal presentations than Data Scientists.
Conclusion
In this lesson we went over some of the top job titles, in order to understand the general landscape of the data science field. In upcoming lessons, we'll dive into each role individually, including further reading and practice resources to prepare for each role category.