Top Tech Trends to Watch in 2018
This is an exciting time for building and delivering software products. The industry has seen a groundswell of changes over the past five years and is poised to bring still more changes in 2018.
These changes are making software development, delivery, and use far different from how they were a few years ago. Product developers today have to race as fast as they can to keep up with changes in languages, libraries, and coding standards, and new roles such as DevOps engineer are providing new and vital career opportunities.
The good news is that these past trends are enabling software product teams to reduce product delays and deliver quality software faster and more frequently. The bad news is that doing so requires thinking about very different ways of designing, building and delivering software.
Looking into 2018, here are some trends that will continue to upset the business and technology of commercial software:
- AI and machine learning will be all around us. Today, it is fairly commonplace in e-commerce applications and financial trading. But thanks to breakthroughs in performance and learning algorithms, AI will move more aggressively into IoT, health care, education, and even management. Thanks to AI, our world incorporate analysis and decision-making by machines in every field.
- Blockchain will change how we record transactions digitally. Today, we know blockchain as the driving force behind bitcoin, but it is actually a general-purpose register with built-in security and reliability. Hospitals, financial institutions, and governments are looking at blockchain as a better way of keeping records intact and safe.
- DevOps is just starting to get off the ground. Those who have moved to adopt it are still struggling with selecting a cloud provider with the right services and getting the DevOps toolchain working efficiently. These are complex continuous integration/continuous delivery problems, and require technical skills in architecting applications, writing scripts, and orchestrating workflows.
- The Internet of Things (IoT), as large as it is right now, is just getting started. In 2018, we will see automobiles, manufacturing systems, inventory systems, connecting to servers in the cloud, and eventually to each other. Standards such as the Distributed Data Services (DDS) will make interconnections fast, reliable, and seamless.
- And speaking of cloud,serverless computing in the cloud is going to change how software is developed. Cloud computing involves complex distributed applications and services. In short, development teams deliver code to the cloud provider, and the cloud provider dynamically manages the underlying platform and resources, essentially hiding that chore from the team. And serverless computing adds the support layers that will require teams to only deliver working software for those layers.
- Cybersecurity gets renewed emphasis. Thanks to massive data breaches in the last two years involving personal and financial data, there will be a renewed emphasis on building and maintaining secure systems. Development teams will be intimately involved with applications after deployment, both to fix emerging security holes and to ensure that software libraries and other support components remain secure.
- Continuous testing will shake up testing practices. Continuous testing lets testers perform both exploratory and automated tests within the flow of continuous integration and continuous deployment environments. Specifically, it enables some form of testing to occur whenever integration is completed, rather than waiting until the entire product is up to date. By putting testing on the same cadence as development and deployment, products will be more fully tested, and testing resources more fully utilized.
- Big Data analytics will be widely used in every scenario where data is available. Big Data has always existed, but now we have the ability to store and process it. This capability is revolutionizing how we analyze problems and make decisions in all domains. By looking deeper into data, we can better understand the problem and how to address it. Big Data is being used in many fields today, but so far we have only scratched the surface on what it can deliver.
In this year of drastic changes, there are many opportunities to build new and different kinds of software, in different ways, and using different delivery practices. Software always becomes more complex, yet we find ways to abstract from the complexity to build high quality working software. For those in the business of building commercial software products, the options available are many. The technologies may be confusing, but there is a development and a delivery model to meet every product requirement.