| The problem can be addressed by removing the "employee mindset" from potential programmers. If you do it for the money, well, you will neither get very good, nor will you enjoy the money, assuming you become good enough to get any. Companies that have rubbish HR practices eventually lose out to firms that appreciate that the Japanese hiring system: hire someone who has shown excellence in any field, and they are bound to repeat it. Simply fishing for talent in existing companies is a failed and flawed strategy. Yes, you will end up with a senior developer doing 5 juniors' work, for less than half of their pay--until another firm offers him more money and he leaves, leaving you out in the open again. By contrast, hiring a junior and teaching them the ropes on condition of their not leaving for n years is a better and an all around win strategy. Another word: I have seen most CS program curriculums and with certain exceptions, most are not teaching what would make them marketable employees. For instance, SICP should be a must in any CS program, but in some, it is not. How can they afford not to teach from the best CS text in the world? You get a developer with a resume. And a degree. Big deal. How about one with a remarkable portfolio of projects demonstrating real understanding and passion? I doubt if a company would bin the resumes of someone with interesting projects to their credit. Simply a degree with a few nominal github repos is not going to cut it. |
This is very true and a nice way of explaining it. Also the people who got hired 5-10 years ago with no college degree are the ones who taught themselves PHP in high school and built sites with it. Then they taught themselves Java/Ruby/Python/Javascript etc. Most coders like that think "I want to learn coding to built X" and they go ahead and do that, employers can see that kind of initiative and drive.
Which is a very different mindset from "I want to pay $X amount to get trained to be a web dev because I want a job as a web dev".