Why AI Still Can’t Build Software
Hands-on technology leader with 10+ years building scalable, mission-critical systems at Goldman Sachs, Brevan Howard and fast-growing fintechs. Expert in cloud-native architectures, distributed data pipelines and high-throughput systems; experienced in migrating legacy platforms and designing AI-enabled services. Proven track record delivering reliable platforms that process millions of transactions daily.
As a developer, in addition to writing code myself, I’ve spent a lot of time watching developers work, and one thing is clear: people and AI don’t code the same way.
How We Think
Good programmers follow a kind of loop:
They figure out what they need to build. Not just “make a login page,” but how it fits with everything else (the big picture), what could break, and what users expect.
They write code to do that task.
They step back and check what their code actually does. Not what they hoped it would do.
They spot the gap between what they wanted and what they got, then fix it.
The key here is that developers can hold multiple versions of reality in their heads. They know what the goal is, what the code currently does, and how the two compare.
Where AI Struggles
AI is great at spitting out code fast. It can read your codebase, add tests, even write logs. But it can’t keep track of what’s really happening.
It’s like a brilliant but forgetful friend. They’ll write code and assume it’s perfect. When tests fail, they guess randomly is the test wrong, the code wrong, or something else? And if things get too messy, they just start over.
That’s the opposite of real programming. Humans pause, think, test, and adjust. They know when to rewrite and when to debug deeper, AI doesn’t.
Will AI Improve Soon?
Tens of billions of pounds are being poured into Startups all trying to solve this problem. So, probably, but not just by making models bigger.
When coding, humans don’t keep everything in their head at once. They zoom in on details, then zoom out to the big picture, and juggle priorities. AI doesn’t do this well. Instead, it:
Misses obvious but unstated things.
Forgets details from earlier.
Makes up fake features or errors.
These aren’t minor issues. To really build software, you need to track what you want, what you have, and what to change. You need to have a mental model of your code as a whole, be able to divide it into smaller parts while connecting the dots between them. AI just isn’t there yet.
So What Now?
AI is still very useful. It’s like a super-fast intern who never gets tired and knows every language. For niche, clear tasks, it’s amazing. For example if you want to write a client for AWS SES to use and send emails in your app, it’s just a matter of seconds to have it.
But for bigger problems: debugging, design, or real problem-solving you’re still in charge. AI can write the code, but you need to make sure it’s correct and actually does the job. I would say, you are the driver and AI is the car. You can use it however you want to speed up and deliver the output much quicker, but at the end of the day, the car can’t drive itself.
The future will likely be humans and AI working together, with humans leading. AI is a strong tool, but it’s still just a tool. You wouldn’t let your text editor design your app, and you shouldn’t let AI either.
At least not yet.