DEV Community

Cover image for How to Build a QA Team Engineers Actually Want to Work With
David Ingraham
David Ingraham

Posted on

How to Build a QA Team Engineers Actually Want to Work With

Why quality teams fail, what modern QA actually looks like, and how to build a culture developers trust and want to collaborate with.

If you’ve ever joined a software team where QA was treated like the final boss battle before release, the place where tickets go to die, then you know one of the quiet truths of software development:

Teams don’t struggle with quality because testing is bad.
They struggle because the relationship around testing is broken.

Engineers love quality.
Product managers love quality.
Leadership definitely loves quality.

And yet, despite all that love, “QA” somehow becomes the team people avoid until the very end of the cycle. Not because QA is slow or unhelpful, but because the way we integrate QA into development sets everyone up for friction. When the only time QA enters the conversation is during the final days of a sprint, everything QA finds becomes a roadblock, even if it’s exactly what the team needs to hear.

So the real question isn’t:

“How do we test more, earlier?”

It’s:

“How do we build a QA team engineers actually want to work with?”

That’s a cultural question, not a technical one.
And like any cultural shift, the answer begins long before the first test is ever written.


QA as Partners, Not Police

For years, many QA teams operated under a “late-gate” model, brought in only at the end, tasked with catching what slipped through earlier. That structure often meant QA inherits all risk, all bugs, and all last-minute fire drills.

According to TestRail’s 2025 industry report , late involvement is still one of the top challenges for QA teams, even inside organizations with modern tooling. While nearly 40% of teams report shifting QA earlier in some regards, to address this, a majority still operate inside legacy patterns.

Teams that do shift early see measurable benefits. Those that embed QA early and combine it with automation and CI/CD not only ship faster, they ship with fewer production defects. The improvement isn’t theoretical; it shows up directly in velocity and stability.

That means the problem isn’t just who finds the bug, it’s when the bug is found and whether QA is positioned as a safety net or a strategic collaborator.

Safety nets catch the fall.
Partners prevent the fall.


A Real Story: When Early Collaboration Changes Everything

In a recent talk at CypressConf, I shared a success story that changed the way I think about QA and engineering collaboration.

At my current company, before I joined, QA consisted of a single manual engineer working an eight-hour time difference from the rest of the team. He was excellent, detail-oriented, sharp, and reliable. But the system around him wasn’t. The team constantly faced unpredictable bugs, long regressions, and slow loops of quality feedback. Not because he lacked skill, but because the process wasn’t built for scale or speed. And in startups, time is money. If you can’t learn fast, you can’t survive long.

So my mission was simple:

  • Bring automation.
  • Build a Shift Left process.
  • Create a culture where everyone, not just QA, owns quality

This began with addressing the current team mentality because the hard truth is, the tool you use doesn’t matter if the mindset’s wrong. If the team doesn’t have accountability and buy-in, no framework or tool is going to save you. It sounds simple but it really isn’t. When deadlines tighten, people cut corners, skip conversations, push code as fast as possible and the first thing to diminish is testing and quality. It’s seen as a blocker, something that slows you down instead of helping you move faster.

Sound familiar?

However, Shifting Left isn’t about slowing down at all. It’s about creating the conditions that allow you to sprint consistently long-term. It’s about building a culture where mistakes are safe, where people trust one another, and where failing fast becomes a competitive advantage.

Because if we fail fast, we learn fast.
And if we learn fast, we improve fast.

So that’s where I started. I got to know my coworkers, understood their roles, responsibilities, pain points, and personal definitions of quality. Then together we defined a process everyone agreed on before writing a single line of code or a single test. This early alignment removed future friction, surprises and pushback. People weren’t being forced into a new process; they were excited to build it and be a part of it.

Once that mindset was in place, automation amplified it. Suddenly:

  • Product and QA collaborated on risks before development began
  • Developers proactively asked QA for early input
  • QA wrote automation in parallel with development
  • Test failures became team conversations
  • Flaky tests turned into puzzles, not headaches

