Gerentes de desenvolvimento versus scrum masters

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

Dan Radigan Por Dan Radigan
Buscar tópicos

As equipes ágeis são estruturalmente diferentes das equipes cascata. As equipes cascata seguem a estrutura da organização e a programação normalmente é "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.

Scrum masters and development managers bridge the organizational gap between senior management and individual development teams. They work to optimize teams and individuals to deliver the best quality software that furthers company goals. The scrum master and the development manager also protect teams from outside distractions like feature creep, waterfall anti-patterns, cross-functional thrash, and side projects that distract from the team's true goals.

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 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 em cascata é que o gerente de desenvolvimento é um parceiro no processo de estimativa. Em uma equipe em cascata, uma conversa como esta não seria estranha:

  • "Quanto tempo vai levar para entregar essa função?" – gerente
  • "Seis semanas. A gente precisa fazer A, B, C para levar essa função para o mercado". – engenheiro
  • "Hmm. Entendi, mas você precisa encontrar uma forma de dar conta disso em quatro semanas". – gerente

Mas um gerente de desenvolvimento ágil sabe como contratar ótimos funcionários e confiar neles. Um princípio do processo ágil: as pessoas mais próximas ao trabalho são as melhores para definir o escopo e entregar o trabalho. A equipe define o cronograma. O gerente de desenvolvimento dá o diferencial com perguntas e verificação de suposições feitas no exercício de estimativa, sendo um parceiro, e não um ditador, no processo.

Você não vai ouvir "encontre uma forma de dar conta disso em quatro semanas" em organizações ágeis. (E, se ouvir, é 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 na mesma página. Como resultado, o Scrum Master coordena a maioria das entradas e saídas necessárias em um programa ágil. Essa pessoa lidera as cerimônias ágeis de inicialização do sprint, reuniões rápidas diárias, além da revisão e retrospectiva do sprint. Ela também trabalha com a equipe e os gerentes de desenvolvimento para determinar itens maiores, como epics e histórias do usuário individuais no backlog. Como o Scrum Master talvez não seja tão técnico quanto o restante da equipe, o gerente de desenvolvimento pode entrar em cena para fornecer um contexto importante entre o Scrum Master e a equipe quando houver falta de informações. À medida que a equipe fica mais especializada na aplicação do método ágil, o Scrum Master diminui o foco na estimativa e se concentra 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: estimativado ponto de 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, promoverão equipes ágeis altamente funcionais.

a seguir
Git