The staggering growth of IoT devices, sensors, and higher-level machines — as well as state-of-the-art developments in artificial intelligence, blockchain, and cloud computing — demand ever-increasing innovations in software performance, scalability, and security.
And there will be plenty of jobs to fill. We asked an additional panel of experts about the growth of careers in software engineering and what that means for recent graduates and current job-seekers. (To read part one of our software series, click here.)
Here’s what they had to offer.
Demand for Software Engineers with Networking Experience
George Hurlburt: Networks now permeate the sciences and are used in mainstream areas such as big-data analytics, the Internet of Things (IoT), cyber-physical systems, autonomous systems, some forms of AI, and cybersecurity. There is a need for software engineers who have networking expertise in these areas. That said, there will still be a need for traditional software engineers, programmers, and app developers, who won’t occupy the top tiers of software development but will still fare well.
Medicine, Smart Cities, and Data Mining
Rafael Prikladnicki: I would say that every software-related field will grow in the next several years, especially those involving medicine, smart cities, and data mining. For example, medicine is investing in a lot of technology to support healthcare. So there are many areas for which software will be critical. And this will increase the software engineering professional’s importance.
Prikladnicki, whose main research areas are distributed software development and agile methodologies, is director of the Science and Technology Park at Brazil’s Pontifícia Universidade Católica do Rio Grande do Sul. He is also the coordinator of the university’s distributed-software research group and editor of IEEE Software’s Voice of Evidence department.
Machine Learning and Artificial Intelligence Programs
Murray Cantor: Graduates should make sure they know programming and implementation technologies for machine learning and AI, such as Nvidia’s CUDA parallel-computing platform and API model and the TensorFlow open-source software library for machine intelligence.
Cantor is cofounder and chief technology officer of Aptage—an agile-software-development risk management consultancy. He has developed cutting-edge ideas in software and systems development for more than 35 years. He is also the author of two books: Object-Oriented Project Management with UML and Software Leadership: A Guide to Successful Software Development. He co-authored the article “Steering Software Development Workflow: Lessons from the Internet.”
Microservices and Serverless Technologies Jobs
Eoin Woods: There are two aspects to “software architecture”—the process of how we design architecture for a system and the technologies we use to build systems.
The process of software architecture has been studied since the mid-1990s and I think that the rate of new ideas about how we design, analyze and capture architecture is slowing down a bit. There are still new trends emerging though, like architecture being seen as a flow of decisions, rather than an activity to produce “an architecture,” as illustrated by Eltjo Poort’s Risk and Cost Driven Architecture (RCDA) approach. There are also emerging ideas in how we create architectures that evolve gracefully over time.
When we consider the technologies we use for implementing our architectures, it varies by domain. But in my world of enterprise, digital, and Internet systems, the big technical themes in the next few years are going to be the continued use of microservices, the maturing of container and serverless technologies and the integration of intelligence into everyday commercial systems.
Woods is chief technology officer for Endava, a global technology company that works with some of the world’s leading finance, insurance, telecommunications, media, technology, and retail companies. He authored the article “Software Architecture in a Changing World.” Woods is also the editor of the “Pragmatic Architect” column in IEEE Software.
About Lori Cameron
Lori Cameron is Senior Writer for IEEE Computer Society publications and digital media platforms with over 20 years extensive technical writing experience. She is a part-time English professor and winner of two 2018 LA Press Club Awards. Contact her at firstname.lastname@example.org. Follow her on LinkedIn.