Software testing is a serious profession that becomes more demanding and more important every day.
But many within the field don’t regard their own contributions with the respect they deserve. They view themselves as support staff and fact-checkers who needn’t bother investing in the requisite resources for continued growth.
Ironically, many of these same individuals are also the most vocal when it comes to demanding recognition from other project team members or the general public.
But true recognition of our contributions must start and end with us – the software testers and QA managers.
And here’s why.
We tell our team whether or not a product delivers as promised. The team will learn eventually (if and when the product goes to market). But our job is to make certain that launches are never premature. We protect the team AND advocate for the rights of end-users to receive the best product that our team can develop.
This explains why testing represents 80% of software development costs. In today’s highly competitive marketplace, reputation is paramount. And wise firms invest heavily in quality assurance to maintain their rank.
But it’s not simply the importance of our job. It’s also the skills required to perform our duties. There are only a handful of different paths towards a successful product launch. But there are an infinite number of ways that a product can fail – and as testers, we must discover all of them before end-users do.
Accomplishing this requires:
- A sufficient level of programming fluency. You must understand lines of code, scripts, and functions… in every project.
- Constant learning through seminars, tutorials, online education, webinars, and community colleges. Education is a lifelong journey.
- Anticipating every question that an end-user might ask and every problem that an end-user might encounter.
- Playing an active role throughout the development cycle – from the initial meeting until the end of that product’s lifetime.
- Prioritizing all tests based on the most valuable allocation of limited resources and time.
The above skills are both invaluable and non-negotiable.
And yet, many who possess these assets don’t always appreciate their importance – despite the many years required to develop them. They regard software testing as a vocation – a stepping-stone towards some other career. And perhaps there’s some justification to this given that a truly knowledgeable, driven, and curious tester can easily thrive in other positions within the larger IT industry.
But software testing is a profession in and of itself – a terminal station in a long and distinguished career path. This is patently obvious to anyone who has witnessed the testing community blossom exponentially over the last decade:
- Convention attendance and forum participation grow year after year
- There exist blogs and newsletters for every software testing niche imaginable
- New testing methodologies and best practices emerge on a daily basis
- Academic research, designated for software testing, has emerged, and SW testing courses are now part of engineering faculties’ syllabus.
Whether or not to get involved in all of the above is a strictly personal decision.
If you truly value software testing as a career, I can’t imagine how you could ever justify working in complete isolation. Every profession on the planet thrives on community support, networking, and continuous learning.
Software testing is no different.
But if you fail to leverage these resources in your own work, both your professional and personal growth will be limited. Worse still, you’ll never enjoy the respect that your contributions demand – from the public, from valued team members, and most important – from yourself.