Gerentes de desenvolvimento versus scrum masters

É uma luta até a morte! (É brincadeira. Essas duas funções coexistem perfeitamente.)

Dan Radigan Dan Radigan
Buscar tópicos

As equipes ágeis  e as equipes cascata têm estruturas diferentes. As equipes cascata seguem a estrutura da organização e a programação, em geral, é "de cima para baixo", ou seja, o gerenciamento define o ritmo e a agenda. No desenvolvimento ágil, a equipe é auto-organizável. Ela define sua própria agenda com base nas prioridades do proprietário do produto e a capacidade de disponibilidade de cada equipe.

Os scrum masters e os gerentes de desenvolvimento unem a lacuna organizacional entre o gerenciamento sênior e as equipes de desenvolvimento. Eles trabalham para otimizar as equipes e os indivíduos de modo a fornecer o melhor software que promova as metas da empresa. O scrum master e o gerente de desenvolvimento também protegem as equipes de distrações externas, como fluência do recurso, antipadrões de cascata, problemas multifuncionais e projetos paralelos que distraem a equipe de suas verdadeiras metas.

Os scrums masters e os gerentes de desenvolvimento normalmente trabalham com várias equipes ágeis. Vejamos como eles trabalham com cada equipe em portfólios ágeis maiores.

O que é um gerente de desenvolvimento?

Os gerentes de desenvolvimento são fundamentais nas organizações ágeis e sua função é substancial. Eles são responsáveis pela qualidade do produto, da arquitetura do código até a qualidade do usuário final. Eles se envolvem com as revisões de código para garantir que os membros da equipe estejam contribuindo com um código que atenda as metas de curto e longo prazo do programa e, como estão sempre muito próximos da equipe, eles normalmente influenciam nas escolhas de tecnologia para o programa. Essa proximidade com o processo e o produto permite que os gerentes de desenvolvimento comuniquem o contexto internamente à equipe e a toda a organização.

Bons gerentes de desenvolvimento sabem formar ótimas equipes, e isso começa com a contratação. Eles conduzem o processo de contratação e estão bem posicionados para fazer isso, pois:

  • A contratação consome muito tempo e distrai a equipe
  • A procura por candidatos tira o foco da criação de ótimos produtos
  • Um gerente de desenvolvimento pode ajudar a reduzir alguns dos efeitos da integração à medida que novos funcionários entram para a equipe

Simplificando: quando o gerente de desenvolvimento assume as tarefas de recrutamento e contratação, a equipe consegue se focar apenas no produto.

Os gerentes de desenvolvimento também atuam como parceiros e mentores, pois conhecem os fundamentos do gerenciamento: reuniões individuais, dão feedback e orientação. Os gerentes de desenvolvimento bem-sucedidos orientam engenheiros para que eles proporcionem o melhor: ideias, código, testes e cultura. Às vezes, a equipe vai ter dificuldades com decisões que variam do design arquitetônico até a estratégia de ramificação. Os gerentes de desenvolvimento bem preparados sabem quando intervir ou quando deixar a equipe continuar a tentar para que aprendam.

Uma das grandes diferenças entre as equipes ágeis e as equipes cascata é que o gerente de desenvolvimento é um parceiro no processo de estimativa. Em uma equipe cascata, uma conversa como essa poderia ser comum:

  • "E aí, quanto tempo vai demorar para entregar este recurso?" – gerente
  • "Vai demorar seis semanas, Precisamos fazer A, B e C para comercializar o recurso". – engenheiro
  • "Hum, faz sentido. No entanto, eu preciso encontrar uma forma dele ser concluído em quatro semanas". – gerente

Porém, um gerente de desenvolvimento ágil sabe contratar ótimas pessoas e confia nelas. Um princípio fundamental do processo ágil é que aqueles mais próximos ao trabalho são mais capazes de realizar o escopo e a entrega. A equipe define o cronograma. O gerente de desenvolvimento adiciona valor exclusivo ao investigar e avaliar as suposições feitas no exercício de estimativa – como parceiro do processo, não mandante.

Você não vai ouvir "encontre um modo de fazer isso em quatro semanas" em organizações ágeis. (E, se ouvir, isso é um pouco estranho, não?)

O que é um scrum master?

Scrum masters são líderes de projeto em uma equipe ágil cujo foco é a otimização do desempenho, trabalhando com o proprietário do produto e a equipe para garantir sprints consistentes e bem-sucedidos. Eles também fazem a coordenação entre equipes, de modo que a equipe principal possa se focar no desenvolvimento do produto.

A meta do scrum master é manter a eficiência e garantir que todos estejam falando a mesma língua. Como resultado, o scrum master coordena a maioria das entradas e saídas necessárias para um programa ágil. Ele(a) lidera as cerimônias ágeis de início do sprint, as reuniões rápidas diárias, a revisão do sprint, a retrospectiva do sprint e trabalha com a equipe e com os gerentes de desenvolvimento para estimar itens maiores, como epics e histórias do usuário individuais no backlog. O scrum master pode não ser tão técnico quanto o resto da equipe, então o gerente de desenvolvimento pode se envolver para emprestar contexto valioso ao scrum master e à equipe quando ocorrer uma falta de informação. À medida que a equipe amadurece na aplicação da agilidade, o scrum master foca menos na estimativa e mais na otimização da velocidade de entrega.

O scrum master também atua como um treinador ágil nas grandes organizações, ajudando a equipe a adotar e criar práticas ágeis por todo o ciclo de vida do produto: estimativa do ponto da história, planejamento de sprint e entrega contínua. O aspecto do treinamento do trabalho do scrum master é fundamental. Como especialistas ágeis, eles sabem o motivo pelo qual o método ágil é o ideal para o projeto e a empresa e podem falar a favor do método quando a empresa estiver passando pelas desvantagens do uso do método.

Scrum masters e gerentes de desenvolvimento fazem parcerias em portfólios ágeis

A maioria das equipes cascata são centradas no gerente. Elas esperam que os gerentes definam prioridades, monitorem o progresso e avaliem o desempenho. Por outro lado, as equipes ágeis são auto-organizáveis e têm seu próprio roteiro e processo de entrega. Para que isso funcione em organizações maiores, os scrum masters e os gerentes de desenvolvimento trabalham juntos para criar uma cultura ágil em toda a organização, agindo como intermediários entre as equipes e o gerenciamento de nível C. Como as duas funções trabalham com várias equipes ágeis, elas são fundamentais para o portfólio ágil.

O foco do scrum master é na adoção e na implementação do método ágil pela equipe. O gerente de desenvolvimento tem como foco a contratação das pessoas certas, o treinamento dos membros da equipe e a garantia de uma boa cultura de desenvolvimento nas equipes. Ambas as funções, trabalhando juntas, vão promover equipes ágeis altamente funcionais.

a seguir
Git