As good jobs are becoming scarce, one "profession" (if one could call it that) that has stood out is software development. Once the solace of autistic nerds with personal computers, it has been infiltrated by those who used to mock, bully, and shove them in lockers. Months-long boot camps promising six-figure salaries upon graduating, seems a lot better than going to community college or working at McDonalds.
The underlying fallacy is that the world needs more software developers. The call for an increase in H1-B visas in the USA is remarkably similar to the command economy of the Soviet Union, where gross mis-allocations of resources occurred regularly. Software tends to have an inverse economy of scale. Producing lots of software is extremely wasteful and error prone, while less is sublime. Common knowledge states that bad software provides job security for its authors, so there is even a disincentive to produce quality work. One only needs to look at the horror show that is enterprise software to realize that it's just a bunch of grunts munging data from one obsolete or obscure format to another.
Automation looks like the top one percent doing the work of the bottom ninety-nine percent. A master programmer isn't going to do grunt work much faster than a grunt, he's going to automate the work so that it won't have to be done by a human. The current tech capital of the world, Silicon Valley, has this completely backwards. They are focused on extracting value from human capital, peons who do their laundry, deliver food, drive them around, and other menial jobs. This effectively creates an underclass of menial service providers who serve the autistic Silicon Valley elite.
Most software developers relish in the thought that that their jobs are secure from automation, when in fact, their responsibility is to automate work. The nature of software development defined by rigid frameworks lends itself to automation, but always shys away from full automation. Most software developers get by configuring frameworks to do what business demands, they are framework configurators. Hardly any original thought involved. I posit that their livelihoods could in fact be displaced by automation.
A thought experiment: the world would be better off with less software, not more. Less software means less bug-ridden code full of security exploits, more generalized solutions rather than one-offs, and no more enterprise monstrosities tha span millions of lines of code. It would also necessarily mean less software development jobs, but the overall quality of employment would be higher.