Full-stack data scientist

Tasos Pardalis
Road to Full Stack Data Science
9 min readJun 23, 2020

A good place to start with a publication called “Road to Full Stack Data Science” is by trying to explore what is a full-stack data scientist (FSDS).

In this post, I’ll explore the ideas shared by other blogs, publications, and news outlets, and provide my own view on the subject matter towards the end.

Full-Stack Data Science Technology Skills

From identification through to execution

According to Nicholas Hartman from CKM, FSDS is someone who can take a data-driven concept from identification through to execution that results in some tangible, measurable, and impactful improvement. With an emphasis on being able to drive an organisation to do something. Technically, the full-stack data scientist has a lot of parallels with descriptions of full-stack developers — i.e., they can handle all aspects of the technical development process.

Nicholas continuous to say that even if the data scientist can produce a mind-blowing technical product, if it doesn’t provide tangible improvements for the business and its stakeholders then the job is not a “full-stack data science”. A full-stack data scientist, therefore, should be able to produce products that improve the business.

Full-Stack VS Specialist

Nicholas, also explores if being a specialist is a good idea in data science (i.e., machine learning for NLP). He argues that to claim to be a specialist, you have to be able to “move the needle” in the area you are specialising (i.e., publish new NLP models that others in the community can use). He also argues that you first need to be a decent full-stack data scientist (i.e., willing to do the boring data collection and cleaning job), before you can specialize.

Full-Stack Data Scientist Skills By Nicholas

  • Identifying & understanding the business problem (soft/business skill)
  • Understanding the business (soft/business skill)
  • Identifying data sources (data skill)
  • Data Engineering (data/technical skill)
  • ETL (Extract Transform Load) (data/technical skill)
  • Analysis/Modeling (data/analytics skill)
  • Story Communication (soft skill)
  • User empathy (soft skill)
  • Productionizing output (technical skill)
  • Having an impact (soft/business skill)article published in Forbes Magazine, written by Nisha Talagala

As you can see, from the 10 skills listed above, 5 are soft skills, 4 are a combination of data and some technical skills and 1 is more towards the data skills.

I don’t personally know Nicholas Hartman, but you can follow him on LinkedIn. Also, read the full post I refer to above here

Myth, Unicorn, or New Normal?

According to an article published in Forbes Magazine, written by Nisha Talagala, there is not a standard definition of a Full-Stack Data Scientist (FSDS) yet, but there are two emerging viewpoints.

Although her article was published in September 2019, we still don’t have a standard definition in June 2020.

The two emerging viewpoints:

  • A data scientist who is capable of understanding and executing the data analytics and model development as well as the model deployment and integration with the business application (i.e., (a) develop REST APIs for application consumption and (b) build dashboard applications to showcase their model predictions).
  • A data scientist who can understand the business needs and be able to explain how AI/ML approaches generate a better return on investment (ROI) than what the business was doing before.

Nisha continues to express that just hiring data scientists is a hard job already. Since data science itself is a multi-faceted discipline. The multi-faceted nature of data science creates roles such as Decision Scientists (those who understand the business problem and can apply data science), Data Scientists (those who understand how to manipulate the data and the algorithms), and Machine Learning Engineers (those who understand how to build the pipelines in production with both code and ML quality).

Since the Data Scientist title is already so complex, one can understand that the Full-Stack Data Scientist title adds even more layers of complexity when hiring. So naturally, one should ask what weight do you give to every skill, who can assess their experience, and how do they fit into the organisation itself.

Jack of all trades?

Because of the complications mentioned above, Nisha poses the question of whether the FSDS is a jack of all trades, but a master of none. Are they people who are not experts in production, modeling, business understanding, code, and deployment but know how to bring everything together and making it all work?

Mastering all three areas (data science, production code, and business acumen), is very difficult for one individual. All three areas take years to learn, and true mastery of any combination takes years of practice. If you add market expertise, legal challenges for business in particular sectors, and other business challenges into the mix, believing that an individual FSDS can do it all is a dangerous idea.

Regardless of the challenges, trending towards FSDS is good It highlights a shift in focus — the importance of the full lifecycle that is required for a business to make money from AI.

From a business perspective

Nisha suggests that a business needs to embrace the full AI lifecycle (see figure 1 below). The more a business embraces the full lifecycle, the more likely for data scientists to bring value with their business and production skills.

Figure 1: Full AI lifecycle

Nisha also describes how a business can develop a full-stack data science team and how to recruit for it. Read the original article on Forbes. Also, check out Nisha Talagala’s LinkedIn if you’d like to know more about the author.

Elusive Unicorn and Data Hacker

Vincent Granville, a data science executive and investor, shared his thoughts on FSDSs a couple of years ago. He argues that full-stack data scientists are not unicorns like the hiring managers suggest, but they are instead innovators, individuals who can start businesses and build products from the ground up because they combine the business, analytical, and technology skills required for that.

The key skills he believes FSDSs should have are:

  • Strong business acumen and domain expertise in several fields
  • Ability to leverage competitive, internal, external, marketing, finance, advertising, web, and various other sources of data. Find the data, get it integrated, design the success metrics, and get them tracked, and then make decisions based on sound models.
  • To successfully operate any company, working with engineers, sales, finance, and any other team.
  • Negotiation skills, the ability to raise money, internal and external, by providing convincing analytical arguments.

