What happens to software given AI?
If you wanted the future to be easy to predict, you shouldn’t have thrown a stochastic alien technology that can potentially replace humans in the mix.
Is SaaS going to disappear? Or is it going to be everywhere?
Are software engineers going to be replaced by AI? Is serious software still going to need software engineers?
What does the future hold for us?
What the future holds
Literally.. Nobody .. Knows!!
We humans love us some certainty. We want the future to be predictable and consistent, we want our heuristics about things to keep working, it staves off anxiety, you know? Well, it won’t.
If you wanted the future to be easy to predict, you shouldn’t have thrown a stochastic alien technology that can potentially replace humans in the mix. “Not replacing humans” is a HUGE prior to reconsider.
What’s funny is that we humans pretend that we can predict the future all the time, despite our lousy track record. In fact, Economics is, to a large extent, humanity’s most official tool for predicting “how would humans behave in this complex system?”
You seeing a lot of accurate forecasts about AI coming out of economists? I’m not. In fact, we seem to be lost even in the “what the hell is going on?” part.
This is agile software development methodology taken to the extreme of social impact. The Lean Startup cycle of build, measure, learn, except applied to humanity with the hope of an easy (or at least viable) rollback button.
We don’t have a strategy. We’re not trying to get “somewhere” clear. Humanity doesn’t have the capabilities to know where all these changes will lead us, or even the institutions to steer us. We’re following our nose, and we’ll land where we land.
I don’t even need to summon Tetlock’s studies on forecasting (and our dismal record) for this one, because what happens with humanity and AI is like multiplying Tetlock with the 3 body problem.
Did I convince you that you should ignore all those LinkedIn influencers (and ads) you’re getting about what the future of AI holds? Good.
Because guess what? Now we're gonna spend a bunch of time talking about what I think the future of AI holds!
Build vs Buy
SaaS completely changed the build vs buy calculus with the advent of the internet and cloud computing. Software could always be built once and sold to many (think WinRar), but cloud computing enabled maintainability and customization (and DRM, think WinRar) that allowed us a level of scale hard to find in desktop software aside from MS Office.
Build vs Buy is about to go through an enormous change with AI. Before AI, building was way more expensive than buying. Now it’s not.
This is not only because AI makes building software cheaper, though it does.
But the company that’s selling SaaS has to write software for all of their customers’ needs, whereas the company that’s building only has a single customer to serve: themselves.
If you’ve ever built SaaS software, you’ll know there are orders of magnitude difference in difficulty between building software for 1 customer vs 1,000 customers vs 1,000,000 customers. 1 customer is easy mode.
The competition for B2B SaaS is not necessarily all the new incumbents copying their product, though it’s that too. The biggest risk is customers building their own much simpler solution for a fraction of the cost of a “real” product.
In short, the AI evolution is the evolution of personalization. Everyone, but especially companies, now get to have EXACTLY what they want — for cheap.
Customization is also a huge plus for building. Customizable products are very hard to build and maintain, but a company building in-house can just build something exactly matching their needs.
With SaaS, the top software engineers moved away from in-house and into the SaaS companies to build high-scale software for everybody. Now, a good amount of software will be built directly at the companies using them again.
But will it be built by software engineers?
Engineering and leaky abstractions
Software is magic the same way that airplanes flying is magic: in the Arthur C. Clarke way.
While for us users it’s easy to pretend that you just press a button and everything works, the reality is that there’s real engineering behind a LOT of moving pieces working in harmony.
When you’re no longer a user but a builder, suddenly you have a new job: ensuring those moving pieces work in harmony.
That engineering work still needs to be done, whether by an AI, by a person, or a combination of the two. The pieces don’t care whether they are misplaced or not — and they will break if they are.
AI makes software engineering more accessible, so many of us who weren’t trained as software engineers can now build software with AI’s assistance (or is it the other way around?) But the software still gotta be engineered somehow.
AI is a strong software engineer now, and will continue to get stronger and make software engineering more accessible.
But the pieces, those damn pieces, they’ll still be there. That’s what in software engineering we call leaky abstractions.
Leaky abstractions happen when a lower level primitive breaks the abstraction above it, like your vibecoded software that keeps bringing up details about its actual code even though you never wanted to care about it.
Leaky abstractions are inevitable in software engineering and happen at all layers of software:
- Your AI program raises an issue with the code
- Your code raises an issue with an open source library
- Your open source library raises an issue with the standard library
- The standard library raises an issue with a C extension
- The C extension raises an issue with a kernel extension
- The kernel extension raises an issue with the Operating System
- The Operating System raises an issue with your memory error correction
In software development, it’s turtles all the way down. You don’t need to know about the turtle on top of which your world is running, but it sure as hell helps.
And this is true no matter what slice of software you’re looking at: Kubernetes, Databases, Lambda functions. Turtles, turtles, and more turtles.
Leaky abstractions get plugged but never go away. The ruby developer that doesn’t know how their open source libraries are implemented still gets work done, but the one that finds and fixes bugs in their open source library is more competent in their work.
In the end, software engineering won’t go away because software still needs to be engineered, even if by AI. And competence will vary because different humans (and different AIs which will have different costs) will have different levels of competence dealing with this new leaky abstraction of AI-built software.
So software will still be built by “software engineers” — not necessarily in the sense that they know how to write programs like we do today, but in the sense that they are the ones working with AI to engineer the software.
Even if knowledge about all the software abstractions becomes unnecessary because AI handles them, operating AI effectively (gets results) and efficiently (cost) would itself require significant competence. I don’t think there’s a world where AI is both incredibly powerful, easy to use by a layperson, and cheap, with no differentiation between users no matter their levels of competence — in software or otherwise.
So that’s who I think will be building the future software: the “software engineers” who are really competent at effectively and efficiently using AI to engineer the new software in such a way that they can manage its leaky abstractions.
So, does that mean that AI is coming to disrupt both the current SaaS model and the Software Engineers building them? Does it spell doom to all of our own current ways? Not so.
The Home Team, current SaaS and Software Engineers, still have many advantages — if only they just adjust their gameplan.
Home Team SaaS advantage
SaaS companies have more competition from in-house built software, and software engineers have more competition from subject matter experts in other areas now building software with AI.
But the crowd is on our side, and the Home Team has many advantages.
SaaS is not just about software: it’s about data and network effects. “Data is the new oil” is not just a critical factor for the current AI revolution — it’s a critical factor of industry competence, and leveraging it is now more accessible than ever.
So yes, the company-built software is easier to build and custom made, but it won’t have any data or network effect advantages by design.
Yet, more and more data and network effects will be real differentiators. Collaboration and learning are critical aspects of iterative design, and all else being equal, the software with less collaboration and learning will be inferior.
AI makes data analysis and data science more accessible than ever before, which means it’s cheaper than ever to actually use your data.
The old joke was “We have no idea if our Data Analysts are adding to the bottom line — let’s hire a Data Analyst to look into it.” — but now, a single Data Analyst or Scientist with AI’s help can do much, much, more with your data.
A similar advantage comes from network effects: The move from Desktop to SaaS brought not only maintainability and scale, but the ability for people and software to collaborate in an unprecedented scale.
Some software just inherently needs network effects, such as two-way marketplaces or social software, but virtually all competencies can benefit from easily tapping extra expertise, and this increases exponentially with network effects.
So yes, you can build your own blog platform, or your own email platform, your own storage management software, even your own task management software: it’ll be cheaper to build and custom made to your needs, but it’ll never have the data and network effect advantages of a SaaS competitor.
And the software engineers of today are in a perfect position to be the best in the world at building all of this — whether the software lives in-house or as a SaaS with a moat.
Home Team Software Engineer advantage
Nobody is keeping up with AI. The innovations in the field are evolving at an inhuman pace.
Besides, AI has been evolving for several years now, and going through all the abstractions (those damn turtles again, AI IS SOFTWARE after all) means learning not only agentic software, but harnesses, then inference life-cycle, then context windows and tokenization, then models, then transformers, then linear algebra.. turtles, turtles, and more turtles.
Everybody is behind on current developments, the missing foundations will take extra years to learn, and the horizon moves faster than we do. We’re off in the past, the present, and the future.
Well, guess who has a HUGE head-start in this chaotically changing world of AI? That’s right: Software Engineers.
The majority of the people using agentic software development today are software engineers — they were just there first. They were writing code using Copilot back when the typical user was using ChatGPT to write poetry about tax returns.
The AI race is unfair, and it unfairly favors software engineers. They were given a head-start in a race where everyone is just struggling to keep up and virtually nobody is actually catching up.
And it’s the software engineer’s race to lose: everyone needs to learn and adapt in this new world in order to be extremely competent at engineering software using AI, and other SMEs will catch up if the engineers let them. So they gotta keep moving.
Personal competence will continue to be a huge differentiator as AI gains capabilities — even more so in the future than it is today. Whoever is best at wielding AI will be best at the work. The gap between AI usage floor and ceiling will keep increasing, not flatten.
What I'm doing about it
I’m a software engineer, and I’ve been working on SaaS for 2 decades. I’m playing for the Home Team, and I’m not playing defense.
The most important lesson here is that the whole game has changed. Having been a player before gives me a head-start, but the champions will be the ones who are really good at this new game — no matter what they did before.
Here's what I'm doing with my Home advantage:
Studying AI every single day by building and experimenting. I can’t rest on my previous experience, and neither can anybody else. We need to learn.
Building foundations. I studied math for AI when I figured I didn’t understand how Large Language Models work. I studied CNN and Transformers. I studied open source code using AI in production. I’m digging for more turtles.
Focusing on the boat, not the wind. I don’t know what’s really gonna happen to SaaS, or software engineers, or engineering leaders, or anything. With AI, I’m building the person for the path, not the path for the person.
None of this guarantees anything. The head-start only counts if you keep running, and there are a lot of people running hard.
But I opened this piece saying nobody knows what happens to software given AI, and I still mean it. I don’t know if SaaS disappears or eats the world. I don’t know if software engineers thrive or get replaced. I don’t know.
What I do know is that the people best positioned to find out are the ones already in the game, already building, already learning. So that’s where I’ll be.