Software companies have a variety of testing and quality needs. One can care deeply about the quality of their products, but have a low tolerance for process or a low ability to implement a quality department or team.
I have been in software quality my entire career, and more than half of that time has been in a leadership role in quality. I have taken on roles that fall all along that continuum of tolerance. At times, I have stepped into a well-established team and picked up where the last person left off. More times than not, however, I have been brought in to an organization to build a testing team and develop software quality processes. I have had very favorable success doing this, and I have formed strong beliefs on what makes up an enduring and highly functioning testing team and quality department.
I am going to focus here on what it takes to build a testing team, since most practices are best carried out by this very team.
Understanding What is Needed
The very first thing that needs to be markedly clearly is what are the testing and quality needs of the company. You naturally should have gained a great deal of information during the interview process. Interview questions reveal much about past issues, pain points, what problems need solving, and what are the company’s ultimate goals for their testing organization. Since you were indeed given the opportunity to lead the team, it should be clear that you are capable of achieving the company’s quality goals and will also not repeat negative past issues.
Once you take your seat as the software quality leader, there are three things that should happen in the first few weeks: observe, listen, and learn. This is the time when you will come to fully understand what the testing needs are, and to arrive at how you will build the best testing team that you can.
As more knowledge is gained about the company’s testing needs, I group my thoughts and plans into these categories:
- What basic processes are missing or lacking.
- What is in place, but needs to be improved upon.
- What outcomes are we hoping to achieve.
- What are the opportunities for long-term growth and longevity.
Building a Team
Once each of the categories becomes filled up with information and ideas, I start to formulate what the testing team will look like and how the team should operate. At this point, I am not considering how many testers will make up the team — I am thinking more along the lines of what do I want to implement, which looks more like a high-level view of what function would need to be filled regardless of how many people fill them.
Example: in order to achieve my planned goals, I very much require the following functions: a) mastery at test planning from vague requirements, b) mastery at ad hoc and exploratory testing, c) highly-skilled automator, and d) excellent at pairing with developers to understand features with no requirements.
These functions and skills take shape not only based on what we want to achieve, but also based on some of the pain points that may have caused failure to deliver in the past. A practical application of a very detailed function is that you may need a team member who is very adaptable when things change given the fact that the organization makes constant changes on the fly for every new feature.
The Secret Sauce
Regardless of what specialized skills are needed, there are some basic must have attributes for testing team members. These are the common traits that individuals have that make them invaluable and successfully extensible to most any task.
The common traits are: a) a deep understanding of SDLC, b) superb communication and writing skills, c) mastery at creating test cases, test plans, and defects, d) highly organized, and e) they must be a team player.
The combination of the specialized skills and the must have attributes are the magic that make up an outstanding testing team.
Building a new team is not typically straightforward, and it can be quite overwhelming. Just about every challenge and unknown can be eliminated by having a solid methodology that can move you closer to your goals.
I focus on what needs to be accomplished, and how the team can do more together as a whole. Great testing teams are made up of people with specific skills and experience, but also it needs to be the sum of its parts. Individuals can do more together.
Building teams from the ground up takes humility, patience, and the desire to constantly work on how to best achieve the desired outcomes. I am certain of the fact that the quality of the individuals that make up a testing team, helps mold the quality of your products.