If you’re struggling to keep up with what seems like a software ecosystem moving at warp speed, here’s a handy blog post from the folks at O’Reilly: The Topics to Watch in Software Architecture.
It’s a ranking of popular terms included in speaker proposals for the company’s upcoming Software Architecture Conference, and highlights what many folks have been suggesting for years. Namely, that while the specific technologies and trends come and go, the general direction of software architecture remains heading steadily toward “microservices” (No. 1 on the list for 2 years running) and toward the “cloud” (No. 4, up from No. 5). And it remains heading steadily away from—or, to use the list’s terminology, migrating away from—monolithic architectures.
As this happens, you see certain terms skyrocket in popularity in the course of only a year—”serverless,” “mesh,” “Kubernetes,” “agile” and “testing,” to name a few. It seems probable that in the years to come, some of these will grow in popularity and others will fade (“container,” for example, saw a precipitous drop) but the arrow of progress will continue in the same direction toward microservices and toward the cloud and/or cloud-native.
If there’s a takeaway in this (aside from the fact that it’s fun to look at ranked lists), it’s that any given specific technology probably is not the answer to all that ails your IT practice, at least not for long. But general architectural practices and development processes can act as reliable polestars, pointing you in the right direction. How, exactly, you get there is less important than just getting there—the sooner, the better.