The "Test Engineer" of the "Future"
Ok so we'll start this blog with a disclaimer, its written to provoke reflection on the current skillset and practices used within your team, hopefully for a positive outcome. Whether you consider yourself to be a Tester, QA professional or some other role within software delivery we hope you read this article and reflect on what it may mean to you or your company going forward.
"Test Engineer" is as a label for a role title that most people are familiar with, others apply you could also read that as Tester or QA Engineer etc...
"Future" is a bit tongue in cheek as we believe the future in the context of this blog is very much already here.
To dive into the content of this blog post proper, we wanted to summarise our thoughts on the role that a Test Engineer plays with in a software delivery team, with particular focus on high performing software delivery teams (teams that can develop and release changes to production several times a day, should they choose).
Assuming this is the state that all teams delivering software want to achieve (if not already there) the Test Engineer plays an absolutely crucial role. To deliver high quality software at this frequency, the team needs feedback on the quality of an application ASAP. The shorter the feedback loop, the quicker the team can be confident in promoting to the next environment, all the way up to production. And typically the key role within a team that enables this feedback is - yeah, you guessed it, its the Test Engineer (or whatever job title they happen to have in your context).
From experience we know that many teams who aspire to become a high performing team (and why wouldn't you want to master your craft..) consider this to be some mythical utopia to be achieved after a several year, multi-million pound "transformation" programme. We think this contributes to creating an air of "futurism" to the practices and thus the skills and knowledge needed to implement them.
Whatever tech stack or build, deploy and test practices you are currently using, you can make incremental improvements to help on your journey towards becoming a high performing team, and we've summarised the skills we think are needed to help get there below.
Skills of "Test Engineer of the future"
So what skills does the Test Engineer of the "future" need to build fast feedback cycles into software delivery efforts - in no particular order....
1. Application Knowledge (functional)
"Testers" have always needed to have a deep understanding of how an application delivers benefit to a customer through the functionality built.
2. Architecture and Software Design knowledge
In order to build fast feedback loops into your software delivery pipeline, testers need to understand the architecture (both infrastructure and software) that's under test. This will allow testers to understand the potential risks, and identify the best "testable" interfaces to use to execute tests against, of course using the test pyramid as a principle to underpin this!
3. Code Build and Deployment
To enable fast feedback testers will need to understand how to integrate tests into the software (and maybe infrastructure) build and deployment pipelines, effectively automating the execution of the automated tests - cool right!
4. How to build quality Testware
A Test Engineer of the "future" is also a builder of Testware. Whether the Testware be in the form of written manual test scenario's, or the creation and use of automated test tooling, Test Engineers construct and build the right things to make sure the fastest possible feedback on application quality is getting to the team!
There's no getting away from it, acquiring the skills to be an effective Test Engineer within a high performing software delivery team is tough, and a huge shift for many who have been in the role for many years. We'd go as far to say that these skills are a mandatory part of a high performing software delivery team.
Once you get there the results are absolutely worth it. You'll deliver higher quality software faster, helping you meet the needs of your customers and business!
If you need help getting started on your journey to delivery higher quality software faster, contact firstname.lastname@example.org, or book a free consultation with us through the link on the homepage of our website - https://www.loupetestware.com/
Thanks for reading!