The tool didn’t fix the culture.
The collaboration did.

And that’s the version of QA developers love working with: the team that helps them ship with confidence, not compliance. Together. But even with a collaborative culture, there’s one moment where QA and engineering collide the hardest…bugs and issues.


Engineers Want Feedback, Not Noise

With all this talk about partnership, we have to address the moment where QA and engineering collide the most: feedback.

There’s a misconception in tech that engineers dislike feedback. Rather, they dislike feedback that is late, vague, incomplete or creates more confusion than clarity.

High-quality QA feedback should be a service, not a verdict. And the way to measure that service is simple:

Does this feedback reduce uncertainty or increase it?

TestRail’s 2025 report found that unclear bug reports remain one of the top workflow inefficiencies for developers, a quiet tax teams pay sprint after sprint. Let’s take a look at a quick example on what bad vs good feedback might look like.

A Bad (Noise) Bug Report:

Title: Checkout broken

Description: Tried to check out — didn’t work.

Steps: Click checkout button

Expected: Should work

Actual: Didn’t

Notes: Happens sometimes.

Ok, this might be a bit of an exaggerated example but the point is hopefully clear. Noise reports don’t look noisy. Noise just means that it lacks everything that matters. The noise happens afterward, in the extensive detective work, ambiguity, Slack threads, and frustration it triggers amongst everyone.

This report doesn’t save time, it creates new work. Compare that to…

A Good (High-Fidelity) Bug Report:

Title: Checkout fails on second payment attempt due to stale session token

Environment: Staging, Safari

Steps:

  1. Add item to cart

  2. Enter payment info

  3. Double-click “Pay” in rapid succession

Expected: Duplicate clicks should be ignored

Actual: Second click sends a stale token → 409 Conflict

Impact: Revenue blocker; affects all Safari users

Artifacts: Screenshot, video, attached

The difference is clear. A High-fidelity feedback builds reliability. Reliability builds trust. Then trust unlocks collaboration. This report allows QA to set the engineering team up for success and mitigate any issues without unnecessary bug clarification.

And this level of clarity shouldn’t just stop at bugs. The best QA teams surface patterns that engineers can’t see from inside the code, like subtle regressions, design inconsistencies, brittle user flows, and scaling issues.

Collaborative teams don’t view this feedback as nitpicking. Rather it’s welcomed as insight. It’s the kind of feedback engineers actively want because it makes their work easier, their decisions safer, and their releases smoother.


The Technical Side of Trust: What Good Automation Looks Like

Up to this point we’ve talked about partnership, and culture, but there’s another dimension that defines whether engineers actually trust (and enjoy working with), your automation.

You can be empathetic, collaborative, and proactive, but if your test suite fails for reasons no one can explain, or breaks every other run, you lose trust immediately. Developers won’t say it out loud, but they think it…

“Why are the tests breaking again?”

“Is this real or flaky?”

A QA team engineers love working with understands that trust isn’t just relational, it’s technical. The relationship sets the foundation, then the technical reinforces it.

Shifting Left is all about thinking ahead; focusing on the high-level so the low-level execution goes smoothly. Test automation is no different and strong automation starts long before a single test is written, the foundation.

Start With the Foundation, Not the Test Count

Many teams rush into automation believing velocity comes from quantity. It doesn’t. A massive test suite built on a weak foundation becomes slow, brittle, and unpredictable. Developers stop trusting failures, and eventually stop looking at them altogether.

Scalable automation begins with intention: reusable helpers, a consistent test structure, clean patterns, solid test data strategy, environment stability, and early conversations about testability. When you invest in the foundation first, reliability stops being an aspiration and becomes the default. Flakes drop. Debugging speeds up. Adding new tests becomes painless. And suddenly, your automation suite becomes what it was always meant to be, a fast, trustworthy source of feedback.

Remember, Shift Left isn’t just about testing earlier; it’s about hearing the truth earlier. And you can only do that when you’re running tests you actually trust.

