Get the guide to build your first AI agent directly in your inbox with a newsletter signup:
In the early days of AI, back when we didn’t have these tools like Cursor, Claude Code, or Codex, I remember that I was copy-pasting code into a web-based chat interface and getting the code snippets to use in my editor.
Back in the time I didn’t know how much we could trust AI or not. So I remember that this was making me faster at generating code. But the actual shipping to production was getting slower because I had to iterate more in code reviews.
Now we have much better models, bigger context windows, but still… The biggest improvement was not about the tool. It was about the system that I built around generating and shipping code with AI.
In this article, I want to cover the difference between tools and systems and why we have to focus on the second.
👉 If this sounds interesting, subscribe now. 22,000+ engineers are already becoming more productive. Paid subscribers have access to premium resources
1. Find the bottleneck in your AI software development workflow
There is a reason why AI has taken over the software engineering world, and there are many other jobs that are still doing things the same way.
We, software engineers, already have a very clear step-by-step life cycle for generating software.
You start by clarifying with the customer what they actually want and putting it on paper in the form of requirements. Then you do a bit of a technical design, investigating how to actually fulfill these requirements and what consequences each of the alternatives will have. Then you write the code, review it with peers if you work in a team, write tests that make sure you don’t regress and break any requirements, and finally put it into production so customers can use it.
This was already there before AI, and now we have a clear roadmap, so we just need to use AI in each of these phases to improve it.



