Like most testers, I didn’t dream of being a tester when I was growing up – I fell into it. I tried it, it suited me, I stuck with it. Twenty years later, I still look forward to my next project.
In the beginning
In 1997 when I began my journey, testing activities started with walk-throughs of functional and technical specifications full of requirements and UML (Unified Modelling Language) models.
There were two main methodologies in use – V Model and Waterfall. RAD (Rapid Application Development) was just starting to be a thing, but it was developer-focused, relating to the production of prototypes and removing the need for requirements and focusing on the user and user interface. Prototypes could be developed into the actual product and then, once it was all built, we would retrofit some user manuals.
How did we learn? From expensive, thick, paperback books with dry titles! And by getting hold of trial versions of tools and playing with them for four weeks and then either dumping them or trying to convince your boss it would be worthwhile investing more company money in tools.
As far as pro-qualifications went, it wasn’t until 1998 that a Foundation Certificate in Software Testing was launched (by the British Computer Society). In 2001, the ISTQB (International Software Testing Qualifications Board) was created and it offered a similar certification scheme. This was later universally adopted and remains today the professional standards’ certification for testers.
Today, you can study testing at university. Or find grad programmes that push you into the deep end fast. Just like at Assurity! However you arrive at it – and no matter what specialisms you focus on – constant searching and learning is the only way to keep up with latest best practice and the tools coming to market.
For self-learning, my first port of call today is always the internet – whether I’m looking for an example bit of code to use or an opinion on a particular tool. I check out one of the big testing community sites and look for the specific answer I need.
I also keep an eye out for Meetups, workshops and courses that might be useful and, when I find them, I sign up or speak to my managers about funding training. By attending a course, I know I can pass my learnings on to others in the business.
Then, of course, there’s so much you can learn from your testing colleagues and peers! My experience is that most testers are really open and want to share their knowledge – they're a sociable bunch and, wherever you are, there will be a community – either online or in person – where you can engage in dialogue, swap tales of glory or defeat and ask questions about the latest tool or technique. Just keep asking questions – you’ll get better at what you do, improve the products you’re working and, I’m certain, you’ll find your career is a whole lot more interesting.
Wheels keep on turning
Constant learning has never been more important.We’re now in the Digital Age, the Fourth Industrial Revolution is upon us and the pace of change in software development is accelerating. The ability to deliver quality software fast is creating innovation and huge change inside our industry. There are new languages, processes, approach methodologies and practices all improving how software is delivered. And there are a heap of new tools too.
In 1997 when I started testing software, CAST – Computer Aided Software Testing – was a pretty new thing. There were two main players, WinRunner and Rational Robot – record and playback models for functional/regression testing. The marketing for these promised the earth and delivered a small town, perhaps a few city blocks. The tests they created needed almost constant revision, but they continued to evolve and develop and turn into something usable – in the right circumstances.
Jack of all trades OR master of one?
The challenges of 20 years ago are still around. Do you specialise or generalise? Do you pick up all the tools you can or just the ones you have to deal with. Some people are more interested in delving deep into the guts of a product, others focus on the user experience. There aren't enough days in the week for all of us to be a Jack/Jill of all trades and often not enough time to be the complete specialist either.
At Assurity, we talk of creating Pi-shaped people – a step on from ’T-shaped’ people. If you imagine the symbol for Pi, each leg is a specialism (so two instead of just one) and the bar across the top represents generalist breadth:
- Specialisms – develop a deep understanding in one or two specific areas. You might choose to focus on performance and load testing. Your value is higher as you specialise. However, over time, your area of focus may be surpassed. That’s where generalist skills come in. They allow you to migrate to new specialisms.
- Generalist – you have a breadth of knowledge across different skill sets, technologies and domains. In the Digital Age, it’s absolutely necessary to have a grasp of the full product delivery lifecycle and how testing can contribute by shifting both ‘right’ and ‘left’. You don’t need to be a UX, BA or a Dev, but understanding those things means you can make a more valued contribution to any multi-disciplinary project team.
Generalist understanding plus specialisms plus a willingness to keep on learning with an adapting mindset is what will keep your testing skills relevant. You’ll enjoy a career in testing that evolves and improves just as much as the technology you’ll be testing and using… in the next 20 years.