An important aspect about building careers, getting visibility, and gaining recognition is the name of the role in which you function. I see profession as something that I practice, and I would like to call it as I would like people to see me in it. Realistically, many don’t have a choice on that as organisations decide on role names and the employees need to stick to them. I wanted to write about testing roles as I came across some discussion in social media recently.
I have been in the role of ‘Software Engineer – Quality Assurance’. I didn’t have a choice as an employee. But I don’t believe in ‘Quality Assurance’ because I believe no one can assure quality. Quality by itself is a subjective word which depends on the context. We could agree on some baselines quantitatively for contractual purposes, but every customer would look at the quality of the product with their own perception, and there could be just too many of them especially in the B2C space. When this is so, how can you ‘assure’ quality?
And then there is this ‘Quality Engineering’. I wonder if anyone can engineer quality. Personally, I cannot, for the same reasons mentioned above that quality is subjective but engineering is about precision, logic, accuracy, and mostly quantitative. If my quality is defined by quantitative aspects, then may be I can claim that I am doing engineering towards achieving those quality goals, but end product is often a mix of art and science.
I am not a fan of building a framework about what ‘Quality Engineering’ means. There are some thoughts going around about how quality engineering composes of aspects like people, process, product, etc. Why, didn’t ‘software testers’ deal with people, processes, and products? They did all the time. It is not that Quality Engineering is bringing a new paradigm and changing the way software is built. It never has so far, unless someone points me to a new way of doing things that’s not done already.
As I said in a LinkedIn comment recently, you call it as ‘Quality Engineer’ or ‘Software Tester’, the function remains the same, which is verification and validation. That is what software testing is all about. Software Testing inherently deals with people and processes, and focuses on product quality as the end goal, which is about satisfaction of the end-users.
There have always been colorful frameworks and sketch notes that look lovely in social media, but at the end of the day, aspiring for quality is mostly tiring work, dealing with many stakeholders. Don’t let these colorful sketches fool you into testing roles or jobs that you would hate or regret later!
For discussions on Software Quality and Software Testing, feel free to reach out to me.