About 5 years ago, when I was doing independent development, I estimated my output capacity to be “equivalent to a team of 4 to 5 people composed of top 10% members.” At that time, I thought this was probably the “physical limit” for independent developers, and I could only try to work magic within these limited resources.
After leaving my previous company, I started extensively using AI in my development process. After two or three months, when I tried to estimate my current production capacity limit, I found that this number had become meaningless:
- First, there is a different order of magnitude in output between engineers who use AI and those who don’t, making comparisons difficult - it’s like comparing Spartan warriors to modern infantry.
- Second, comparing the output capacity of two AI-proficient senior engineers is meaningless because “quantity” is no longer the point. Such production capacity is sufficient to accomplish many things; what matters is “what things” are accomplished.
- Finally, perhaps related to my personality that favors extensive thinking and analysis, my production bottleneck often lies not in implementation but in design and decision-making.
In these few months, I haven’t actually spent much time writing code. I spend less time coding, but the code has improved. AI has eliminated several obstacles: checking documentation, writing basic code, and legacy code migration. These were all my pain points before: grunt work. There’s no challenge to speak of, but you have to do it anyway, and during the process, apart from listening to VTubers, there’s no joy, only consumption of energy and time. Now, most of these tasks can be delegated to AI.
With the freed-up time, I spend more time thinking and experiencing.
Building thinking models is what I consider most important now, and more experiences help make these thinking models more complete. These thinking models aren’t just for helping with decision-making but also for helping with cognition. I believe the process from cognition to decision-making is currently the most energy-consuming thing:
- After information has been distorted through multiple transmissions, what is the root truth?
- How to make assumptions based on limited true information?
- With information and assumptions in hand, how to make decisions?
When the brain is no longer occupied by meaningless APIs, programming syntax, and best practices, I believe the next generation of software engineering will focus more on fundamental exploration: experiencing the real world and creating new magic.
I love this era.