New Junior Developers Can’t Actually Code.
-
Holy shit just like an LLM
-
I work at a software development school, and ChatGPT does a lot of damage here too. We try to teach that using it as a tool to help learning is different from using it as a "full project code generator", but the speed advantages it provides makes it irresistible from many students' perspective. I've lost many students last year because they couldn't pass a simple code exam (think FizzBuzz difficulty level) because they had no access to internet, and had to code in Emacs. We also can't block access to it because it starts an endless game where they always find a way to access it.
-
As someone who has interviewed candidates for developer jobs for over a decade: this sounds like “in my day everything was better”.
Yes, there are plenty of candidates who can’t explain the piece of code they copied from Copilot. But guess what? A few years ago there were plenty of candidates who couldn’t explain the code they copied from StackOverflow. And before that, there were those who failed at the basic programming test we gave them.
We don’t hire those people. We hire the ones who use the tools at their disposal and also show they understand what they’re doing. The tools change, the requirements do not.
-
Even before LLMs I saw junior developers w/o parent supervision do things which were so wrong, anybody self taught with just a few weeks of experience wouldn't do them. LLMs made all of this so much worse, and by now I see people with senior titles which I wouldn't hire as student assistants, which are unable to pull of a fucking CRUD service w/o totally blowing it.
By now, I am convinced it is a race to the bottom. Most software companies don't understand shit about software development. The whole corporate system is strongly incentivized for churning out lots of trivial code (SCRUM, MicroServices, etc.) and most people in the system profit:
- Your manager? More juniors and more code means higher headcount e.g. more importance/power for the manager
- Your company? Higher headcount for projects and so called architects means more billable hours
- Juniors which couldn't code if their life depended on it? Nice relaxed jobs for the intellectual lazy with mostly above average working conditions
- Overall for companies: Juniors are easy to replace/fire and control, another win for them.
- Hiring all the time juniors is actually one of the signs for startups, that they are making progress/growing, which will be part of their evaluation
- Don't get me started on SCRUM and just creating tickets, so that tickets can be processed and we get traction/our burn down chart shows progress.
It goes on and on.
Worst thing is, having a small team of really good developers is actually BAD for companies/managers/start ups. A lot of times governments/big companies will not deal with small companies, because they might be out of business soon etc.
I would be very happy for hints/tips of companies which have hard problems, appreciate seniors/good technical knowledge and pay decently.
-
Damn, I forgot about the teaching aspect of programming. Must be hard. I can't blame students for taking shortcuts when they're almost assuredly swamped with other classwork and sleep-deprived, but still. This is where my defeatist comment comes in, because I genuinely think LLMs are here to stay. Like autocomplete, but dumber. Just gotta have students recognize when ChatGPT hallucinates solutions, I guess.
-
All the devs I know use SO…
-
Not that this is very unique to the field, junior anything usually needs at least 6 months to get to a productive level.
-
Forced to use copilot? Wtf?
I would quit, immediately.
-
Sounds nice? What type of place you work at? I'm guess not a big corp
-
I think that LLMs just made it easier for people who want to know but not learn to know. Reading all those posts all over the internet required you to understand what you pasted together if you wanted it to work (not always but the barr was higher). With ChatGPT, you can just throw errors at it until you have the code you want.
While the requirements never changed, the tools sure did and they made it a lot easier to not understand.
-
Software engineering is more accessible than ever
This is key here. Having it more accessible, we see more people who do not want to learn but still trying to code. But we also see more people are want to learn and create solutions.
-
ChatGPT is perfect for learning Delphi.
-
Maybe if people were paid more it wouldn't be such an issue.
-
Make the junior put it to the test John Henry style. You code something while they use gpt and see who comes up with a working version first
-
i always found this to be upsetting as an IT tech at a former company - when a network or server had an issue and i was sent to resolve it, it was a "just reboot it" fix, which never kept the problem from recurring and bringing the server down at 07:00 the next Monday.
the limitations on the questions i could ask hurt that SLA more than any network switch's memory leak ever did, and i felt as if my expertise meant nothing as a result.
-
Of course they don't. Hiring junior devs for their hard skills is a dumb proposition. Hire for their soft skills, intellectual curiosity, and willingness to work hard and learn. There is no substitute for good training and experience.
-
Kind of wish we went with more tradesmen-like titles. Apprentice, journeyman, master. Master software developer sounds like we have honed our craft. Junior/senior just seems like a length of time.
-
I could barely code when I landed my job and now I’m a senior dev. It’s saying a plumber’s apprentice can’t plumb - you learn on the job.
-
It generally is a length of time. Your title depends on the years on the job.
-
The problem is not only the coding but the thinking. The AI revolution will give birth to a lot more people without critical thinking and problem solving capabilities.