AI Coding Kills the Junior Developer's Safety Net, Not the Junior Developer
I don't know how long it's been since everyone last wrote code. I don't mean describing requirements to AI and having it generate code.
I mean "old-school programming." How long has it been since you seriously used an editor for development? Most of the time, it's probably just been "describing requirements."
AI programming has basically become mainstream in development now, or rather, everyone has gotten used to being "lazy." Most of the time, if AI can do it, they definitely won't write it by hand.
Against this backdrop, is it still necessary to learn the fundamentals?
Do junior programmers still have a reason to exist in this industry?
To be honest, I haven't written code in a long time either.
Most of the time, I'm just describing requirements to AI and letting it generate the code. Because even if I wrote it myself, it wouldn't necessarily be better than what AI produces.
The most crucial thing is that AI writing code is just too effortless. You just need to describe your requirements well, hit Enter, and then you can pick up your phone.
I was surprised to discover one thing: Once a person gets used to being lazy, they can never go back to being diligent.
Before, when the company network went down due to a fault, I just quietly waited for the network to recover; I absolutely would not start writing code manually first.
But before AI programming, I would have started writing first, and then when the network recovered, I'd check the documentation to fill in the uncertain parts, and that would be "job done."
In this context, do you say fundamentals are important?
Actually, they're not important!
Because you're not writing the code yourself at all, so what's the point of fundamentals?
The entire project, except for the architecture you designed, basically has nothing to do with you!
Even the architecture itself might have nothing to do with you. Your job is just a "communication device" for requirements and a "translation machine" for AI.
But are they really not important?
Actually, they are very important!
AI is indeed very powerful now, but sometimes AI falls into a strange loop. (I still haven't found a solution.)
Now, a bug appears. I ask AI to fix it, and it gives me Plan A.
I run it and tell it: Wrong.
Then it gives me Plan B.
I run it and still find: Wrong.
Now it gives me Plan C.
I run it and find it's still wrong.
At this point, AI either starts cycling through these few plans, or it starts talking nonsense.
This is when the importance of fundamentals comes in.
If you have a basic foundation, you can understand most of the code. Although some of the logic AI generates is indeed very convoluted, a step-by-step analysis can basically still solve the problem.
If your fundamentals are poor, then whatever AI says goes, even if it's fooling you.
So: A good sword still depends on who wields it!
The existence of fundamentals means you have basic judgment and control over this part of the code. AI is indeed strong, but it's not strong without boundaries.
If AI were truly strong without boundaries, then the programmer profession would cease to exist!
Having fundamentals actually means you can be the backstop for the entire project. Even if AI disappears tomorrow, you can keep the whole system running without it completely paralyzing.
Moreover, current AI still has many problems with the engineering side of things, especially tuning and covering edge cases.
In the vast majority of cases, the code we have AI output is the simplest way to implement a certain requirement. In other words, it's the fastest path from Point A to Point B.
But the fastest path doesn't mean it's the best path. The environment is ever-changing: extreme network speeds, extreme devices, even extreme IE browsers~
So, the value of senior programmers in a project lies in these things. But no senior programmer is a "castle in the air senior"; they all go from fundamentals to senior.
AI is already strong enough, so can junior programmers still exist in this industry?
Yes!
First, a core question: Who takes the blame when things go wrong?
It can't possibly be AI taking the blame, right?
Do you want Doubao or Claude Code to apologize to you?
So this industry ultimately still needs people. Not just senior, but also mid-level and junior.
But with AI programming developing so powerfully today, junior positions will rapidly shrink.
A considerable portion of junior positions are being replaced by mid-level programmers plus AI, while senior programmers mostly focus on solving the difficult points in a project.
The reduced demand for juniors means the requirements for juniors have increased. It even means that for a fresh graduate, the requirements are directly at a mid-level standard.
Or they require your academic qualifications, your project experience...
If you can do it, come; if not, goodbye!
This is a company, a place to make money!
No one will train you anymore, and no one will accommodate you.
The situation for junior folks has become quite awkward! Working means you have to endure many unreasonable things. Not working means you might not necessarily have a better place to go.
Especially for those of us who graduated from ordinary vocational colleges or second-tier universities.
Cherish what you have while you can. I hope we can all encourage each other!
Top 1 of 2 from juejin.cn, machine-translated. The original thread is authoritative.
Finished reading. By the way, where's the cover image? It's gone. [thinking]
The main thing is, ask and you shall receive.