Since when I left my previous job in September of 2025, I took some time in order to explore the whole world of AI coding. The mean drive behind this choice was wanting to know whether the hype that was (and is still) present around these technologies was justified or not. Since I've never been someone who trusts blindly what other people said, I wanted to run my own experiments. After approximately 8 months of using this technology almost daily, here are what I learned from this.
The over-hype is unjustified
I have to admit it. Initially I was not able to understand how other people where getting the results that they were saying to be having. On Twitter you would see people saying they were vibe coding applications in days, while I was struggling to have AI produce code that would run without issues. Then, I questioned myself: "Maybe it's not the tool, rather how I am using it". And so, I started digging deeper. I watched multiple YouTube videos with various tips and tricks, read articles and tried out everything that I would learn to see what would work and what would not.
After multiple trials and errors, I finally got it: I was able to understand how everything worked. I was able to make it work using skills and MCP servers. I tried multiple models, from open-weights ones such as GLM 4.5 and Kimi K2.5 to more mainstream ones such as GPT-5.3-Codex and GPT-5.4.
I understood why people were saying AI is pretty useful. It help you write code fast, very fast. However, I also understood why the over hype was unjustified. The code that AI produces, although it's produced at an extremely high speed, is, most of the times, sub-optimal. AI models tend to generate code that is extremely verbose, allocating multiple variables when one could do the trick, and writing from scratch almost everything rather than using operators built into the language. This more often than not results in code that, if written by someone expert, would be shorter, more performant and easier to understand. This is particularly true for backend code, which I have learnt to not allow the AI to write but, instead, have decided to continue writing by hand.
Knowledge will be even more important
Due to the above finding that AI code is often sub-optimal, I have come to realize that everything that I have studied at university and learned during my past 10+ years as a software developer is more important than ever.
I would honestly be extremely scared to become a software engineer right now, and I am glad that AI didn't exist back in the days. Not because it's not useful, rather because it's very easy to become lazy with it. Why should I learn why my code breaks if I can ask AI to fix it? And why should I spend one day to understand why my code runs slow and how to improve it if GPT can do it in one minute? If you start thinking like this, it's very easy to slip down a hill that will inevitably lead to you not understanding a single thing of the code produced by the AI.
For this reason, I believe that knowledge will be even more important than before. Only people who truly understand why the code produced by an AI is not optimal and how to improve it will actually be able to use such tools to their best. Because it was never about how much code you could produce in one day, or how fast you typed. It was all about the quality of the code, and the quantity of the bugs you were able to fix or avoid being shipped to production.
I truly believe that AI will not only not make software engineers disappear, but will actually make them even more important because they will be the ones that truly understand why something breaks and how to fix it. Because of this, I would suggest everyone that is entering the software engineer space right now to go back to the basis: study how things work. From CPUs to RAMs, from the HTTP protocol to data structure and algorithms. I truly believe all of this will be the things that can help you better use these tools and differentiate yourself from the hoard of people that will say they are "software engineer" because they spent five months to come up with a working app cause they didn't know the technical terms to properly communicate the AI how to fix issues.
The future
Although I am not sure whether these tools will actually improve in the future, I know they can be useful in the current state. I have seen this myself: without them I would not have been able to build some of the projects I had in my backlog and wanted to give them a try. For this reason, I will continue using them whenever I find them useful. I might ask them to generate entire parts of my applications or just tiny bits, based on how delicate I consider the job to be. However, I will continue to do so with a pinch of skepticism to make sure I continue remembering myself that they are not perfect and I should always review what they produce. This not only to make sure my apps are not filled with bugs, but also to make sure I don't allow myself to slip down the hill of whom who have delegated every thoughts to the bots already.