When the return on investment is the highest priority, automating repetitive, predictable tasks is a strategy that has proven inevitable in any industry where it’s possible. If machines or technology can complete a task faster, cheaper, more safely, and more effectively than a human, industry leaders are going to find a way to turf that job to technology. And now, smart machines—ones that depend on code written by humans—are rendering some programming jobs obsolete by out-performing people.
Automation is often the objective for the programming industry: how can we create software that will make everyday tasks of varying complexity easier, faster, or simpler? For example, online scheduling software for medical offices saves $53,000 per year due to a decrease in no-show appointments, eliminating the need for an entire receptionist position for large medical practices. Automated travel booking sites such as Booking.com, Expedia, and Kayak have essentially replaced travel agents. The robots programmed to fulfill your Amazon order have upended the way people shop, making trips to specific stores in the flesh unnecessary.
Currently, creating this time-and-money saving automation requires a corps of programmers to hand-type and hand-test the endless lines of underlying code. Because of the sheer number of people needed for all software development across industries, coding abilities historically have been touted as the must-have skill.
However, automation is impacting the very same programming force that brought it into existence, changing the specific skills in demand moving forward. With exponential advances in machine learning—the process by which computers learn without being explicitly programmed—the future need for a human to hand-type and hand-test endless lines of code is not looking as stable as it once did. Because artificial intelligence can already automate some mundane programming tasks, some predict that “software engineers” will be an obsolete profession as early as 2040.
Whether you’re already a programmer or thinking about becoming one, read on to learn about how automation may ultimately disrupt the programming industry.
On the edge of software development, industry leaders are already starting to contemplate applying advances in machine learning to software programming. For example, the CEO of Github, Chris Wanstrath, sees typing code into a computer as a flawed process and predicts that future coding will be fully automated. In his estimation, using automation rather than people to program millions of lines of code frees human attention to focus on high-level strategy and design.
As an example of this ideal already in action, the CEO of Dev9, Will Iverson, intentionally utilizes automation for a process called “Continuous Development.” In this automation-heavy software production model, a small team of high-level engineers are responsible for writing code, and artificial intelligence is responsible for automated testing and deployment tasks. According to Iverson, replacing lower-level human engineers with automation benefits his bottom line and his clients. Hiring a small team of quality engineers while eliminating the corps of manual testers speeds up the delivery rate of high-quality products while minimizing labor costs.
Of course, the automation of industry won’t be limited to coding and programming. According to the Pew Research Center, experts predict that by 2030 robotics and artificial intelligence will already be a large part of everyday life, especially in healthcare, transportation, logistics, customer service, and home maintenance. The number of displaced workers is hard to predict, however.
Moreover, experts are split about how the integration of AI into all arenas will impact job creation. In AI, Robotics, and the Future of Jobs, the Pew Research Center states that experts agree that the automation made possible by AI will eliminate blue-collar and many white-collar jobs. With that in mind, 48 percent of experts believe that AI will eliminate more jobs than it will create. The remaining 52 percent are hopeful that human creativity will prevail, and new occupations will crop up to replace those lost.
So how are programmers today responding to the prospect of disruption?
For some programmers, the inevitability of automation can be worrisome—and perhaps not unjustifiably. However, machine learning is rapidly improving to the point where machines outperform humans on routine, repetitive tasks such as coding.
Necessary tasks in software engineering that formerly required human judgment and skill (e.g., bug detection) can now be completed by AI with greater accuracy and reliability through algorithms designed to learn from previous examples. Like the example mentioned above of Dev9, once it is proven that a human employee is no longer necessary to complete a job function, businesses can choose to move forward without that employee.
It is no wonder then that when a group of software engineers were asked to identify what worried them about their profession, nearly two-thirds of all respondents agreed artificial intelligence could cause widespread unemployment in the web development industry. Moreover, worrying about being replaced by artificial intelligence outranked all other worries in the study and was perceived as more threatening than having no pension in old age, bad management, or seeing their skills become irrelevant.
Of those who are worried, those who aren’t highly skilled may be the most justified. At the beginning of both the Industrial and Digital Revolutions, there has been a clear pattern that for the labor force—at least in the beginning—prosperity from innovation is most likely to benefit the highest skilled workers. While, eventually, the remainder of the labor force does benefit from innovation. Automation could disproportionately impact anyone at the top once it has planted roots in the programming.
While some programmers express fear of being replaced by automation, others embrace and implement automation as a strategy to manage their work. For example, in an ethically ambiguous situation, one programmer was paid by his employer for 40 hours of work per week using automation to complete his entire weekly workload in just two hours. He did this for 18 months while receiving a full salary.
While the programmer mentioned above didn’t disclose the effect of automation on his work to his employer, other software engineers reported positive consequences upon revealing their use of automation to complete their everyday tasks. Automating mundane work led some programmers to promotions, higher wages, and being placed in teams where their talent and skills were better utilized.
If you’re currently a programmer, how worried should you be? If you’re studying computer science or thinking about learning how to engineer software, should you reconsider?
At this writing (Oct. 2021), machine learning still has a long way to go before it renders the human programmer obsolete. Despite the consensus amongst experts that AI will inevitably displace a large chunk of the labor force, there are still vast opportunities for those with skills in coding, both in and outside tech.
For low-level programmers and coders, one strategy for keeping your prosperity through the waves of change is considering upgrading your skills. Learn new programming languages; commit to continue researching the programming languages you do know; and as you play with technology outside of your job, keep your eyes open for how you can apply what you learn during play to your work. And, perhaps obviously, learn as much as you can about using machine learning to automate processes.
Because AI will inevitably replace mundane, repetitive programming, another place where you can set yourself apart is by developing high-level creativity and emotional intelligence skills. In addition, developing self-awareness, self-management, motivation, empathy, and social skills will improve your capacity to work with others. For example, suppose you strengthen your capabilities to manage your emotions, manage conflict resolution, read and respond to others’ needs. In this case, you can have an advantage as the programming industry requires more teamwork and interpersonal interaction.
Another strategy is to expand upon your current success as a programmer into an even higher-level occupation. For example, if you have the means, the drive, the math skills, and the time, you may want to consider pursuing an advanced degree and becoming a data scientist. Based on the number of jobs available, salary, and overall job satisfaction, data scientists have been ranked in the top two jobs on Glassdoor since 2018. It is even possible to move your skills into this arena through online master’s programs offered by Coursera or through an online degree program (e.g., Johns Hopkins University).
Just like when IBM’s Deep Blue beat chess master Garry Kasparov and Watson beat Ken Jennings on Jeopardy, machine learning eventually will outpace and outperform programmers at their own game. The question is: will individual programmers seek to improve their skills or embrace their obsolescence and move into other fields?
One thing is clear: automation isn’t just threatening to replace blue-collar workers such as manufacturing plant workers and truck drivers. Instead, it’s fundamentally disrupting all industries, and today’s workers should be prepared for this future regardless of their field.