QA e QE: a evolução da carreira de qualidade de software

Neste artigo você vai ver:

Acredito que desde o primeiro dia na área de tecnologia, por volta de 2008, eu escuto que “o papel do QA e QE está com os dias contados” dentro dos times de desenvolvimento de software. 

Nunca dei muita credibilidade, pois notava que ainda era possível agregar valor na entrega do produto e me sentia seguro com isso. Até que, depois de um tempo, as complexidades das entregas aumentaram, os prazos reduziram e as cobranças por sistemas cada vez com mais qualidade se tornaram mais comuns e, neste cenário, o que estava fazendo apenas como um QA acabou perdendo espaço e foi necessário começar uma “evolução“.

Neste texto, quero trazer o tema: “a pessoa QA como conhecíamos no passado não está com os dias contados, mas precisa evoluir!”

Mas, antes de seguir com conteúdo, é extremamente importante alinhar algumas premissas:

  • O que será dito neste conteúdo diz respeito apenas à evolução de carreira da pessoa analista dentro dos times. Em momento algum será dito (mesmo que nas entrelinhas) que devemos abrir mão da qualidade nos nossos projetos. Qualidade é inegociável e é responsabilidade de todo mundo!
  • Neste texto, tratarei apenas de hard skills da área técnica da evolução na carreira de QA para QE. Tópicos como “conhecimento de negócio”, “soft skills” e afins são e sempre serão necessários para qualquer evolução dentro da carreira. Dessa forma, não importa se ela tende para o lado técnico ou para o lado “gerencial”, pois fazem parte de ambas.

O que são QA e QE?

Em primeiro lugar, para contextualizar e definir o que penso para as siglas QA e QE, vou fazer uma breve descrição de cada uma delas aqui:

  • QA: a pessoa QA (Quality Analyst) ou QAA (Quality Assurance Analyst) é a responsável por garantir que os requisitos ou critérios de aceite levantados no começo do planejamento do produto estejam satisfeitos depois que o produto foi desenvolvido. Na grande maioria dos times, as atividades atribuídas aos QAs são relacionadas ao planejamento de casos de teste e execução manual deles. 
  • QE: a pessoa QE (Quality Engineer) ou QAE (Quality Assurance Engineer) possui os mesmos objetivos que uma pessoa QA mais outros pontos, como: mindset de qualidade e objetivos técnicos, envolvendo automações; camadas de integração; atividades próximas aos times de desenvolvimento e DevOps; e preocupação com requisitos não funcionais (como performance e outros). Isso torna o papel QE um dos próximos passos na carreira (se formos avaliar com um viés técnico) do papel de QA, principalmente se formos analisar aqueles que trabalham como no modelo T-Shaped ou outros.

Comparativo

A tabela abaixo ilustra, de maneira objetiva, quais as principais características de cada um dos papéis:

QAQE
Planejamento de TestesSim, essa etapa é essencial independentemente do papel.Sim, essa etapa é essencial independentemente do papel.
Execução Testes ManuaisSim, a maioria dos testes  trabalhados estão na camada de testes de sistema e são executados de maneira manual.Com o foco mais voltado para atividades automatizadas, só realiza a execução manual quando necessário (devido a tempo, viabilidade técnica, etc.)
Criação e Execução de Testes AutomatizadosApesar de não ser o foco do papel, faz um pouco de automação para evitar algumas tarefas repetitivas.Como uma das principais atividades, a automação de testes é planejada e implementada desde o início do trabalho visando garantir a qualidade do software o quanto antes.
Atuação em Testes Não FuncionaisÉ um dos responsáveis por realizar este tipo de teste devido à capacidade técnica e conhecimento.
Apoio técnico sobre Testes aos times de Desenvolvimento e DevOpsQuando se trata de qualidade, deve ser capaz de ajudar em todas as etapas do desenvolvimento de software, desde o início do planejamento/codificação até a entrega em esteiras de CI/CD.

Por outro lado, existem ainda outros tipos de carreiras que tenho visto no mercado que surgiram a partir do QA, como Software Development Engineer in Test (SDET), Software Engineer in Test, etc. Porém, neste conteúdo, não vou entrar em detalhes sobre quais são as diferenças entre elas e o QE, visto que não é o objetivo aqui.

Por que é necessário evoluir?

Voltando ao tema da evolução, com o advento do Manifesto para Desenvolvimento Ágil e a necessidade de entregas cada mais vez mais rápidas, mecanismos automatizados de integração e entrega contínua, as atividades da pessoa QA, como eram feitas acabaram se tornando gargalo para os times, pois processos manuais interrompem esteiras bem planejadas e acabam atrasando, por algum motivo, a release.

Para solucionar este problema, digo, visando a melhoria contínua do processo de desenvolvimento, a pessoa QA precisa se adaptar às necessidades do time e, nesse caso em específico, criar maneiras de executar suas tarefas mais rapidamente (sem perder qualidade), de forma paralela (se possível) e incluir suas validações no fluxo automático. A forma de se fazer isso é automatizar os testes.

Testes de sistema ou funcionais automatizados

