Rawpixel - Fotolia

Tip

How to keep developers and testers happy -- and productive

The stresses of software development can strain testers and developers' comradery. Foster a collaborative and communicative environment to keep the whole team productive.

Communication problems inevitably arise between developers and testers, whether they are on the same or different teams. These issues hurt job productivity and business success. It is a challenge to manage both groups and build a cohesive team, but the effort can yield individual and team prosperity.

To get developers and testers on the same page, make sure all your team members understand their roles, including how they overlap and interconnect. Align your group to operate as one team with one goal, which can make for greater application quality and a more productive, focused staff.

Understand your role

As a QA tester, your role varies. You review, you question, you test and you support development. Many QAs don't want to view their roles as support positions, but, in many ways, that's what they are.

While testers don't help developers code, they do help them understand the implications of what they code. For example, when a story comes across, QA reviews the requirements and the design plan. They provide input to the product manager, who makes changes, and then the story moves into place for a developer to code.

Every person understands directions differently. As a QA, you must verify that the developer shares your understanding of the story. Testers must think about the effect on customers as much as possible, and they must also ensure the code matches the product manager's intent. If it doesn't, you will waste your time with tests. Keep an active line of communication between yourself, the product manager and developers to reduce confusion.

Many testers use a work agreement, which describes the parties' understanding of the feature and its function. The format of a work agreement doesn't matter -- it might exist as a checklist, as a use case document or as a story paragraph -- but a QA tester can use it to outline what she plans to test. The developer can review the agreement and discuss any questions or concerns. This document can confer understanding through discussion, both written and verbal, and further encourage open communication and collaboration.

Inclusion, debate and application quality             

Developers and testers want to feel included in debates on design. Everyone with a passion for testing or coding wants their input heard. However, you shouldn't treat the process as a punishment or a means to get your way -- the process should not be contentious.

Support an inclusive discussion. Everyone should hear each other out and create a design that works for the application and the team. Some staff members may be competitive or potentially domineering, while others might be less likely to express a direct opinion. The team must manage these egos and work to achieve goals to create the best application for the business. Build a team that works collaboratively, includes all team members and discusses ideas in a positive, inclusive manner.

At first, you might find that team members struggle to reach a decision. Once the team makes a decision, make sure each member understands it and how it affects the application. If your team has divided opinions, enlist the product manager to listen in and make the final decision.

Ride the seesaw: One team, one goal

While it's not an easy task, you should enforce a team-wide goal to create the highest-quality application for the customer. This can take time, patience and a willingness on the part of team members to ride the seesaw.

One day the team might be up, other days it might be down. Don't take the lows personally. The team can't summon role growth and job success simply by showing up and getting by; those come when team members have passion and an interest in their work. Inclusivity helps the team with this process.

Effective testers work with developers. As a tester, sometimes you must stand your ground, but other times, you can find a compromise. It's a learning process to understand when to assert yourself and when to yield.

Team meetings and daily standups don't automatically make for a cohesive team. Developers and testers must work together on projects directly and engage in design discussions to ensure a close-knit team. Additionally, testers can expand their expertise through these interactions with developers.

Developers should discuss designs and open themselves up to debate and questions. A healthy team can discuss, debate, argue, change its mind and come up with a high-quality application that customers love. Invest in your team's ability to become a cohesive group for more productivity, happier employees and a far better application.

Dig Deeper on Software development team structure and skills