It’s true. I’m a software test engineer – and I love what I do. Commonly known as QA or quality assurance, software testing at Marxent is a blend of endless meandering road trips, costume parties and walking a bulldog through a china shop. I get lost, I pretend to be other people and I break things. I love it. I’ve devoted half of my life to the discipline of quality assurance but it can be hard to explain what I do and why it’s important. In short, QA is the safety blanket that ensures that software works as intended with the minimal errors and frustration on the part of developers, clients and end users.
QA: From test scripts to semicolons
You might be wondering why any company employs people to break the stuff that they build. Sounds crazy, right?! The reason that QA is integral to the software development process is that there are so many variables that come into play in the development of software products, no single developer could possibly build and test for every platform, browser and use case. Not to mention that there are often multiple developers contributing to a single project. Here are some of the things that I test for while getting lost in the software, pretending to be other people and breaking things.
- Software behaves as intended
- A seamless user experience that isn’t confusing or misleading
- Smooth and solid cross-browser and multi-platform presentation
- User experience consistency within a software application
- Spelling, typographical and punctuation issues
Breaking things – and making them better
In truth, telling people that I am a software tester is an injustice because it does not explain what I do. The best part of my job is making sure that the user experience is engaging, flawless and as enjoyable as was originally envisioned. To do that, I must break things. Of course, I always work with the development team not just to find vulnerabilities and identify issues but also to help repair whatever issues arise. Part of the fun in breaking things is finding ways to make them better.
The importance of pretending to be other people
There is an aspect of QA that is like a costume party and it takes some imagination to make it work. QA Analysts are always pretending to be either a client or an end user. We try to think like the client, ensuring that all pre-stated requirements have been met and what might make them happier with the end product. Then there is the role of the end user who knows nothing about the requirements but has expectations, needs and desires that are equally as important to the success of the project. Both are critical to a releasing high-performance software.
QA is a series of endless road trips
For every minute that a developer spends writing a line of code, QA will spend up to 5 minutes making sure that line of code is perfect and plays well with all of the other lines of code. There are endless stop signs, detour signs and dead ends along the way. This is part of the adventure and part of the fun. But it’s not for everyone.
What makes a great QA analyst?
Not everyone is cut out for a career in QA. It takes a combination of analytical thinking, a comprehension of software and engineering, reckless creativity, sick communication skills and the ability to multi-task. Most importantly, QA analysts need to be able to imagine themselves in the shoes of clients and users, recall and explain their endless road trips and be passionate about finding ways to help make software better and more useful.