By Eric Picard
As a product person, I am constantly intrigued by emerging technologies and how they shape the future. The true game-changer of our age, possibly in all of history, is Artificial Intelligence (AI). There’s a lot of hype, and when I hear people talk about AI right now, it’s often discussed as if it’s a mature offering. Nothing could be further from the truth, we’re in AI’s earliest stages. But the potential is vast.
I’ve had the great fortune to work with some of the smartest engineers in the world, and in my recent conversations with them I’ve gained some insights into what lies ahead. These engineers, often referred to as 10X engineers (a few are even more than 10X) due to their exceptional productivity, are in awe of what they’re seeing. I’ve collaborated with these engineers in the past, witnessing their ability to tackle complex technical problems, invent new technologies and products, sometimes on a daily basis.
I’ve been hearing remarkable stories from this cohort, some of whom are among the best living engineers. Overwhelmingly I’m hearing that they have experienced an astonishing 100X increase in productivity by utilizing ChatGPT 4 and other open-source Large Language Models. Some have built working prototypes where AI-powered bots with specific skill sets form functional teams. These bots collaborate, architect solutions, and even write code based on detailed business problem prompts. Although some fine-tuning is necessary, the progress is truly remarkable, and is getting better very fast.
Conversational Software Development: A Paradigm Shift
Spending a significant amount of time immersed in ChatGPT and Google’s Bard, I am convinced that we are on the verge of a monumental shift in software development. Conversational software development powered by AI is set to make agile methodologies seem quaint in comparison. This transformation will revolutionize the industry, enabling projects to be completed with far fewer engineers than before.
Before you misunderstand, let me dispel the notion that this reduces the value of engineers. Over the past three decades, there has been a severe shortage of engineering talent. Far from diminishing the need for engineers, AI will exponentially increase the amount of software being written with the same number of engineers. It will propel us into a world where agile sprints and extensive planning will be replaced by direct transitions from concept to functional prototypes.
Picture a scenario reminiscent of the Iron Man movies, where Tony Stark converses with Jarvis, his AI assistant, rapidly manufacturing and discarding prototypes until the desired outcome is achieved. Every prototype becomes a complete product and every line of code will become disposable, allowing AIs to iteratively build new versions with seamlessly integrated upgrades. This fundamentally changes our conceptions of technology development and product lifecycle management. Far from being unnecessary, engineers will become even more valuable, with the smartest among them assuming the role of architects of the AI and the development processes, shaping the infrastructure.
Evolving Roles and New Opportunities
In this transformed landscape, certain roles will take center stage. Product Management will become even more critical, with many engineers transitioning to product-focused positions. Crafting executable prompts that AI models can understand will be a new skill set for product-oriented individuals, who will define what needs to be built.
Collaborating closely with Product Managers, software architects will play a pivotal role. Their expertise will ensure that architectural decisions align with product goals and requirements, providing guidance while engineers focus on implementation.
While the roles of Product Marketing, Sales Enablement, and Marketing Communications will remain crucial, they will need to adapt to the surge of software products flooding the market. Differentiating and creating demand through effective marketing will become even more vital in this highly competitive landscape.
About ten years ago I heard Quentin George (who was at advertising agency holding company IPG at the time) give a presentation where he said something like, “There is a massive overabundance of manufacturing capacity in the world, and too many products are rolled out every year. Most of this output goes to the landfill. The only way to compete in a manufacturing economy with such overabundance of capacity is by using marketing to differentiate and create demand for your product.”
This same set of problems will exist for the first time in software development. When there is not a shortage of engineering capacity, and we 100X the throughput of engineers, we’re going to have a lot more software exploding into the world. Marketing becomes critical in that scenario – in ways it simply wasn’t in the past, because there wasn’t a ton of competition. Consumer software development is about to explode in volume.
The AI revolution is poised to transform software development by exponentially increasing productivity, automating processes, and moving from a long development cycle to a rapid development and iteration cycle. It will be faster to simply write the code and build the product than to design, mockup, write specifications, drive alignment, then go through multiple development sprints. We’ll simply build working products, and if they’re not correct, we’ll throw them out and build better versions.
On Facebook, Randall Rothenberg left this comment:
Eric Picard, smartly explained and makes sense. But it begs a question that you lead up to but don’t pose: If it becomes so much easier to develop and disgorge new fully formed software products, how do companies and societies deal with the vast multiplication of waste? What is the economic cost of planned obsolescence – or, for that matter, competition among products – shrinking from years to days or even minutes? What is the environmental impact of the functional equivalent of “fast fashion” emerging in software?
My reply was:
Randall Rothenberg, I hear you. On the other hand, today we have architectures, and software that are designed the way they are designed because it takes an immense amount of effort to rewrite small pieces of code inside a large monolithic code base. So as a result, things are broken up into very complex groups of micro services.
Now, this architecture may well be the appropriate one going forward. But I am guessing that monolithic code bases, which have gone out of fashion, because they’re so difficult to update, may come back into fashion. This means that code will execute faster, and will be more efficient. It also means that moving from V1 to V2 of a software product may well mean an entirely new code base each time.
Interesting thing about this to me is that processing power for executing applications both in-app and on the server may take less processing power. Reducing the cost of running software.
Also, the removal of “tech debt” will have many positive impacts from a corporate sense. The number of projects that an engineering team can execute on today is fractional because of tech debt.
As far as your concern about more products flooding the world, including more mechanisms to distract us, I understand. But I do think we’re going to enter a phase of very different kinds of applications. For instance, we all will have our own version of Tony Stark’s, Jarvis, or Friday. Personal agents that intelligently respond to our requests, and can go execute on our behalf. Once that happens, many different applications cease to be valuable.
And of course, positive outcome for marketing, in the sense that it becomes much more important to market software products well.