At first sight the title of this post might look a bit strange, but here is what’s the story. I really wanted to capture the skill set of a tester that I believe is the ultimate one, the one that causes the big “Wow” when people get to know you. And in first place it was an advice on what skills are needed if you want to get hired as a QA and have a successful career in the IT area. And I really thought of it as probably a simple post with couple of sections, explaining the different skills that expert QA must have to be successful, but then I started to dive deeper in my thoughts, it turned out there’s waaay to much information for just one post, and things are way much more complicated than just a simple advice. In fact being a QA, to me isn’t just a job or a profession or even an expertise, it is way of life, it includes not just the technical knowledge, not just the negotiation skills, not just quality advocacy, not just team management, but a strange mix of everything, a specific mind set if you want to put it this way, and of course a lot of commitment. And this is how this weird analogy came to my mind.
Why the samurai?
This was a topic that has been of interest to me since I was a teenager. I was totally fascinated of the philosophy of bushido, or “the way of the warrior”, I was blown away by the fact how committed these guys were to their duties and profession. And for the samurai, bushido was not just a code or a protocol, it was way of life, religious and philosophical belief, combat strategy – literally everything. They had this list of moral values, that were admitted to be essential for the life of the samurai. And I will stop with the history lesson here, to move to my point finally.
I believe anyone should approach his profession as samurai were approaching their own. And applying that to testing, I believe that software testing shouldn’t be just a job, but a commitment, a way of life, and I as a good tester and a “warrior” on my way for personal development, I think that there is certain set of skills or core values, behavioral models, that every tester should develop in order to become a true master in his area.
So here is my list of software testing virtues that each tester should master. So in a short series of posts I will write a separate post on each one of them, to make a clear statement why is it so important to have it.
- Virtue #1: Technical knowledge and skills.
- Virtue #2: Quality advocacy and negotiation skills.
- Virtue #3: Team management skills.
- Virtue #4: Personal management skills.
- Virtue #5: Attention to the detail.
- Virtue #6: Puzzle solving mindset.
- Virtue #7: Trust no one attitude.
So this is my idea, to you, my dear reader, all these might seem a bit silly and I really don’t want to push you use the term “virtues” or “core values”, if you feel more comfortable calling them job directions or professional advice or personal development strategy, they are all the same – they represent my vision of what a quality assurance engineer should have to be successful, but you may just accept them as job advises from a fellow tester.
Of course, and it’s not the first time I say that, I am a tester, I trust no one and I assume I might be wrong, and I would love you to tell me if I am missing a point in my theory. I really want to, after all it’s all we do, right, test stuff, so go ahead test my words, hit them as hard as you can, try to break ’em.
I dare you! 🙂