Yes, yes, yes, and yes.
Pretty confident that the lack of in-house training has been mostly facilitated by that highly skilled computer people tend to take care of that on their own accord (since that’s how most got there in the first place).
Yes, yes, yes, and yes.
Pretty confident that the lack of in-house training has been mostly facilitated by that highly skilled computer people tend to take care of that on their own accord (since that’s how most got there in the first place).
After interviewing several hundreds of people, two surprising things stood out:
- a large percentage of technical applicants cannot program even in languages where they claim multiple years of work experience
- this holds true for non-technical applicants too
I think this is a combination of poor applicants being overrepresented in the applicant pool (good ones get hired), the fact that modern job complexity has grown compared to previous generations, and the desire for people to "hit the ground running".
I don't know what's the solution. Fields that require certification don't seem to be suffering as much, but that has significant side effects too. What I know is the times where people would work for the same company for 30+ year, where they'd get taught what they needed on the job, are not coming back.
Massive lying and resume inflation? Performance anxiety leading to bombing interviews? Maybe the roles they were in didn’t actually require as much programming, or deep understanding of programming as people would expect?
It could just be that a massive amount of work in the software industry is really code monkey work. “Gluing together APIs.” Refactoring existing code. All things that can be accomplished by referring to Stack Overflow copypasta or the existing codebase itself without requiring the coder to have any deep independent understanding of the code or the language they claim to know.
And, if that gets the job done- how high should engineering standards even be if so much of the work is menial? Either able to be outsourced, or one day Autopiloted away?
If the industry shifts needing less developers (for whatever reason), companies will just set higher expectations when hiring meaning a lot of people will not be able to find a job.
But I don't think this happens. Copilot is not going to solve development problems same way stack exchange and google did not. We got google and se and number of developers only grew.
At least in case of software development jobs I think there is couple additional factors:
- people who are absolutely unable to do it but have strong desire to get well paying job regardless. I have actually seen this work. Ie. a person that can't program at all be called a principal developer and for years successfully hide the fact she can't program anything more complex than a simple loop.
- young people who tend to completely mistake what the job is about. They think software development is about coding when it actually is about building stuff and coding is just one tool to do it.
- people overpromoted very quickly (most likely to keep them and or avoid salary raise), having very unrealistic expectations. A lot of candidates I am getting are calling themselves senior developers even though they have 1-3 years of experience and are still learning to program. And have no real world experience beside 1-2 projects they worked for. They could potentially become better developers in future. But they are impatient with their careers and are skipping the part where they should be getting experience.
- people who cod do it but don't care. They don't care about development but are intelligent enough and want good salary. The issue is, people do not learn things well if they don't care about them. Halfhearted effort at learning results in mediocre results. In my lifetime I think I saw only a single good developer who did not care about development but he was such a professional trooper that he forced himself to do it well by sheer power of his will.
As to working for the same company for 30+ years, I got to know some people who worked 20+. They usually don't stay in development job and are getting promoted thus removing themselves from the developer candidate pool.
I also don't think it is healthy for your experience nowadays to stay in one place for so long. I think having varied development experience, seeing different kinds of projects with different kinds of abnormalities, is important to be able to understand what is going on in your project on a larger scale. And this is important if you want to advance to something like tech lead or an architect.