Qualidade de Software: como treinar seu time

Com a experiência que adquirimos no mercado nos deparamos com diferentes discursos sobre qualidade. Um dos mais frequentes é o discurso de que não é necessário cobrar ou ensinar qualidade para o time, pois isso é o básico e todos deveriam saber. Quando escuto alguém mencionando isso fico espantado, pois em muitos casos há uma falta de interesse em ajudar a equipe a evoluir.

Como professor, função que exerci por alguns anos, não consigo compactuar com essa ideia e entendo que quanto mais ajudarmos as pessoas melhores elas serão e melhores serão também os resultados para a empresa. Conhecimento nunca é demais, o ser humano sempre precisa estar aprendendo e evoluindo.

Pretendo aqui apresentar algumas dicas sobre modelos de treinamento que funcionaram nas empresas por onde trabalhei e também o porquê é importante treinar o seu time sobre qualidade de software (ou outros assuntos).

Por que é importante um treinamento de qualidade de software?

Diria que não só importante como fundamental. Qualidade, no geral, é algo muito pessoal, o que é qualidade para mim pode não ser para meus pares. Para a empresa, um treinamento sobre qualidade de software é essencial, porque deve-se estabelecer um senso único de qualidade que a corporação como um todo define em sua cultura.

Caso não haja um alinhamento entre os colaboradores da empresa, cada um vai trabalhar da forma como achar melhor e não haverá um padrão de desenvolvimento, muito menos de qualidade. Isso sem dúvida causará conflitos internos, pelo entendimento diverso sobre o tema e também irá dificultar o suporte, pois teremos artesãos de software independentes.

Quando efetuamos um treinamento sobre o que é qualidade para TI da empresa, estamos apresentando um modelo, um padrão e um conceito do que a empresa deseja e espera que seus colaboradores atendam. Quando trabalhamos com padrão, se perde menos tempo discutindo detalhes que não farão diferença no resultado final e causarão grandes gastos para a empresa. Ou seja, sim, treinar qualidade é importante e fundamental para a equipe de TI.

Ao treinar e engajar o time no mesmo objetivo e padrão, você estará reforçando o pensamento de time, de uma equipe de desenvolvimento e deixaremos para trás o pensamento de artesão de software independente. Dessa forma você verá maior colaboração e melhorará o clima intra organizacional da própria equipe.

Legal, mas o que é importante abordar em um treinamento de qualidade?

A qualidade tem inúmeras vertentes, podemos montar conceitos de qualidade em qualquer atividade que façamos, desde as mais simples (criar um chamado) até as mais complexas (construir um ERP). Nesse sentido vamos abordar os pontos mais importantes para um time de desenvolvimento ter o mínimo necessário para entregar seu trabalho com qualidade.

O primeiro ponto a ser abordado, sem dúvida é o conceito de qualidade que a empresa deseja assumir. Esse conceito é uma ideologia que deve ser implementada e incorporada na cultura do time. Quando incorporamos algo na nossa cultura, fica muito mais fácil de agirmos e seguirmos essa crença.

Seguido dessa crença é importante que você tenha definido o seu processo e sua estratégia de qualidade. Nesse ponto você deve apresentar o funcionamento do fluxo do processo, os controles e relatórios que a empresa espera ter e também deve mencionar a importância desse processo para o atingimento do conceito de qualidade almejado. Também apresentará a estratégia de qualidade desenvolvida, ela representa as regras que serão avaliadas e os pontos de controle que serão feitos.

Você deve definir um booking de padrões, essa será a bíblia de padronização do seu time de desenvolvimento. Nesse booking estará como deve-se criar uma request, seu padrão de nomenclatura, os padrões de nomenclatura de programas, variáveis, entre outras definições, bem como detalhes importantes sobre os conceitos de performance que a empresa deseja seguir.

Para finalizar você deverá apresentar as pessoas que serão responsáveis por garantir que o processo e a estratégia de qualidade será seguida por todos da empresa. Isso inclui funcionários e terceiros, todos deverão seguir rigorosamente os pontos definidos. Sempre deixe muito claro para as pessoas envolvidas a importância do que está sendo apresentado, e busque o entendimento em comum. Dessa forma será mais fácil o engajamento de todos e o funcionamento da estratégia.

O que funciona e não funciona nesses treinamentos?

