Skills a successful QA team should have
The bare minimum that the QA team should cover is executing manual tests. These tests include:
- Interactive testing
- Integration testing
- Load testing
- Non-functional testing
- Regression testing
- Sanity testing
- Security testing
- Single-user performance testing
- Smoke testing
- Stress testing
Note that this list is missing unit testing. The reason for that is simple: in a healthy situation, unit tests are done by developers before they ship the code to QA. Your testers may need to know their way around unit tests as an insurance, but they wonāt be the ones creating and executing them.
Another major requirement is working with different testing approaches. Your project will likely need both white box testing (the QA know the source code) and black box testing (the QA approaches the software just like a user would). Thereās also a mixed approach ā grey box testing ā but doing that is certainly outside of the minimum scope.Ā
Automation testing specialists are expected to do exactly what their title says. This would require the following:
- Knowledge of the primary programming language / framework used for test automation
- Reasonable grasp of the programming language used by developers for the project
- Proficiency with test automation tool(s), such as Selenium
- Good understanding of the product and domain to see what needs to be automated
- Decent manual testing skills to avoid nudging colleagues for small things
There are also common skills that will be relevant regardless of the QA team structure:Ā
- Creating test documentation
- Writing actionable bug reports
- Analytical approach to testing the product
- Good time management
- Solid communication skills
- The ability to put yourself into savvy or clueless userās shoes
Treat this as more of an ideas list rather than a checklist. If someone on your team or a potential candidate fails to contribute with one of these skills, it is not necessarily a deal breaker. A lot of things in QA are learned through experience, so it is just the matter of whether your product, QA management structure, and/or budget can accommodate for some early mistakes.
These skills alone, however, will not be what makes or breaks your team from day 1 and until the end of the project. You will have to look at metrics for QA process measuring the QA output in a scientific way. They will have you answer two key questions:Ā
- Are we on track with our QA goals?
- Are our QA results (e.g. detected defects ratio) in line with industry standard?
Look at these metrics, apply context, and discuss with other stakeholders to see if your QA is on the right path. Getting the people with the right skills is a great start, but testing still takes some monitoring and adjustment even under perfect conditions. Read on to get tips on how you can mitigate less-than-ideal conditions while youāre assembling a QA team.Ā
Main QA team roles and responsibilities
Letās explore the four key roles when building a QA team from scratch.Ā
- Team Lead is the main person responsible for Quality Assurance in the company. They mostly do high-level things, such as creating and maintaining test documentation (and not just test strategy). The Team Lead also provides mentoring directly or sets up their Senior colleagues to provide advice. There is next to none hands-on testing work for someone in this position
- Test Manager is the person in charge of individual QA projects. As a rule, they are assigned to just one project and assume full responsibility for quality. Test Managers make project-specific test plans or simply make the team observe an existing test strategy.
- Manual QA Specialist is a hands-on tester that interacts with the product the most. They analyse requirements, create test cases, group them into test scenarios, run tests to find defects, report defects into a software test tool, and work with developers to resolve them. During downtime, manual specialists can do exploratory testing to improve the test suite
- Automated QA Engineers take care of the automated effort. They too contribute to the test suite and work with developers on resolving discovered defects. Weāve covered how and why you may want to adopt test automation in a separate article.
Get a testing strategy template that enables us to release 2 times faster
Steps to Build a QA Team
Letās look at the key steps of building a QA team for manual and automated testing.
-
1Assign the responsible person. This will usually be the Test Manager reporting directly to the Project Manager.
-
2Assess your resources. View the timeline and requirements together with the Project Manager and the Product Owner. See whether your company has enough seniority and capacity to tackle the project. Discuss the requirements for new hires or outsourced specialists if you will need any.
-
3Prepare project documentation. Depending on the maturity of the company's QA, you are looking at making a test plan based on the larger test strategy or creating the missing test strategy. These are more than rules: the description of procedures and tools will save you time on introducing new people.
-
4Pick the right tools for the job. Your QA suite is usually dictated by the test strategy, but you would usually want an automated testing tool for Agile teams to consolidate all the testing effort.
-
5Onboard the team. Present the QA documentation and how the testing workload fits into the projectās timeline. Answer the questions of the team. Make adjustments if needed.
Benefits of creating a testing team from scratch
Creating a testing team from scratch offers numerous benefits that can significantly enhance your QA organization structure and overall software quality. Here are the key advantages:
- Customised QA Organization Structure: Building a testing team from the ground up allows you to design a QA organization structure tailored to your specific needs. You can define roles, responsibilities, and processes that align perfectly with your project’s objectives and your company’s culture.
- Optimized Software Testing Team: By forming a new software testing team, you have the opportunity to recruit members with the right mix of skills and experience. This ensures that the team is well-equipped to handle the unique challenges of your software projects, leading to more effective and efficient testing processes.
- Clear Testing Team Structure: Establishing a new team gives you the chance to implement a clear testing team structure. This involves defining the hierarchy, communication channels, and workflow processes, which helps in minimizing misunderstandings and improving collaboration among team members.
- Enhanced Quality Assurance Processes: A newly created testing team can adopt the latest best practices and technologies in quality assurance. This includes incorporating modern testing methodologies, automation tools, and continuous integration/continuous deployment (CI/CD) practices, which collectively improve the speed and reliability of software releases.
- Focused Training and Development: With a fresh team, you can invest in targeted training and development programs that align with your project’s specific requirements. This ensures that all team members are up-to-date with the latest testing techniques and tools, fostering a culture of continuous improvement.
- Better Alignment with Project Goals: Creating a testing team from scratch allows you to ensure that the team’s goals and objectives are fully aligned with the broader project and organizational goals. This alignment is crucial for ensuring that testing efforts directly contribute to the success of the project.
- Improved Accountability and Ownership: A new testing team can foster a strong sense of accountability and ownership among its members. Since the team is built with a clear vision and purpose, each member is likely to be more committed to delivering high-quality results.
- Scalability and Flexibility: Designing a testing team from scratch provides the flexibility to scale the team size and structure as your project grows. You can easily add new roles or adjust the team structure to meet evolving project demands.
In summary, creating a testing team from scratch enables you to build a tailored QA organization structure, optimize your software testing team, and implement a clear testing team structure that collectively enhances the quality and efficiency of your software testing efforts.
I don't have a ton of experience working for QA managers, as most of my career I've been the QA manager, but I try to be the kind of QA manager I'd want to work for. I think good people skills are important. Caring about your team on an individual basis: making sure each person gets what they need in order to do their best work, whether that be through unblocking obstacles, providing training, or helping them work through personal worries. Give them positive feedback as often as you can when they are doing what you expect them to, and provide constructive criticism promptly when you notice an issue.
Obstacles in organising a QA team from scratch
Here are some of the challenges that you may face when building a software QA team.
- Lack of human resources. The existing QA talent pool may not be deep enough to build a new team. The natural answer is hiring new people or outsourcing some of the tasks
- Insufficient seniority. The team may not have enough experienced specialists to tackle a complex project. There could be a lack of experience with certain types of testing and/or lack of business understanding. Depending on the timeline, extra training could be a solid alternative to finding new people
- Vague requirements. Unclear scope and complexity of user stories will make it difficult to assess the QA workload and pick the right testers. This needs to be settled with the Product Owner before you proceed
- General disregard for QA. It can happen that some stakeholders view testing as an obstacle to releasing rather than a necessary effort. What you could do here is show other stakeholders, perhaps even non-tech people, the potential consequences of poorly tested releases. Bring some domain knowledge and graphs with you
- Fast-paced release schedule. This is more of a consideration than an obstacle, but you need to account for it while building a team. When software requires frequent feature updates with little time to test, you will need some hard-hitting QA specialists. Senior testers are definitely preferred to Junior ones. Test automation engineers are a must as well.
Conclusion
Building a QA team takes senior personnel and good planning. You need to have QA people identify the needed skills in their future colleagues and organisational support from the management to nail the scope. The better you build your team, the more polished your software will be.
Using good software will help to make your software better, too. The test management solution aqua comesĀ with an upgraded AI Copilot. You can use it to auto-create tests, prioritise them, and get rid of duplicates. This will save your team from the redundant effort, cut down on routine, and give them time for exploratory testing.
AI testing to get the most out of your QA team