Why product developers need AI tools

July 15, 2021 · 7 minute read

Tommy Dang

Engineering

TLDR

Product developers know what machine learning is, know what it can be used for, have ideas on how to apply it to improve their users’ experience, but they don’t have the right tools to support them.

The Circle of Tool life

Terminology

What is a product developer?

A product developer is a software engineer that builds user facing features. Front-end engineers build features using JavaScript, HTML, CSS, etc. Backend engineers build services that power front-end or native applications. Native engineers build apps users can download, install, and use on their computers or mobile devices.

What is an AI application development tool?

It’s a piece of software that helps a user build and integrate the predictions of a machine learning model into a specific use case or application.

History

Since the dawn of time, humans have created tools to survive, build, and thrive. This feature, along with others, is what sets humans apart from animals. Steve Jobs articulates this well using the condor vs bicycle as an

example

. In summary, humans build tools to enhance their capabilities or give them new ones.

In software engineering, there have always been specialized roles with exclusive skill sets required to fulfill those responsibilities. These roles include

system administrators

(aka sysadmin),

developer operations

(aka DevOps),

data engineers

,

machine learning engineers

, and more. The responsibilities of these roles involved creating software, distributing software, maintaining software, etc.

Over time, humans started building tools to empower developers to do more. What was once a specialized skill became an integral part of a developer’s tool kit. Today, we have services like

AWS

,

Heroku

,

Vercel

, etc to help with systems administration,

CircleCI

and

Buildkite

for DevOps,

Inngest

and

Astronomer

for data engineering,

Snyk

for security,

Courier

for communications,

SecureFrame

for compliance,

Webflow

for web development, and so many more examples.

Status quo

Machine learning (ML) is ubiquitous in the current world. Many applications use ML behind the scenes. For example, product recommendations can use ML to predict the next best item for you to buy. Another application for ML is ranking search results to surface the most helpful article for you to read.

During my 5 plus years at

Airbnb

, I had the opportunity to work with hundreds of product developers across many different teams. I saw a growing trend: product developers know what ML is, what it can be used for, how they would apply it to improve their users’ experience, but they don’t have the prior training or the right tools to help them get started.

Photo credit: Airbnb (Punta Mita)

Currently, here is the typical high level process from ideation to launching a machine learning model live:

  1. Product developer finds business problem to solve

  2. Data scientist identifies data required to predict the answer to business problem

  3. Product developer writes code to collect required data identified by data scientist

  4. Data scientist prepares data for training

  5. Data scientist builds model and fine tunes it

  6. ML engineer or MLOps engineer deploys the model to an online server

  7. Product developer writes code to integrate model into live product

Product developers are very creative and great at coming up with impactful ideas to improve the business.

Building ML models require collecting the right data that will help make an accurate prediction. Product developers know where different data lives (e.g.

Amazon S3

,

Snowflake

,

Postgres

, etc). If there is any missing data, they know how to write code and collect it using tools like

Amplitude

,

Segment

,

Highlight

, etc.

Product developers are also great at building user-facing features and shipping it live into production. This is why they are the ones responsible for integrating a ML model once it’s ready.

Most solutions involve more than just a single prediction; sometimes, multiple logical procedures are chained together before a model’s prediction can be used. For example, you may check to see if the user is logged in prior to showing them a prediction. Product developers are experts at handling this type of conditional programming and adapting ML models to fit specific business applications.

Need help

Despite all these contributions, product developers today still rely on others to help them with the following:

  • Identify data required to predict the answer to business problem

  • Prepare data for training

  • Build model and fine tune it

  • Deploy the model to an online server

Future

Current AI tools are built for data scientists, AI researchers, or ML engineers. These tools are built by other data scientists and AI researchers. These tools are tailored towards the existing experts — people who studied it in school or practice it daily in their occupation.

AI tool loves product developers

However, with machine learning becoming more pervasive in our daily lives, data literacy growing amongst product developers, and an explosion of available data, a tool will emerge to equip product developers with accessible AI technology so that they can deliver transformational experiences to their users.

Conclusion

In 2021, the majority of product developers know what machine learning is, know what it can be used for, have ideas on how to apply it to improve their users’ experience, but they don’t have the right tools to support them. We need an AI application development tool to help us build and integrate the predictions of a machine learning model into a specific use case or application. When history repeats itself, there will be a tool that empowers developers to do more through AI; that tool is called

Mage

.

Get ahead into the future

Hang out with us

Join our community and chat about startups, AI/ML, and product development.

Like what you see? Join the team.

Mage is making AI and ML accessible to product developers. Join us and build beautiful and intuitive devtools.

Want to give us feedback or ask questions?

Please chat with us live by joining our Discord channel or send us an email.