Thoughts on Software Development in the AI Era
- #Career
- #Product Development
- #Generative AI
Introduction
Although I gave this post the title “Software Development in the AI Era,” coding agents have become so common around me that it almost feels like there are no development teams left that have not adopted them.
I also started using coding agents seriously in development around the middle of 2025, and I actively use them in omohi, the OSS project I am currently developing.
In this post, I want to write about what I have felt since I started developing with coding agents in practice.
In addition, I want to explain why I believe that, in the AI era, the essence of being a developer shifts from implementation to design and decision-making.
How I Started Using Coding Agents
At first, my use of coding agents was very limited.
For example, I used them for things like mechanically updating large amounts of test code with very explicit instructions, or generating CSV files as test data.
That was because I was still skeptical of coding agents at the time, and I felt they should only be used when kept completely under my control.
Before long, I moved beyond that stage and began using coding agents for feature changes in systems I knew extremely well.
By “knew extremely well,” I mean a level where I could look at the code a coding agent changed and understand all of it.
As a result, my style gradually became one where the AI handled the coding and I focused on review.
Even at that stage, I still gave the coding agent detailed instructions, including the names of the files to edit and a list of related files.
This approach worked well overall, and I could clearly feel that my productivity had improved dramatically.
Once I had that successful experience, I started trusting coding agents more, and next I began working with AI from the feature design phase as well.
More specifically, I started using Plan mode and working with AI by sharing my ideas at about 30% completeness and thinking them through together.
Even when the implementation details are not fully decided, you can determine the design through dialogue with AI.
When I look at the resulting source code, not only does it feel natural, but it is not uncommon to find that it has taken care of things I probably would not have thought of myself.
And recently, to work with AI more efficiently and at a higher level of quality, I have been improving AI-facing documentation and Skills.
Why Software Developers Still Matter
Once coding agents become this capable, the development experience can no longer stay the same as before.
Using coding agents well and improving the development cycle with them will become essential for companies.
I think this trend is even more visible in small, elite startup engineering teams.
In fact, we are entering an era where even non-developers can build web services. At the prototype level, engineers are no longer necessary.
Against that backdrop, I have started hearing software developers wonder whether their jobs might disappear in the near future.
To be honest, when I first tried coding agents myself, my initial impression was, “Humans are unnecessary.”
However, as I continued developing together with coding agents, that impression gradually changed.
Coding is an “interesting” activity for developers. I think many people are in this profession because they like programming.
I also remember how much fun it was at first to simply write programs.
But at some point, I increasingly started to feel that programming was labor.
When you write a lot of code, you realize that you are writing large amounts of very similar processing.
Still, that code is necessary. That is why it has to be written.
And when I am writing code, I feel that my thinking is basically stopped.
More precisely, I am not able to use my mental resources in the direction I want. My attention gets consumed entirely by writing code, and the creative side of human strength, things like ideas and thought, comes to a halt.
Once I started feeling that way, I began to see coding as labor.
Even if you have a good idea in your head, writing the code itself takes an enormous amount of time.
Many times, your passion cools off before the work is completed.
If you change your angle and look at it from the perspective of software engineering, coding is clearly labor.
I came to think that the right future is one where AI does this labor at high speed, allowing humans to focus on software engineering.
In other words, it is a future where we realize correct design and maintainability. For a company, that means being able to extend the product when it needs to be extended, and being able to release what it wants to release.
Developers working in the field know that, obvious as this may sound, there are cases where this cannot be done because of technical factors.
And of course, companies are organizations run by people, so my view is that software engineering within an organization is something only humans can truly take responsibility for.
Closing
The rise of coding agents feels like an enormously impactful event for software developers.
There is no doubt that it will completely transform the development experience we have had until now.
At the same time, I do not think there is any need to be pessimistic.
What matters is whether you can benefit from the extra time available for software engineering and from the ability to turn ideas into reality at high speed.
On the other hand, I also feel that falling behind this shift toward coding agents will make things quite difficult from here on.
Right now, these remarkable coding agents are available for only a few dozen dollars per month.
I do not know whether this trend will continue forever, so I think it is important to make the most of them while we still can and to acquire the value of this new kind of engineering as early as possible.
I have come to feel that, in the AI era, the essence of being a developer is not implementation but design and decision-making.
And in order to keep up with this speed, I also feel it is important to preserve the decision-making process itself.
Because of this background, I am developing omohi, a CLI whose purpose is to avoid losing the process of thinking.
Precisely because we are entering an era of making decisions at high speed together with AI, I believe it is important to record that process itself and preserve it in a reusable form.