Friday, 7 August 2015

How do you become a great tester?

At the fifth annual Kiwi Workshop for Software Testing (KWST5) that happened earlier this week, James Bach asked a seemingly simple question during one of the open season discussions that I have been thinking about ever since.

"How do you know you're a good tester?"

Since the conference I've had a number of conversations about this, with testers and non-testers, in person and on Twitter. During these conversations I've found it much easier to think of ways to challenge the responses provided by others than to think of an answer to the original question for myself.

Today I asked a colleague in management how they knew that the testers within the team they managed were good testers. We spent several minutes discussing the question in person then, later in the morning, they sent me an instant message that said "... basically a good tester knows they are not a great tester." 

This comment shunted my thinking in a different direction. I agree that most of the people who I view as good testers have a degree of professional uncertainty about their ability. But I don't think that it is this in isolation that makes them a good tester, rather it's the actions that are driven from this belief. And this lead me to my answer.

"How do you know you're a good tester?"

I know I'm a good tester because I want to become a great tester. In order to do this, I actively seek feedback on my contribution from my team members, stakeholders and testing peers. I question my testing and look for opportunities to improve my approach. I imagine how I could achieve better outcomes by improving my soft skills. I constantly look to learn and broaden my testing horizons.





What would you add?

8 comments:

  1. In my experience, few testers ask these sort of questions, which is why I believe they are an indicator in themselves.

    My suggested heuristic is that when you reach the point in your testing career where you wonder how you can become great, and you start to attempt to answer these sort of questions, that's when you know you're a good tester.

    ReplyDelete
  2. Great overview on how to improve as a tester, I will definitely bookmark this for future use! One thing I can think of that is not explicitly stated is to try out new techniques, ideas and approaches in practice once you´ve learned about them. But maybe that part is implied and part of the whole learning package. But one could also argue that "put your knowledge into practice" could be a category of its own.

    ReplyDelete
    Replies
    1. Good point. I felt that the learning was implied. My thinking was that perhaps a tester would reference this every few months, as the answers to these probing questions should change over time, with the idea that learning and development is occurring between each self assessment.

      Delete
  3. I agree that the fact of being aware that there is always room for improvement and self-development is essential for becoming a good tester.
    I also think that a good starting point for considering yourself a good tester is making sure you are a tester that can act on all the phases of a software project, from its inception to its closure, bringing great value to the team.

    ReplyDelete
    Replies
    1. I agree that a tester should be able to contribute through all phases of the project.

      However the value that the team perceives they are receiving isn't necessarily a good indicator of whether the tester themselves is actually good at their job. Particularly in an agile environment, this team assessment is often given by non-testers. Though I think that seeking feedback is an essential part of being a good tester, it is only one aspect.

      Delete
  4. I don't think there's only one good way to answer this question. I think the lines blur a little between being a great/good professional and a good/great tester. As a general rule, great professionals see their careers as a path and every job is a calculated move towards and end goal. To reach that level, you will need to acquire and refine skills along the way, and receive input from your peers on different stages. You will have to question how much you know multiple times along the way and many times you won't think you've reached a higher level. While this is fair and valuable, I think is still not specific enough to guide us on how we know we're good testers or even great. The description of our role changes from one company to the next so the ruler to measure greatness might be exact for a case but not apply to a different one.

    To me, a great tester has to have curiosity and creativity beyond the average measure. There are many bugs we miss because of errors/flaws in our way of thinking and a great tester must be aware of them in other to navigate around them. A great tester is a good communicator and masters persuasion, possesses great domain knowledge and is sensitive to the end user....but while I say all of this I still don't know how you can determine if you're a good tester. What reference point shall be used to measure how many of these characteristics we possess?

    But maybe being trying to sound too poetic, like our tests, there are no good testers, but just good enough ones.

    ReplyDelete
    Replies
    1. The reason this question tormented me was that I can pick apart the absolute statements provided in response.

      You say "a great tester has to have curiosity and creativity beyond the average measure". Though I would tend to agree, I've also seen great testers who have strengths in eliciting creative thinking from others through collaborative activities, and using heuristic testing references to create diversity in their approach. Does that count?

      You say "a great tester is a good communicator and a master of persuasion". I have seen some amazing testers who need a lot of assistance to communicate what they find. They were working to improve, but communication was a real struggle for them. Does that mean they are not great?

      You say "a great tester possesses great domain knowledge and is sensitive to the end user". Does that mean I am not great when I switch organisations? What if I'm a new tester who comes from a business background within the organisation, am I then immediately a great tester?

      I reached the conclusion that this check list of good doesn't exist. There are too many exceptions. Instead I like the idea of a set of questions, as I've proposed above, so that people can assess whether they are 'good' within their context, both through self assessment and using feedback from the people around them.

      Delete
  5. The headline and graphic pose the question "How do you become a great tester", but the original question posed was "How do you know you're a good tester" - these are two different questions.

    A person brand new to testing could ask all of those heuristic questions, does that mean that they are good?

    What does good, great, or amazing, actually mean anyway? These are all words that have different gradients and are subjective so can mean slightly or not-so-slightly different things to different people at different times, and will change depending if the viewpoint is from within yourself or projected outwards to a team member or colleague. Somebody with a higher internal calibration level may not consider themselves good at all whereas their colleagues may perceive them as nearing greatness; at the other end of the scale, if a tester just goes through the motions but gets the job done on time with reasonable quality their manager may consider them to be "good enough" - it's at the lower end of "good", sure, but is this still "good"?

    I don't think the question "how do you know you're a good tester" is one that can be answered definitively, it's more of a philosophical question to encourage personal retrospective as an individual, and in that respect if you've answered the question for yourself then it's the correct answer :-)

    ReplyDelete