I have been looking at some of the threats and opportunities which exist for testers, and for organisations who provide testing services. There is no doubt that many organisations are undergoing significant changes which affect the way testing is carried out, and which influence the market for testing services. In this final blog, I will explain a little more about where I see some of the opportunities for those involved in testing.
Specialist fields related to testing include roles devoted to evaluation of some specific quality criteria, notably those which address areas of reputational risk to businesses, or which are concerned with legal or regulatory obligations. There are also roles which require deep understanding of a particular technology, and of course there are domains or industries where specialist knowledge is invaluable.
Some examples of specialist testers might be:
- Security testers who specialise in identifying risks and threats relating to data and information security, unsanctioned access to systems, redirections and other vulnerabilities
- Performance testers who specialise in providing information on how a system performs under different conditions and how this performance might affect the people who use that system
- Accessibility testers who specialise in identifying where products and systems might be considered discriminatory, where they may not be compliant with local regulations and laws, or where they might offer a poor experience for people with disabilities or impairments
- Mobile device testers who have expert knowledge on the market for mobile devices and operating systems, and on the techniques required to identify problems and information relating to mobile applications and websites
- Industry experts, for example in retail, finance, transportation, manufacturing or gaming; people who understand the organisations that operate in these industries, their customers and the ways in which these organisations and customers’ needs might not be met
Each of these specialists may have particular techniques and tactics which they adopt in order to carry out their work, but perhaps the most important attribute for those who specialise is a deep interest in their field, and enthusiasm for their work.
In many specialist fields, there are tools available which can be of great assistance to testers. The market for tools associated with testing has shifted from one dominated by a small number of vendors of expensive proprietary software, to a vast and complex landscape filled with open source products and subscription based services. There are a bewildering array of tools available, and understanding their purpose and benefits is not always a simple task. A clear sense of the problem to be solved, coupled with research, can reveal some inventive and highly effective products.
By way of an example, I was recently involved in setting up a mobile device lab to support testing of websites and mobile applications. The lab included access to devices hosted remotely, but also included a number of physical devices, selected according to the client’s own analytics. Inspection and comparison across these devices could be quite time consuming so we included a product called GhostLab which is used to connect devices over a wireless network and to synchronise browsing across those connected devices. This saved time in navigation and facilitated side-by-side comparison of devices. It is a simple, effective and relatively cheap tool which helps address a particular need.
Specialists will thrive if they are able to couple their technical knowledge and expertise in use of particular tools with a knack for understanding business and customer problems and identifying where those tools can help them.
I certainly don’t believe that testing generalists are any less valuable, or that opportunities will dry up for those who do not specialise. In fact I wrote about some of the benefits of diversification last year in this blog. However, I do see great opportunities for specialists as company reputations and their relationships with customers become ever more dependent on the technology products they provide.
Frequent delivery requires frequent information
Last time, I briefly looked into the well-used terms Digital Transformation and Customer Experience. An understanding of these terms and the way they influence business strategies helps in understanding the desire within many organisations to expedite code deployment. An ability to rapidly deliver products (and improvements to those products) improves the capability to respond to customer feedback, and to changes in the business environment, potentially offering a competitive advantage.
Frequent delivery was directly addressed in the principles behind the Agile Manifesto and as organisations seek to build on these principles (which have transformed the way in which many of them operate), the DevOps movement has arisen and gained momentum.
Practices such as Continuous Integration and Continuous Delivery are, in my experience at least, increasingly viewed as advantageous in helping businesses achieve their goals. To move towards adopting these practices, companies depend on:
- people who take a collaborative approach to development, support and maintenance
- tools and technology which assist those people in their work
but also on:
- frequent, reliable information relating to their products and the mechanisms by which those products are built
In addressing this last point, testing is critical. As Gerald Weinberg explained recently, in a brief but valuable blog post, “the most important aspect of software testing is to provide information about the state of a software product”.
Of course, the extent of that information, and the speed at which it is revealed must be commensurate with the desired speed of delivery, the risks associated with the product and the means available to provide the information.
The need for frequent information creates a demand for testing, and generates opportunities for those involved in testing. In meeting this demand, there has been a focus on the use of automation to quickly reveal useful information, and this in turn has created opportunities for testers who are skilled in coding; developing and maintaining the scripts required for automation and in interpreting the results for those who may not possess such skills.
The changes associated with Agile practices and DevOps may result in another important benefit. As the barriers between traditional roles continue to break down, awareness of testing within teams is likely to increase, and I believe the perceived value of testing will also rise.
Additionally, the ongoing cultural changes in many organisations present opportunities to diversify and learn more about aspects of development which may previously have been unfamiliar. For some involved in testing, this might result in a change in career direction, whilst for others there will be the benefit of new ways to consider the products they test.
When I first considered writing something on this subject, I had in mind the idea of a SWOT Analysis for testing. The idea didn’t really work, primarily because Strengths and Weaknesses in a SWOT analysis really only apply to specific organisations or individuals and I wanted to think about the subject in a wider sense.
I have tried to capture the threats (see here) and opportunities (here, and in the blog above) which affect those involved in testing. My intention was to offer a slightly different perspective to that which appeared in some of the articles I referenced in my introduction (here); articles which predicted that testers are heading for some kind of extinction event.
My overriding sense is that there are a wealth of opportunities for testers, whether as specialists or generalists and that demand for testing will only increase as organisations become increasingly dependent on technology, and as they seek to deploy more rapidly.
I do believe that there is a reality check under way for those who work or have historically worked in bloated and inefficient testing teams, repeatedly running through pre-defined scripts filled with steps and expected results. Organisations which are seeking a leaner (and cheaper) way to operate simply won’t tolerate this kind of model.
Automation has naturally taken on a greater role in many teams, and will continue to do so, but this is by no means the only avenue open to testers. In fact, I would suggest that the most important attribute for many involved in testing will be something entirely separate from their technical capabilities. It will instead be their ability to make a connection between the work they do, the goals of the organisations they work for, and ultimately the customers who will use the products they work on.
Of course, customer empathy is nothing new in testing, but I believe that the digital revolution has brought the relationship between customers and technology into sharp focus and we all have an opportunity to demonstrate the value of testing in providing organisations with information that will be crucial to that relationship.