We do see performance engineering is changing before our eyes – but many practitioners in that field still wonder where it will end up and what skills are needed to keep up with the changes. In this presentation we will do an empirical analysis of current trends and how they may impact the future of the field. We will analyze how cloud computing, agile development, DevOps, platform engineering, SRE, and other industry trends impact performance engineering – and what adjustments may be needed to fully integrate performance engineering into modern IT processes.
We will analyze how industry trends impact performance engineering and what adjustments may be needed to performance engineering processes as well as new what skills and approaches performance engineers need. The two largest trends we see in the industry is cloud computing and agile development (as well as its impact on operations: DevOps/Platform Engineering/SRE).
Cloud computing revive the skills that may be tracked back 50+ years ago – performance analysis and capacity planning. Still there are significant changes to these skills – performance analysis requires deeper analysis of technological stacks (which have much more variety nowadays than mainframe stacks of the past) and capacity planning requires more financial insights (as, for example, in FinOps).
While most skills of traditional performance testing is still valid today, agile development introduced new requirements that in its ultimate form results in continuous performance engineering. Of course, very few companies got that far – but the writing is on the wall.
Agile development is drastically changing performance testing. Even in more traditional places it allows to do performance testing earlier in the lifecycle – which often do require more technical skills. The need in performance testers which just run test is diminishing. But in more technologically advance companies we see that it is moving towards continuous performance testing / engineering, where it becomes an integral part of the development / release process. While it still uses all the skills that were needed before – it requires a new set of skills, techniques, and tools. It goes well beyond integration with other Continuous Integration / DevOps tools. It is not “all or nothing”, adapting even some elements may significantly improve performance engineering process.