Doutrinação ágil

Bolo de fubá

Para aqueles que buscam uma solução rápida, uma receita de bolo de fubá exclusiva.

Uma das primeiras conclusões que se chega em um graduação em psicologia é que não há uma receita pronta para estabelecer uma melhor interação entre pessoas. Não é só jogar um ovo, meia xícara de leite, colocar no micro-ondas por dez minutos e teremos uma equipe capacitada, motivada e alinhada com os objetivos da empresa. E quanto mais olho os textos e as ementas de cursos sobre as metodologias ágeis sob esta perspectiva mais vejo que tudo é feito como receita de bolo, sendo que cada empresa demanda uma certa proporção de ingredientes que não é inicialmente dada. Antes não havia método algum, entendo, mas agora saboreamos bolo solado como se fosse ambrosia.

Costumava rir dos gerentes que não percebiam que metodologias envolviam tanto processos quanto pessoas. Não faço mais isso. Vejo mais claramente agora qual é o custo alienante para cada profissional de uma célula de desenvolvimento.

É extremamente difícil escapar de oferecer uma solução para uma equipe de tecnologia. Lembrando de todas as piadas de humanas versus exatas que ouvi em todos estes anos nesta indústria vital, esta diferença de pensamento existe e dificulta a comunicação. A solução de problemas é o modo de vida de um programador. Como dizer que para certas coisas no mundo corporativo não há uma solução? Ou então que a busca por uma interação pessoal ótima é uma utopia saudável para todo profissional. O mais perto de conseguir isso foi quando sugeri que alguém devesse desligar o computador para que a rede voltasse a funcionar. Não faz sentido algum, mas conseguimos chegar a um resultado favorável empiricamente!

Todos aqueles instrutores de metodologias ágeis tiveram mais sucesso do que eu. Eles apareceram com um manifesto, algumas dinâmicas de grupo e nenhuma pergunta sobre como o mundo funciona deveria ser feita. Alguns textos ou palestras são claramente doutrinações e não treinamentos. Funciona do mesmo modo que o computador com problema de rede: desliga a cultura da empresa, desfragmenta o disco e liga de novo.

O problema com doutrinas é que não é nada científico, o que torna tudo muito irônico. Enquanto tentamos provar nossas soluções com o código logicamente construído, todo o processo das metodologias ágeis que envolvem pessoas é ritualístico e dogmático.

Há pouco ouvi um astrólogo defendendo sua prática em uma recepção de consultório médico. Para ele, o método científico não dá conta de explicar todos os fenômenos e isso inclui principalmente os que são relacionados às pessoas. Deste modo, tudo que não pode ser explicado deve ser validado, tal como a astrologia!

Para qualquer bom cético, a lógica do astrólogo não faz sentido. Mas porque aceitamos então a opinião de alguém como a solução perfeita para nossos problemas de interação pessoal? E por que compramos esta solução sem questionar ou mesmo investigar qual é a formação do instrutor? O que acontece quando a metodologia falha, a empresa quebra, todo mundo é demitido? Vamos culpar a ira dos deuses?

Ainda não sabemos se a psicologia é uma ciência ou não. Alguns autores acreditam que esta é uma disciplina nova demais para ser estabelecida como ciência e que a neurociência nos trará mais indícios com os avanços da tecnologia. Mas certamente a complexidade do indivíduo não pode ser explicada por um método que usa duas variáveis para validar qualquer teoria. De qualquer forma, há muitos outros profissionais tentando fugir destas doutrinas para explicar estes fenômenos um a um, contextualizados nos meios onde eles ocorrem. Com times de tecnologia, não deveria ser diferente. O que falta então para evoluirmos de doutrina para um método ágil de verdade?

Tags: ,

O mito do pau pra toda obra em tecnologia

Nas últimas semanas, fiz uma provocação grosseira no Twitter e não consegui respostas satisfatórias: qual seria a diferença entre webmaster e full stack web developer? A complexidade do trabalho com o mercado digital, do planejamento à publicação na Web, foi incrementada absurdamente com a profissionalização do mercado e foi uma resposta às falhas grosseiras como a bolha dotcom. Por que então estamos adotando uma visão tão generalista quanto a da década de 1990?

