Liderando como Engineering Manager
Como você pode ajudar seus liderados trabalhando no seu time
Esse post foi traduzido automaticamente do inglês. Se você encontrar algum erro, por favor entre em contato.
“Quanto e como um Engineering Manager (EM) deve moldar, agir e liderar seu time?”
Em um post anterior, já discuti algumas das mecânicas de ser um EM, mas outro aspecto que vale a pena discutir é o EM como um líder efetivo de time. E o que acontece quando ele não é.
Isso não é surpreendente, já que ser um líder ativo não é muito discutido e ainda é algo indefinido na indústria. Na verdade, a indústria de tecnologia tem atuado contra EMs como líderes, com uma forte oposição ao microgerenciamento.
Não me entenda mal, microgerenciamento é um problema real. No entanto, frequentemente vejo problemas no outro extremo do espectro: falta de liderança e delegação excessiva para empoderar engenheiros.
O espectro de gestão. Ao focar em não agir demais, gestores geralmente agem de menos.
É um tópico difícil de discutir porque empoderar pessoas é uma daquelas ações sempre positivas que sempre terão apoio. É o equivalente em gestão de pessoas de investir em mais qualidade. Todos estão (e deveriam estar) sempre apoiando mais qualidade. Ou mais empoderamento.
Porém, na prática, as ações tomadas para empoderamento podem acabar prejudicando engenheiros e seus times. Embora existam muitos aspectos disso, aqui estão alguns exemplos comuns que tenho visto repetidamente:
- Engenheiros que têm dificuldade em completar trabalho são avaliados por performance porque o time não tem um processo efetivo de colaboração e aprendizado.
- Engenheiros têm dificuldades quando deixados para gerenciar e organizar um projeto complexo com múltiplos stakeholders, muitos deles fora do alcance normal para o seu papel.
- Engenheiros que têm dificuldade em aderir à agenda do gestor para gerenciar seus projetos não conseguem encontrar tempo de foco para entregar software.
- Times que sofrem com objetivos pouco claros e requisitos confusos, já que tudo está sendo planejado e organizado por alguém que não tem experiência em gestão de projetos. E não recebe ajuda para aprender.
Olhando para o sistema
Quando se trabalha em um processo operacional como entrega de software, podemos contar com o pensamento sistêmico para nos ajudar a navegar por ele.
Nesse caso, vale lembrar que sempre existe um sistema. A única escolha que pode ser feita é se vamos ser intencionais sobre ele ou deixar os membros do time livres para trabalhar como quiserem.
E o problema de não agir com intenção é o tipo de processo que acaba sendo criado. Enquanto um sistema formal é visível e pode ser ajustado, um sistema informal pode levar a ineficiência e influência baseada em poder.
Tipos de sistema (de Systems Leadership)
Ao tentar evitar um processo restritivo e contraproducente, EMs criam times trabalhando com processos não autorizados. É onde alguém precisa “manipular o sistema” para conseguir fazer as coisas, ou onde a autoridade não é clara. Por exemplo, você pode ver isso na prática em times onde o trabalho é opaco e não está claro como está progredindo. Ou onde cada projeto é entregue de forma diferente, dificultando a participação dos membros do time.
Isso pode se tornar um ciclo vicioso, já que sistemas improdutivos levam a esforços fracassados, perda de confiança e mais supervisão e microgerenciamento. E isso vai adicionar pressão sobre os engenheiros. O esforço de empoderamento cria mais restrições para os membros do time e pode levar a problemas significativos de performance se o ciclo não for quebrado.
Uma abordagem diferente para alcançar o empoderamento que buscamos, onde engenheiros encontram espaço para fazer seu trabalho de forma efetiva e crescer enquanto fazem isso, é que os EMs sejam mais ativos no seu papel como líderes de time, moldando ativamente um sistema que permite que as pessoas prosperem.
Enquanto focar excessivamente em liberdade leva a pressão, focar em um time efetivo leva a um processo que permite que os membros do time tenham a liberdade necessária para serem bem-sucedidos.
Isso claramente não é uma tarefa simples. Todos os times e situações são diferentes. Gerenciar um time mais experiente é diferente de um menos experiente. Empresas são diferentes. Times de engenharia de vendas são diferentes de times focados em produto.
No entanto, alguns passos de alto nível funcionarão para qualquer time de engenharia de software:
-
Observe e entenda os sistemas ao redor do seu time. Qual é o processo do conceito à produção? Como os projetos e requisitos são definidos? Como o código é produzido e testado? Quanto mais você entender como o trabalho funciona como gestor, maior será sua capacidade de remover gargalos.
-
Estabilize seus principais processos de time e torne o trabalho visível. Alinhe com os membros do seu time quais são os principais processos de alto nível, documente-os e mantenha o time alinhado para executá-los de forma confiável. Torne o trabalho visível no seu board e revise constantemente como está progredindo.
-
Continue buscando melhoria e iteração. Trabalhe com seu time para revisar e analisar como está funcionando. Experimente melhorias para reduzir o tempo de ciclo.
Existem muitas técnicas e abordagens para resolver problemas específicos de time, mas ser intencional em entender como seu time trabalha junto e focar em melhorar isso sempre levará ao melhor ambiente.
Esse post faz parte de uma série sobre Liderando Times de Software com Pensamento Sistêmico.