There are several possible ways to predict how the role of a software developer will evolve in 2019. It can help to extrapolate from past changes to anticipate software development trends or take a guess at a new technology that will upend widespread practices.
The time elapsed from code development to release keeps shrinking, and the industry continues to solicit generalists who know the full stack. At the same time, the stack itself continues to change. Two decades ago, it seemed reasonable for a developer to be only a C++ or SQL programmer. There were even COBOL programmers who spent their entire career developing code in one language. Today, programmers need to know the front end, back end and Version control. The front-end libraries change constantly, and the back end is in the midst of a transition from monoliths to microservices.
In addition to expanding beyond a specialized development area, it also helps to have at least one specialty skill, such as DevOps collaboration and the automated pipelines that enable it, working with big data, writing test tooling or automation, or programming for blockchain applications. Full-stack programmers who also have that extra feather in their cap will be in demand.
The problem with this skills-based trend, of course, is that many employers' description of the role of a software developer is of a specialist that the organization needs at a given point in time to solve a specific problem. They have deadlines and projects to run, and cross-training is an afterthought typically. Twenty years after the first books on Extreme Programming came out, some organizations still consider it odd to cross-train by radical pairing.
So, what does the technology adoption curve tell us about software development trends? Plenty of people will not see the need for full-stack developers, nor for an emerging area specialty. In 2019, there will still be programmers who only know how to use antiquated technologies, and some of them will do just fine. We will also see the role of a software developer divided into a programming underclass and the advanced people who make twice as much as traditional developers and can work anywhere they want.
To join the developer upper-class, make an investment in these new methodologies, along with, ideally, a little cross-training. Never stop learning.
Matthew Heusser is managing director and principal consultant at Excelon Development.