Anticipating changes allows you to adapt to them.
The acceleration of innovation and convergence of technologies create a continuous pressure for companies to reinvent themselves in just-in-time. Consequently, the entire software value-chain will evolve.
This raises the question of the impact on existing jobs.
Before looking for solutions, I am convinced that we have to understand the why and the main trends. From this work, one can identify possible scenarios and prepare for them.
Even though clairvoyance is a real business, our goal here is not to be right about a specific future but to evaluate the probability of scenarios, building a plan to prepare for them.
Quality Engineering is the paradigm constraining the software lifecycle to continuous value delivery. This article covers the main skills that will evolve across the software value-chain.
Follow the QE Unit for more Quality Engineering.
* See this article for an introduction to converging technologies and to access a description of acronyms.
Product Management with more business and experimentation
The activities of product management are already vast ranging from market research, prototyping and sales. More time focused on business and experimentation will improve its value contribution.
The convergence of automation, AI and low-code will provide product managers with easier access to actionable insights on large data sets, the possibility to experiment in self-service, and less workload of writing.
Key Product Management evolution scenarios appear from these trends:
- Less time allocated to manual activities such as data crunching, report building and evaluation of large data sets.
- More emphasis on experimentation, ideas generation, and testing of value and growth hypotheses.
- More time to focus on the business, roadmap prioritization and to interact transversally with the stakeholders.
In that context, there are actions you can take now:
- Invest time to deep dive on your business domain; consume what your CEO, CMO and CPO are consuming, be curious, test, learn continuously.
- Develop transversal skills (Shift-Left & Right) to increase your ratio of interactions with customers and build product increments with low-code.
- Get familiar with AI-assistant understanding what AI is, formalizing a small brief of ideas, and try simple solutions like Chatbot assistants.
Software engineering with more abstraction and composition
Delivering valuable software is more than coding since a long time. But engineers are still wasting a lot of time in bootstrapping, solving integration issues, and costly reworks with delayed feedback loops.
The advent of open APIs, automation and learning systems accelerate the availability of self-service technologies with more intelligence and better abstraction layer (try to deploy Kubernetes alone). And data streaming plus IoT will continue to explode.
These trends will push software engineering in the following directions:
- Technology composition over implementation with more abstraction, self-service and APIs simplifying integration cycles.
- Assisted and more intelligent coding within IDEs, automated bugs and refactoring will accelerate development experience.
- Decentralized and hybrid architecture, evolving from centralized Cloud to hybrid deployment of Cloud & Edge embarking AI.
You can do the following to prepare yourself:
- Improve your software engineering skills with clean architecture, clean code, streaming & data architecture that will always be valuable.
- Add more automation to your development experience (IDEs shortcuts, refactoring, advanced frameworks) – always understanding what is happening behind the scenes.
- Explore low-code, IoT & edge platforms to improve your capacity to compose different technologies in the evolving ecosystem.
Testing & Quality with more transversality and specialization
The positions of testing and quality engineering requires a transversal understanding of the value chain. A functional tester needs to combine business analysis and testing, a Software Developer in Test, engineering & test automation.
Quality Engineering pushes for fast product iterations with a streamline software lifecycle powered by self-service, automation, AI along the chain. The leverage of data will accelerate tasks on the end-to-end flow.
The positions in testing and quality will have more specialization:
- Acceleration of quality deliverables such as test plan, test prioritization, test observability (conference takeaways) with self-service for the teams.
- Native interoperability of Quality platforms along the software lifecycle will enable just-in-time, reactive and intelligent systems.
- Increased complexity of systems under test with IoT, edge, data science, distributed architecture for both manual and automated tests.
You can prepare yourself by keeping a broad perspective and select a focus:
- Invest in understanding the entire software lifecycle by documenting yourself about business, product, engineering, operations.
- Identify a specialization trajectory you would prefer to evolve among the various activities of the life cycle, that could be “Senior Testing Engineer”.
- Practice to be comfortable with self-service, APIs and data analysis as the work will evolve for more composition, judgment and assistants.
Deployment with more focus on accelerating experimentation
Infrastructure as code, CI/CD Pipeline, Terraform – all terms a release or DevOps engineer are using on a daily basis. They have access to superpowers like triggering a whole fleet of cloud services. But not for long.
The advanced automation of such low-layers of infrastructure will leave these roles with more time for their users. Engineering productivity and developer experience will be powered by intelligent automation, value-stream and process mining.
Deployment ecosystems are likely to be composed of:
- Intelligent orchestration of deployment technologies with interoperable abstraction layers, APIs and automation.
- Unified engineering platforms availability to simplify the management, deployment and interfaces for the stakeholders.
- Developer Experience continuous improvement using data-driven automation, AI and observability capabilities.
Such evolutions push to initiate a new cycle with solid foundations:
- Build up solid skills in deployment automation, infrastructure as code and APIs methodologies to ease your shift to advanced platforms.
- Get familiar with value-stream, engineering productivity, developer experience and process mining to grasp the key evolutions trends.
- Start measuring your deployment pipeline on Accelerate and SRE metrics involving your stakeholders, using an observability pipeline.
Operations with more availability and service reliability
The acceleration of software changes create a real pressure for the operations to ensure the stability of services. Overwhelmed with build and run activities, it can be hard to find time for continuous improvement activities.
The cumulative improvements of engineering and deployment domains will alleviate part of operations work. But with an explosion of interconnected services and data, only the convergence of automation, data processing and AI can help.
Operations landscape will suffer structuring evolutions:
- Manual work will progressively disappear like managing servers availability and stability leveraging the deployment evolutions.
- Computing will be distributed, hybrid & intelligent to support augmented omnichannel experiences supported by the explosion of devices.
- Increase visibility of Cloud & Edge services with automated event analysis and remediation leaving more time for improvements.
In that context, operational skills will evolve minimizing routine work:
- Build up infrastructure automation competencies starting by Cloud and infrastructure as code to be comfortable with the change.
- Get familiar with Cloud & Edge advanced monitoring to have an advance in the explosion of IoT, smart devices and other computing resources.
- Make a habit of continuous improvement using data on existing reporting or new ones to construct on your event, alerts and perimeter.
Build your self-development plan, start today & stay curious
You now have a better vision of the possible scenarios by analyzing current positions and associated trends. From there, it remains to build your plan to start preparing for what is coming, from product to operations.
Working on self-development requires planning, starting, and discipline. You can simply initiate a prioritized list of topics you would like to learn and allocate 30 minutes per day.
Taking regular actions out of your comfort zone will help you overcome the first steps. Over-time, you will create a habit that will help you develop more valuable competencies.
Across all jobs, one recurring action point is to get familiar with automation and AI-assistant. Before looking at automating anything, I strongly suggest that you really understand what is happening behind the scene.
We should not fear to be replaced, but see opportunities to be augmented.
Until then, curiosity is your competitive advantage. Start today to learn more about the transversality of the software value-chain to make the difference with Quality Engineering.
Follow the QE Unit for more Quality Engineering, including the free ebook “60 Practices for Quality Engineering”, exclusive community content & weekly update.
Peter H. Diamantis, Steven Kotler, The Future Is Faster Than You Think: How Converging Technologies Are Transforming Business, Industries, and Our Lives. Simon & Schuster.
Mauro F. Guillen, 2030: How Today’s Biggest Trends Will Collide and Reshape the Future of Everything. St. Martin’s Press
Thomas M. Siebel, Digital Transformation: Survive and Thrive in an Era of Mass Extinction. Rosetta Books.
Marco Iansiti, Karim R. Lakhani, Competing in the Age of AI: Strategy and Leadership When Algorithms and Networks Run the World. Harvard Business Review Press.
Jez Humble, Gene Kim, Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations. IT Revolution Press.