Protect the Green Baseline

Once you’ve built a foundation you can trust, the next step is protecting it relentlessly. A reliable suite only stays reliable when the team treats every failure with the same urgency, no matter the cause. Flakiness isn’t just an annoyance, it’s a threat to the credibility of your entire pipeline.

Keep failures meaningful. Obsess over the green baseline, over every failure. Treat your test code with the same respect as application code. You wouldn’t knowingly ship broken software to your users; well, with automation, the engineering team is the customer and now you have full control over what they experience.

When QA and engineering hold each other accountable, not merging code with broken tests, not hand-waving flaky failures, not letting noise creep in, the suite becomes something developers rely on instinctively. And when failures mean something, automation becomes one of the most trusted parts of your delivery process.

Make Debugging Effortless to Understand

The next layer of trust comes from visibility. When a test fails, people need to understand what happened without diving into a labyrinth of logs and guesswork. Good automation quickly hands people the answer, or at least the trail of breadcrumbs.

Clear videos. Screenshots. Network logs. A readable stack trace. A test title that sounds like a clear sentence. When context is immediate and available, anyone can help troubleshoot, developers, QA, even that one intern if they’re feeling brave.

Debugging shouldn’t feel like assembling Ikea furniture without the manual so invest in your debugging experience. Transforms failures from individual headaches into shared conversations. When QA empowers developers with clarity, developers feel empowered to help QA in return. It becomes a loop where visibility fuels collaboration.

QA in Every PR

One of the most effective collaboration practices I’ve ever been a part of was a lightweight rule: every PR requires QA approval before merge.

Now, that might raise some eyebrows, so let me clarify what it actually means.

In this model, QA isn’t a gatekeeper, and they’re definitely not blockers. They’re not doing a full engineering-style review or going line by line through the diff (though that can still happen when it’s useful). Instead, QA acts as the team’s final “quality check”, a quick conversation to confirm the change is genuinely ready to become part of the product.

What QA actually looks for is simple:

  • Are all relevant automated tests passing?
  • Were any new tests added where they should be?
  • Has QA pulled the branch and validated the change locally?
  • Is there anything surprising here that needs to be discussed before merge?

This small practice shifts quality left in the most natural way possible because every change now gets a quality conversation before it lands in the main branch. It eliminates merge surprises. It ensures everyone stays aligned. And it forces QA and engineering to work closely together on everything, creating a genuine partnership.

Most importantly, the conversation is fast. Sometimes it takes a minute. Sometimes it takes a second. Some changes don’t need new tests or deep verification. Others spark deeper discussions, quick brainstorming, or small improvements that would’ve become big problems later. Either way, this tiny ritual prevents hours of rework from untested merges, ensures automation grows with the product instead of becoming tech debt, and creates shared accountability, every change becomes everyone’s change.

And that’s the real shift: quality is no longer something that happens “after development.” It happens with development, on every branch, in every PR, through one simple conversation at a time.


Summary

Across every team and every industry shift, one truth has held steady:

*Quality is not something you do at the end.
It’s something you build into the relationship. *

In my experience, quality cultures emerge from people who care enough to collaborate. Meaning, a great QA team isn’t defined by how many bugs they find or how many tests they automate. They’re defined by how deeply they align with the team around them, how clearly they communicate, how early they collaborate, and how consistently they help people do their best work.

The teams that thrive know how to measure their progress. They look for friction, patterns in failures, breakdowns in communication, blind spots in automation, and when something isn’t working, they pivot early. They adjust, refine, and evolve instead of endure.

And most importantly, they celebrate the wins because quality work is often invisible. They celebrate the first green pipeline. The first stable regression suite. The first time QA and dev debug a failure together. The first release that feels boring… in the best possible way.

Celebration reinforces culture.
Culture reinforces trust.
Trust reinforces quality.

And everything else flows from there.

Be the QA that builds a quality culture. The kind that engineers want to work with.

As always, happy testing and even happier collaborating.

Top comments (0)