Quando li o texto de Laurence Gellert tive a sensação de que o termo foi mal traduzido e contextualizado nos times de desenvolvimento brasileiros (ou não: Facebook aparenta ser uma empresa com uma cultura muito equivocada). Afinal, nossa visão sobre generalistas e especialistas é muito diferente da dos norte-americanos, por exemplo. A experiência da formação universitária lá é construída pelo aluno durante curso. No Brasil, estamos presos a currículos altamente especializados e herméticos. A flexibilidade de currículos universitários no exterior permite acompanhar melhor a tendência volátil do mercado de trabalho. Se a especialização foi valorizada na segunda metade do século XX, a generalização e a interdisciplinaridade são diferenciais na tal era do conhecimento.

Neste momento, vemos as universidades brasileiras buscando esta interdisciplinaridade e vejo um retorno ainda pouco útil. Ao invés de uma visão ampla de negócio que o mercado exige, os alunos dos cursos de tecnologia estão ocupando suas grades com Direitos Humanos e Qualidade de Vida (oi?). Do que adianta alterar cursos para introduzir disciplinas novas (multidisciplinaridade) se as grades não são construídas para favorecer a construção do conhecimento entre elas (interdisciplinaridade, transdisciplinaridade)?

Um resultado provável disso, ou algo que não foi solucionado ainda, é a eterna busca pelo acúmulo de técnicas (techné) ao invés de práticas (práxis). Ao buscar uma vaga para times de tecnologia, é fácil encontrar uma lista gigante de requisitos que vão do domínio do Photoshop ao realização de deploy de aplicações. Não é só irreal como opressivo. As graduações não preparam este tipo de generalista e nem deveria. Quantas vezes ouvi relatos de jovens passando o fim de semana debruçados sobre tutoriais para aprender uma nova técnica enquanto não conseguem relacionar o porquê daquela técnica ser boa para o negócio. E se somente a técnica é valorizada no mercado, por que não trocar uma graduação por um curso da técnica mais quente no desenvolvimento de aplicações do ano?

O Scrum, por exemplo, não ajuda nesta questão. Os ciclos rápidos de desenvolvimento são bons para manter uma alta eficiência do time e sabemos bem que o custo disso é um corte na participação na estratégia da empresa. A alienação é tal que há desenvolvedores que agradecem quando recebem as tarefas prontas e mastigadas bastando definir complexidade.

Apesar das origens do Kanban nas fábricas da Toyota, o agile não era sobre transformar pessoas em engrenagens e sim formar times autogerenciáveis com seres pensantes e ativos. Os métodos ágeis não combinam com alienação! A motivação básica de cada um no time deveria ser entender como o produto funciona do princípio ao fim. No entanto, como fazer isso se o profissional de TI só entra em contato com o mundo fora da célula no planning e no review através dos olhos do product owner?

A cultura interdisciplinar ou transdisciplinar é algo que devemos construir nas próximas gerações de profissionais do mercado digital. É uma característica cultural intrínseca à formação de cada um de nós. Generalizando absurdamente, é como se fosse escrito em cada um de nós em uma linguagem de programação baixo nível e tal característica não se muda com dinâmicas de grupo e muito menos com o acúmulo de técnicas aprendidas.

No entanto, podemos começar conhecendo melhor cada um do time. Uma matriz de competências, por exemplo, é uma ferramenta muito mais eficaz e é de implementação rápida. Incentivar a diversidade dentro do time também é uma ótima forma de aumentar a criatividade e facilitar soluções mais integradas com a estratégia de negócio do que com as técnicas utilizadas (ou quem nunca sugeriu uma tarefa porque é fácil em fazer na linguagem da moda XPTO?).

Existem paliativos para reduzir a alienação de desenvolvedores do processo de trabalho e cada time pode ter uma ideia para compartilhar com a comunidade. Mas é essencial relembrar que o que é bom para o Facebook pode não ser bom para a sua empresa.

Outros olhares sobre o tal full stack developer:

Tags: , , ,