Certamente, é possível afirmar que, se bem planejados e arquitetados, podem facilmente ser executados de maneira paralela, sem a necessidade de uma intervenção manual e se tornar um step da entrega. Começando a pensar e a realizar este tipo de tarefa, a pessoa QA está começando a assumir tarefas de um QE, isto é, evoluindo em sua carreira.

Vale ressaltar que os testes automatizados devem ser planejados e derivados a partir do mesmo processo que o papel da pessoa QA utilizava ao levantar os casos de teste necessários para validar um determinado fluxo, requisito ou cenário, portanto, todos os conhecimentos, teóricos e práticos, da disciplina de qualidade de software devem se fazer presentes em uma pessoa QE.

Com a automação já frequente no fluxo das entregas, a pessoa QE consegue focar em diversas outras atividades que visam acrescentar valor ao produto. Como exemplos de atividades que podem ser adicionadas ao portfólio do QE, temos os testes que exigem uma capacidade de acessar camadas de serviços, como Testes de Contrato, ou testes que validam pontos não funcionais da aplicação, como Testes de Performance

Seguindo um viés técnico, ainda existem atividades que podem permear o desenvolvimento (apoiando devs em situações onde o background de qualidade pode ser útil, como o apoio na adoção de Testes de Mutação). Além da parte de delivery, CI/CD e cloud (colaborando com os times de DevSecOps e SREs).

Novos termos e abordagens

Deve-se mencionar que, ao se associar a esses novos modelos de trabalho onde a agilidade é necessariamente importante, alguns termos e abordagens foram criados nos últimos anos e estão, de certa forma, ligados ao papel QE, como:

  • Shift Left Testing: onde atividades de testes que eram executadas no final do processo de desenvolvimento começam a ser realizadas já nas primeiras etapas;
  • Pirâmide de Testes: que define camadas onde determinados tipos de testes serão aplicados.

Importante frisar que atividades manuais continuam necessárias para o QE. Porém, seguindo boas práticas (inclusive citadas em artigos sobre pirâmides de teste), estas tarefas focam em funcionalidades que não são passíveis de automação (ou com o custo-benefício é baixo) e cenários pontuais para validação final do produto.

E como evoluir?

Muito se fala sobre o que é e o porquê dar o próximo passo na carreira, então, além das diversas referências citadas por todo o texto, ficarão aqui algumas sugestões minhas de como começar este movimento. 

Lembrando que, como de praxe, a curiosidade deve ser sempre uma característica de todas as pessoas que trabalham com qualidade de software. Portanto não se atenha apenas a essas indicações.

Livros e artigos

  • O testador está morto: vídeo onde abordam o tema sobre a evolução da carreira.
  • Roadmap: QA Engineer: roadmap traçando os principais conhecimentos necessários para evolução da carreira.
  • Anti-Patterns de Automação de Testes: artigo muito útil para entender que não basta sair automatizando testes de qualquer forma. 
  • Test Automation University: uma plataforma com diversos cursos para um QE se aprofundar nos assuntos da área.

Criadores de conteúdo

Dessa forma, também vale mencionar pessoas criadoras de conteúdos e cursos que contribuem muito com a comunidade e que possuem um bom material:

Para iniciantes

Para quem está começando na área, é preciso conhecer além de todo o material citado, mais conceitos básicos de testes de software, uma vez que esta base é o passo inicial para carreira em qualidade de software:

  • Syllabus CTFL: material de estudo gratuito da principal certificação de testes.
  • Syllabus CTF-AT: material de estudo gratuito de uma das principais certificações da atualidade.
  • Base de Conhecimento em Teste de Software: livro de referência para profissionais iniciantes na área. 

Conclusão

Enfim, resumidamente, o papel da pessoa QA como conhecemos não vai acabar. Porém, é necessário começar a trabalhar, para muitos, fora da zona de conforto, para dar o próximo passo na carreira. 

Ou seja, se pretende seguir a carreira técnica dentro da área de qualidade. Importante saber que itens cada vez mais próximos da camada de desenvolvimento poderão ser exigidos. E, mais importante: desafie-se, crie e aproveite as oportunidades, adquira experiência e evolua.

Muitos já começaram a fazer a transição e ainda não haviam se dado conta, e para estes a sugestão é não parar no meio do caminho. Automação é um bom ponto, mas é só a ponta do iceberg. A tecnologia não para de evoluir e não podemos parar também.

Por outro lado, obviamente que ainda existem vagas para QAs. No entanto, estão mais pontuais e/ou voltas para cargos de senioridade de início de carreira.

E você, o que acha? Me conte nos comentários a sua opinião.

Imagem do conteúdo "QA e QE: a evolução da carreira de qualidade de software" em que a imagem conta com uma escada em espécie de quadrados de madeira, levando até o topo com uma luz feita em forma de peças de quebra-cabeça. Do primeiro degrau ao último conteúdo uma seta.
marco
Staff QA Engineer
Especialista em Qualidade de Software com mais de 15 anos de experiência na indústria de tecnologia, atualmente está como Staff QA Engineer na Zup. Apaixonado por qualidade e inovação, está sempre em busca de aprender mais, disseminar conhecimento e, positivamente, impactar a comunidade de TI.

Este site utiliza cookies para proporcionar uma experiência de navegação melhor. Consulte nossa Política de Privacidade.