QA? Não. Engenheiros de Qualidade!

Tiago Góes
QAvengers
Published in
3 min readApr 26, 2024

Introdução

Escrever sobre o papel do QA nos times de desenvolvimento de software é crucial para entender a evolução da área e a importância de se distanciar da antiga percepção de que o QA se limita a “testar software”. Este artigo esclarece as diferenças entre os papéis de Tester, QA e QE (Quality Engineer) e a atuação de um profissional de QA dentro de um time de desenvolvimento.

Diferenças entre Tester, QA e QE

“Tester” é o termo mais tradicional e está mais diretamente associado à execução de testes manuais. Essa função se concentra na identificação de bugs ou defeitos em um software, operando muitas vezes ao final do ciclo de desenvolvimento. O tester verifica a conformidade do produto com os requisitos estabelecidos; porém, sua atuação é geralmente reativa — ele atua depois que o produto ou funcionalidade já foi desenvolvido.

O Quality Assurance (QA) é o processo pelo qual o produto é submetido durante a fase de desenvolvimento de software; quando este processo é claro e previsível, permite que as expectativas mínimas de qualidade especificadas sejam atendidas.

No mercado de trabalho, o termo QA também se refere a profissionais que atuam com qualidade de software em times. Chamar um profissional de qualidade de “garantidor da qualidade” passa a impressão de que ele é o único responsável pela qualidade do produto no geral, e não é!

O “QA” (profissão) amplia o escopo de atuação em comparação com um tester, focando na disseminação de boas práticas e garantindo que o processo de desenvolvimento seja atendido por todos desde o início do ciclo de desenvolvimento. Mais do que encontrar defeitos, o QA está envolvido no planejamento, design, implementação e manutenção de processos que asseguram a qualidade do produto. Isso inclui a definição de critérios de aceitação, elaboração de casos e cenários de teste, mapeamento de riscos, desenvolvimento e testes automatizados. O objetivo é prevenir defeitos para produzir um software de alta qualidade.

Beleza, Tiago e Thamyres, se “QA” não é profissão, como o profissional que trabalha com qualidade deveria ser chamado?

O profissional precisa compreender como um software é concebido, de modo que seja possível definir padrões de qualidade. Entender sobre engenharia de software é um requisito fundamental para isso; não estamos dizendo que ele precisa ter formação na área, mas sim compreender diversos aspectos nos quais servirá de base para sua atuação. Portanto, se um profissional de qualidade precisa conhecer sobre engenharia de software, por que não chamá-lo de Engenheiro de Qualidade de Software, ou Software Quality Engineer? Assim como outras áreas evoluíram ao longo dos anos, Back-end Engineer e Front-end Engineer, por exemplo.

Ao referir-se a um profissional de qualidade como “Quality Engineer”, reforça-se a ideia para o mercado de que esse profissional também é um engenheiro de software. Portanto, consegue contribuir com atividades “mais técnicas” como definição de arquitetura testável, revisão de código, automação de testes em diferentes camadas, resolução de bugs quick wins, CI/CD, além da análise profunda de problemas complexos de qualidade.

Conclusão

Com isso, espero que tenha ficado um pouco mais claro sobre as diferenças entre Tester, QA (processo de garantia de qualidade), QA (profissão para o mercado) e QE (engenheiro de software que atua com foco em qualidade). Vale ressaltar que essa é uma leitura que fazemos com base na nossa percepção e experiência na área ao longo dos anos em diversas empresas e times diferentes, mentoreando profissionais de qualidade de software em diferentes senioridades e contextos. Outros profissionais referência em qualidade de software no mercado também compartilham dessa visão, como Elias Nogueira no podcast Quality Assurance (QA) vs Quality Engineer (QE) e Og Maciel em Engenharia de Qualidade (QE).

Por: Tiago Góes e Thamyres Moraes

--

--

Tiago Góes
QAvengers

Software QE helping companies on delivering the best digital experiences for software products, aiming zero production bugs and releasing with confidence