Neven Matas, chefe de equipe de QA da Infinum, afirmou que antecipar o ciclo de entrega do time de testes possibilitou um aprendizado mais rápido e melhorou a colaboração. Matas falou na TestCon Moscou 2019, onde compartilhou as lições aprendidas sobre a construção de um time de QA em uma organização em crescimento.
Um dos desafios da Infinum era adaptar-se ao fluxo crescente de projetos, cada um com suas próprias demandas. As diferenças no tamanho das equipes, prazos, tecnologias e arquiteturas, geralmente significava que precisariam abordar cada projeto de uma forma diferente, enquanto tentavam contratar e orientar novas pessoas para o time de QA, disse Matas.
Sendo uma empresa de software, sabia-se que as demandas dos clientes podiam variar muito de projeto para projeto. Enquanto alguns precisavam apenas de alguns testes exploratórios de rotina, outros queriam investir em uma experiência completa de testes de software. Isso significava que, em um projeto, talvez fosse preciso fazer breves questionamentos sobre novas funcionalidade e, em outros, manter uma documentação extensiva de testes, automatizar casos de testes e se envolver no projeto em todos os níveis. "Não tínhamos nenhuma visão de solução possível", completou Matas.
A única coisa que todos os projetos da Infinum têm em comum é a perspectiva de antecipar o ciclo de testes da equipe, envolvendo testadores (júnior ou sênior) em todos os assuntos relacionados ao projeto, com ênfase na participação contínua como a chave para um bom QA.
Matas argumentou que simplesmente entregar o código compilado no final de uma iteração para alguém que não tem conhecimento de todo o processo de pensamento por trás, de maneira geral, impedia que eles fizessem um trabalho excelente. E afirmou: "Acredito firmemente que os erros podem ser evitados muito antes de uma única linha de código ser escrita". Ao intervir em um ponto anterior do processo, eles aproximaram a equipe, possibilitaram um aprendizado mais rápido e uma colaboração maior desde o início.
Matas também mencionou que desde então começaram a se esforçar muito mais para empregar e orientar mais testadores na tentativa de acompanhar o número crescente de desenvolvedores que vieram com a rápida expansão da empresa.
A visão de Matas para o sucesso na construção de um bom time de QA gira em torno de quatro áreas principais:
Contexto - Aproximar-se de cada projeto de software de maneira diferente, examinando os riscos, reconhecendo as principais features e desenvolvendo uma estratégia de testes personalizada que irá obter o maior ROI de teste.
Variedade - Empregar pessoas com uma bagagem variada que ajudarão a tornar a equipe heterogênea, trazendo conhecimentos valiosos e ajudando a equipe a crescer em várias direções.
Conhecimento - Trabalhar de maneira consistente no desenvolvimento das habilidades de seus membros, não deixando de reconhecer o fato de que as habilidades técnicas e pessoais geralmente têm igual importância.
Colaboração - Nenhum projeto de software não-trivial pode ser bem-sucedido a longo prazo sem uma colaboração positiva e poderosa entre os membros de uma equipe. Você deve capacitar seus funcionários para trabalhar uns com os outros, pressioná-los por melhorias, conversar com os clientes e deixar a zona de conforto com frequência. Se fizer isso de maneira consistente, nunca mais ouvirá o temido "este não é o meu trabalho".
O InfoQ conversou com Neven Matas após sua palestra na TestCon Moscou 2019.
InfoQ: Você mencionou em sua palestra que a atenção da qualidade mudou com o tempo. Poderia comentar um pouco mais sobre isso?
Neven Matas: No início, nem todo projeto tinha um testador especializado para lidar com os testes e as cargas de trabalho de qualidade eram distribuídas entre a equipe. Com o aumento da complexidade, descobrimos que ter uma pessoa de qualidade dedicada em cada projeto trazia benefícios tangíveis. Embora a qualidade seja sempre um esforço de equipe, esse tipo de dedicação exclusiva deu ao time de QA uma chance de encontrar maneiras novas de elevar os projetos cada vez mais perto da perfeição. Ninguém conhece o aplicativo tão bem quanto um testador de software, já que essa pessoa começa a conviver com ele todos os dias, em um nível que só é realmente familiar para os usuários finais. Não apenas isso, mas aqueles "visionários do cenário global" podem, no final, se tornar os "influenciadores de cenário global" se identificarem gargalos e encontrarem maneiras de corrigir problemas em todo o processo de desenvolvimento de software, não apenas no produto final.
InfoQ: Como você apoia sua equipe para manter a o desenvolvimento contínuo?
Matas: Existem várias coisas que implementamos em nosso processo que estão nos ajudando a melhorar continuamente:
- Workshops - Semanalmente, o time de QA realiza uma reunião de duas horas para compartilhar conhecimento sobre um tópico teórico ou prático. Os workshops vão desde "como ser mais assertivo" até "escrever declarações no teste unitário".
- Reuniões Individuais - Todas as semanas, como líder de equipe, sento-me com os membros do meu time para analisar os problemas que cada um pode ter em seus projetos específicos e as maneiras de enfrentá-los no curto prazo. Também discutimos as coisas que conseguiram fazer bem, a fim de compartilhar esse conhecimento mais tarde com toda a equipe.
- QA Buddy - Reconhecemos a necessidade de um feedback antecipado, com isso fizemos com que cada um ficasse pareado a uma pessoa diferente a cada semana. Isso significa que você trabalhará em conjunto no compartilhamento de experiências, permitindo examinar os casos de teste e as abordagens uns dos outros, e fazendo alguns testes em pares para ajudar a minimizar os efeitos da fadiga do testador.
- Orçamento Educacional - Cada membro do time tem direito a um orçamento educacional anual que pode ser gasto em workshops, tutoriais on-line, softwares, conferências, livros, etc. Também organizamos uma pequena biblioteca de QA e desenvolvimento de software que está aberta a todos.
- Troca de Projetos - Uma coisa importante é a "fadiga do testador" - o fenômeno em que você, como testador, não consegue mais ver o todo, somente algo específico, devido à familiaridade excessiva com o projeto. Uma solução bem-vinda é mudar de projeto por um tempo para refrescar os sentidos, ganhar uma nova perspectiva e revigorar suas habilidades de testador.