Working with different roles on a team to find new solutions together is one of the most rewarding parts of being a quality advocate (QA). Pairing with other roles is an excellent way to gain insight into how they approach tough problems and gives you a new perspective that you can take with you to the next challenge. Each role brings their own unique perspective and expertise to the table.
Pairing with developers
An easy way to pair with developers is to participate in mob programming sessions. There are two main roles in a mob session, a single driver and multiple navigators. The driver has the keyboard and mouse and is the only person allowed to type. The navigators direct the driver and communicate what should be typed. The driver should also clarify directions whenever they do not understand them.
Quality advocates should volunteer to drive and be ready to ask questions. In my experience, the mob session gives you a chance to ask questions around what is being done and why, learn syntax and other development skills and observe how developers approach problems. It cannot be overstated that you should ask questions if you don’t understand the thought process or what you’re being asked to type. You will gain understanding around what is being worked and how the problem-solving process can help you going forward.
While you’re not driving, try to follow the flow of the work being done. Listen for key phrases and technical terms that are repeated. Should the group run into a problem, watch how the group goes about finding the solution and where possible, contribute to the search for a solution. Ask sidebar questions for clarification if you don’t understand the logic behind a decision, or do your own research on your laptop.
When pairing with a single developer a lot of the same principles apply. Ask questions, be ready to help solve technical problems and offer to “drive."
Pairing with agile business analysts and product owners
Product roles offer their own unique perspective centered around customer value and outcomes. If you have questions about stories or customer value, they are great people to work with. Opportunities to pair with your ABA or PO may seem scarce, but it is important to remember to ask questions and be ready to commit to time to pair. Asking clarifying questions gives your pair a chance to explain their thought process and gives insight into how they approach problems.
This role on the team is charged with, among other things, truly understanding the product vision and making the right choices to get a team closer to a finished product that satisfies stakeholders. They excel at understanding the customer mindset and will be able to speak to the customer’s priorities at a macro- and micro-scale. The information that they have is incredibly valuable to QAs, allowing for us to properly assess risk with issues that we find.
On the other end of the pair
As a QA you should also expect and encourage other roles to pair with you on testing tasks. Think about what makes a pairing session successful and apply those strategies. When leading a pair, you should be ready to explain your thought process to your pair. You should also encourage your pair to drive.
Have your pair take the reins and see what they do. A fresh perspective is not subject to the same biases you might be. Guide, but don’t control. You may be surprised at what your pair discovers, and they will gain a great sense of accomplishment and insight into your day to day. When you can explain how you approach testing to another role on the team, you spread the quality mindset which makes the product better.
Spreading the quality mindset can yield powerful long-term results:
- Your story writing sessions may accommodate for more edge cases, resulting in fewer issues in flight.
- Your struggles with environment setup and predictability may be surfaced to the people with the skills to alleviate them through automation or otherwise.
- Your quality of code reviews may increase as your team becomes more comfortable exploring the app on their own through your “eyes.”
Different roles can gain a lot from pairing with each other on application development projects. Some of my favorite interactions have come when trying to understand problems presented by a different role and working with that person to come up with a solution.
Remember to ask questions and build your understanding of the issues being faced—questions like “what about X?” and “what do you think about Y?” and “what background knowledge went into that decision you made?” Where possible, think about what you will be pairing on in advance, so you have an opportunity to build a very basic understanding on your own, so your pairing session is more effective.
Cross-role pairing is a great opportunity to reduce the list of things you didn’t know that you don’t know.