Those ardent readers of my blog (and I know there’s at least a few of you) already know that I make my living as a Software Tester (also called QA, short for Quality Assurance, by some in Development and Testing circles). I must admit that I enjoy the hell out of my work, which puzzles some people, so I thought I’d write a little bit about exactly why.
- I love a challenge. First and foremost, I love doing things that engage and exercise my brain cells, whether that’s testing a mobile application or website, playing chess , doing Sudoku or having a good debate with someone over a drink.
- My curiosity is unwavering. I like to find out just exactly how things tick. My favourite questions are open, probing ones such as:
- Why does this functionality not work (or not as expected)?
- How is this issue being induced?
- What is the root cause of this issue?
- Which ways can this issue be fixed or at least improved?
- How much useful debug information can I provide in my feedback to the developer(s)?
- Working with techy, geeky people is fun. I’m a geek with a little bit of coding experience and a lot of enthusiam about all the cool stuff that can be done with code in various ways. I really do get a kick out of seeing something new and innovating which makes me think things like “Wow, that’s a really neat idea” or “That’s great way of implementing that feature.”
- I like helping people. I’m not just breaking code for the fun of it – well, not always. Rather than saying “This isn’t working”, it’s much more satisfying to me to be able to say “This isn’t working because of [foo] and you can improve matters via [bar]”. As mentioned above, giving useful debug information is a given for this aspect of my work.
- I believe in making things better. To that end, the word “quality” shouldn’t be just a throwaway term. Nothing is perfect, at least not the first time around – particularly when it comes to any software development project beyond a basic “Hello World” app. I had a very senior developer say to me, “I’m not a robot; I’m not going to write a thousand perfect lines of code every single day. Testing is a vital part of the development process as it makes sure that what ends up as a final product is as good as it possibly can be.”
These are the main reasons why I get a kick out of testing things; it’s not the end of the list by a long shot, but most of the other stuff I could write about would just end up as subsets of the above. What aspects of your work do you like and why?