Nas empresas por onde passei e na minha experiência em sala de aula nos últimos 10 anos na área de TI, conheci algumas formas de expor estes treinamentos. Antes de comentar modelos que funcionaram e que não funcionaram, é importante você saber que temos pessoas envolvidas e cada um possui um perfil diferente. Isso por si só já inviabiliza dizer que um jeito é certo e outro é errado. Ao ler esse texto, pense no seu time e qual o perfil que ele possui: é quieto e isolado? Gosta de interagir? As pessoas são mais experientes ou mais junior? São mais jovens ou mais velhos? Mais dinâmicas? Isso tudo  influenciará no tipo de treinamento que você executará.

Também, lembre-se do seu principal objetivo: engajar as pessoas a acreditarem na estratégia de qualidade que está sendo apresentada. Pelo fato de ter pessoas envolvidas, devemos recordar que todos gostamos de fazer parte de algo e ser importante dentro do nosso time. Incentive as pessoas a se desenvolverem e apresentarem temas, dar treinamentos e os ajude a atingir o sucesso. Essa atitude vai ajudar as pessoas a serem mais gratas por fazer parte de uma equipe que pensa no desenvolvimento de cada pessoa e todos serão mais interessados pelos assuntos.

Abaixo listo as estratégias que já usei e os resultados:

Estratégia 1: Treinamento expositivo em uma sala de reunião ou aula. Você leva todos para uma sala, em 1 hora apresenta todos os pontos que deseja e ao final cada pessoa tira dúvidas caso existam e finaliza-se o treinamento. No meu ponto de vista esse é o menos eficaz dos treinamentos, apesar de ser o mais barato. Na minha experiência, nunca obtive a colaboração e o engajamento necessário com esse modelo de treinamento.

Estratégia 2: Coding Dojo é uma técnica oriental de treinamento a quatro mãos. Ela consiste em você colocar todos envolvidos em uma sala, em frente ao computador para desenvolver exemplos, abordar o tema e praticar. Duas pessoas vão para o computador e o restante fica observando e comentando o que é certo e errado de se fazer, e em determinado tempo trocam as pessoas até que todos tenham participado. Eu sou apaixonado por essa prática, acho muito interativa, dinâmica, porém o modelo oriental não tem surtido muito efeito até hoje com os times que eu trabalhei. Essa estratégia depende muito do engajamento das pessoas e da participação delas, isso se torna complicado quando trabalhamos com um time grande.

Estratégia 3: Workshop sobre o tema é outra forma de trabalhar o treinamento. O workshop visa a interação entre as pessoas sobre o tema exposto. Geralmente se apresentam casos práticos e se abre para o debate, e é justamente neste ponto que se diferencia da estratégia 1 apresentada acima. É uma estratégia interessante e em grande parte dos casos funciona bem, a interação que as pessoas exercem sobre os casos práticos acaba enriquecendo o treinamento. E vamos ser sinceros, todo mundo já passou por casos engraçados ou estranhos e gosta de mencioná-los, por esse motivo é uma estratégia que tem funcionado com os times que trabalhei.

Estratégia 4: O campeão de colaboração e engajamento no meu ponto de vista. O Workchopp! Sim, chopp, você não leu errado. A ideia é tornar o treinamento um pouco mais relaxado e interativo. Esse conceito venho aplicando fora do horário de trabalho e de forma voluntária as pessoas têm participado e aprendido muito. A maioria das pessoas gosta de comida e cerveja, utilizei isso em prol do conhecimento e está dando muito certo. A ideia é envolver o time em um treinamento de 30 minutos explorando a parte conceitual e importâncias do que está sendo exposto enquanto eles podem comer alguma coisa e beber uma boa cerveja gelada, posteriormente a isso abrem-se discussões sobre os casos práticos para que todos possam interagir.

Essa última estratégia tem sido muito importante para o crescimento dos times que tenho participado e também no crescimento das empresas. O mais legal é que a empresa não precisa necessariamente pagar todos os custos dessa estratégia, os próprios colaboradores ajudam a dividir a conta e acabam gostando do modelo e do resultado obtido. É um happy hour com conhecimento! O maior benefício que vejo durante esse período é o engajamento do time ser maior e o entrosamento aumenta, as pessoas têm a oportunidade de se conhecerem e fazer amizades nesses momentos. Você verá que a performance e colaboração do seu time será muito maior após um período de workchopp.

Esses são os principais pontos a serem abordados e as estratégias que eu visualizo como possibilidades para esse tipo de treinamento. Avalie seu time e identifique o que se encaixa melhor no perfil das pessoas que compõem sua equipe e não esqueça: pessoas engajadas e crentes em uma ideologia não precisam de doutrinadores, pois executam o que precisa porque sabem que é o certo a ser feito.

 


Voltar