Read his whole post here

Data Engineer + Data Scientist = Full-Stack Data Scientist

An idea explored by Akira Takezawa in this medium post is that a full-stack data scientist is someone who combines the skills of data science and data engineering. A visual taken by Akira’s original post shows some of those skills/technologies and where they overlap.

Besides the technical skills listed in the above visual, Akira explores what is data science for business, explaining that data science is never the actual goal. The goal of a data scientist is to help the business:

  • Make more profit
  • To understand and satisfy their customers
  • To create a new business or startup by using machine learning (this argument is strongly expressed by Vincent Granville above as well).

I would suggest for you to read Akira’s post, he shares some interesting perspectives and ideas from his experience.

Full-Stack Software Developer

Since some argue that the FSDS should be able to write code or even build new products/businesses from scratch using machine learning and business acumen, let’s explore a simple definition of what a full-stack software developer is.

Roughly speaking, a full-stack software developer is someone who can develop both the front-end (the visible parts of a website/application) and the back-end (the “under the hood” databases and infrastructure). Definitions are taken by Scott Morris’ post

I can argue that back-end skills are important for the FSDS of the future to have since without a good database infrastructure it’s difficult to ensure continuous data quality.

My personal take on Full-Stack Data Science

So far we’ve explored some definitions and ideas from other data scientists, software developers, and entrepreneurs.

When you read through them (and other similar posts found online), you can notice similarities. Simply put, most people seem to agree that the full-stack data science job needs a person with a business, machine learning, and code/product development acumen.

I believe that FSDS is a professional who can:

  • Understand a business (its needs, weaknesses, potential)
  • Understand the business’ customers/consumers
  • Understand a business’ data (sources, quality, usability, meanings)
  • Understand the business’ data value
  • Understand what external data could be of value for the given business
  • Be able to collect the external data and integrate them with the internal data (create a database and connect internal & external data through common keys such as date, region, etc…)
  • The ability to analyse and explore the data
  • By combining the above, being able to identify opportunities and create hypotheses (i.e., based on the patterns we see from the internal sales data and the market sales data, we might be able to service customers better by predicting the cold & flu season spike beforehand).
  • The ability to create models to test the hypotheses
  • The ability to work with the business stakeholders to pressure test the hypotheses and models against the business needs (i.e., how can we use the model in our everyday business? What’s the ROI? Does it make sense to invest time and resources to deploy the model?)
  • The ability to create and deploy an app that the business stakeholders can use every time they want to test repeated scenarios and hypotheses (i.e., if we invest in Facebook ads a set amount of money to promote a specific product/offer on specific dates, what would our ROI be).
  • The ability to create REST APIs for his/her models (usually for an app like the one mentioned on the previous bullet-point to work, you need to make your ML model into a REST API for the front-end and back-end to communicate).
  • The ability to present model results in ways that every stakeholder will understand.
  • The ability to build interactive dashboards that tell a business story
  • The ability to create ROI from the AI process

No-one can be a perfect FSDS

I don’t believe that anyone can be a perfect full-stack data scientist. What I mean by that is that “I don’t think one individual can be an expert in all of the skills I mention above”. It’s a long list of abilities and skills and as Nisha Talagala mentioned in her piece, it takes years of studying and practicing such skills before you can call yourself an expert.

But, no-one needs to be perfect

To be a good FSDS and be able to provide the business value you don’t need to be a specialist in all of the skills above. I agree with Vincent Granville’s idea that you have to be entrepreneurial.

This means that you have to be able to understand the business, the problem you want to solve or the product you want to develop. You need to be able to discover things that others miss when you analyse data. You have to be creative and ask the questions that most won’t ask. As Stephen Schwarzman mentions in his book “What it takes”, I believe you need to be willing to solve the difficult problems, the ones which most people will avoid, therefore, your competition will be less and your rewards larger. Finally, you need to be able to recruit the people who specialise in the skills that you might lack but might be crucial for your project to succeed (depends on the project).

Conclusion

Striving to be a Full-Stack Data Scientist is something I would suggest to most people. It combines so many interesting skills. You can choose to be better at some of the skills and just good enough in the rest. But having the understanding of how everything works together while being able to solve business problems and discover interesting insights is something that can be valuable no matter what you want to do in the future.

The more people with the FSDS skills we have the more chances we might get for solving the world’s hunger and health issues, just close your eyes and imagine a world where the right systems are in place to ensure every kid has food and medicine in every corner of the world. I truly believe that FSDSs with an entrepreneurial mindset can make things like that happen.

What’s next?

I’ll do my best to post ideas, thoughts, code, experiences, or even questions/challenges I would like to tackle as a full-stack data scientist. My journey is young. I’ve been a data scientist for about 2 years now and I have a lot of skills that I’d like to develop and projects I want to work on. I will be sharing my learnings here as well.

If you are a data scientist or even better an aspiring FSDS let me know if you’d like to contribute to the series.

--

--

Tasos Pardalis
Road to Full Stack Data Science

I am a full-stack Data Scientist with a passion for innovation. I like gaining business value from data and automating analysis.