3 Reasons AI Won’t Replace Product Developers | Built In

This post was originally published on this site.

As with many new technologies in the past, AI has kicked off a wave of speculation on what jobs may soon be obsolete.

Opinions vary widely, and no one has a crystal ball. The better question to ask is, “What kind of work is AI best suited for, and how can that help people do their best work?”

In the world of product development and software, there’s definitely a role for AI to play in accelerating progress. But in my experience in taking Software-as-a-Service solutions to market, I don’t see AI replacing product developers any time soon.

3 Things Humans Can Do That AI Can’t in Product Development

  1. Identify the problem that needs solved and tackling it with critical thinking skills.
  2. Use their own personal taste to build a product that appeals to different user preferences.
  3. Build a scalable product.

Related ReadingAI: An Overview

AI Can Offload These Development Tasks

A lot of buzz has circulated around ChatGPT’s ability to write code, causing many to wonder if even software development could someday become a fully automated task.

In some ways, they’re right to wonder: AI today has proven itself adept at taking an initial pass at fairly simple, discrete tasks in writing code. It excels at tasks where the expected output is already prescriptively defined and there are clear patterns and steps to follow.  

In the world of software development, this means AI might help save developers a great deal of time, say, taking a first pass at code where what it must accomplish is clearly defined. By delivering a first draft, AI removes a lot of cognitive load and grunt work that can bog engineers down, almost like helping an author get over writer’s block.

Instead of having to construct a building brick by brick, AI can give you a lot of pre-fab walls or rooms that you then just have to modify or tweak to suit your purposes.

It can also be used for, say, translating a bug report into a draft pull request. While a developer may still need to take a final pass of the work and check it for accuracy, appropriateness and efficiency of the solution, that’s a great deal of time developers can spend on improving the current product instead of putting out fires.

In this way, AI is good for first drafts of discrete coding tasks that have a clearly defined output. But the vast majority of product development isn’t spent executing on discrete, well-defined tasks. It’s spent instead on intensive, creative problem-solving that’s still best suited to human beings.

3 Development Areas Where We Need Actual Humans

There are three main areas of good product development where AI is ill-equipped to help: problem definition, taste-setting and scale and infrastructure.

Problem Definition

One of the hardest parts of product development is figuring out what exactly you’re trying to build, or what exact problems you’re trying to solve and doing so in a way that propels your business forward. If you take users’ feedback at face value, you might build something they don’t actually need.

But if you listen to the challenges that undergird their complaints, you’re much more likely to create a step-change in the market with something people didn’t even realize they needed but were clearly craving. It’s consuming, but critical, to think about how these products build on top of each other in a valuable way.

This requires two things: critical thinking and opinions.

There is no perfect science of user research and feedback that reveals the perfect answer. If that were the case, AI would be good for gathering insights into competitors, differentiators and the like.

The magic of building good products is having opinions and ideas about what you’re working toward that solve the needs of customers today and in the future. There are many different dynamics at play, making it hard to throw the necessary context at a large language model that gives developers the insights needed.

It’s hard, maybe borderline impossible, to get an AI agent to define that future-looking vision for you. What it can do is take inputs to help flush out and reveal trends, problems, etc.

But it’s the human developer that needs to make the judgment calls that define and strengthen product development.

Taste and Differentiation

There’s a reason almost every single application on the market today has a peer or rival: People have different tastes, and they want a product that reflects their tastes and opinions. Linear has a very different approach to project management from say, Asana or Jira.

One of the surest ways to build a successful product involves coming to the table with a new take on how a problem should be solved, and a real felt, empathetic sense of a human being’s experience using a given product or application.

The key piece is taste and differentiation — opinions about what you’re building and what makes it unique. What LLMs have been trained on and the information available is not always future-looking, and if you’re using the same models as everyone else you’re not going to get differentiated insights.

While AI might be able to create different iterations based on a series of prompts, humans are still the best delegate to make an opinionated choice on product experience, because they understand what it’s going to feel like to use that product.

Think of it this way: If you and everyone you know is using AI to build their product, your product isn’t going to be different. To stand out in a competitive field, you need to make design and product decisions from a place that distinguishes your product experience from the others on the market.

Scale and Infrastructure

When thinking about how an application will scale or interact with other applications, I find it unlikely that at this point AI will have much to offer.

For effective systems engineering, you have to reason about different systems, how things fit together and understand how to build infrastructure in a way that supports efficient, and effective, scaling. While AI works well building individual features within an existing system, distributed systems engineering requires considering all the different layers of infrastructure and anticipating a number of potential futures.

To understand how an application might scale traffic, you need to understand current usage patterns and think about what they might imply for how people will use the product in the future.

Although AI can be helpful in visualizing or modeling those futures, there’s still a high level of taste, complexity and uncertainty that are best negotiated by people who understand their product and customer on a very deep, human level.

Similar PerspectivesWhy AI Will Never Replace Software Developers

AI Could Become Developers’ Co-Pilot

Inevitably, there will be a shift in how developers define their roles. If we think about a field like quality assurance and testing, both are ripe to be offloaded in large part to AI.

Today, it’s easy to design an AI service that performs every possible permutation of trying to break an application.

This likely means a QA engineer, as we define it today, won’t exist in 10 to 20 years (in fact, many companies are already eliminating this role). But an engineer will still need to review and design the algorithms and commands and make decisions on how to fix the code based on what bugs and problems it finds.

AI will help make developers more productive. Instead of having to spend a great deal of time executing, engineers can devote their time to figuring out what exactly they’re building with AI augmenting and accelerating implementation.

This means we’ll likely see companies shipping products and feature updates at a faster rate, and with AI as a co-pilot overseeing and double-checking their work, that code will likely have fewer errors. We’ll probably see smaller and more agile teams, but instead of putting developers out of work, it’ll actually mean getting to apply the same number of engineers to a larger number of complex tasks. 

The end result for products? More time spent on the kinds of exciting problems that got them into product development to begin with, and more sophisticated, well-designed products for their consumers.