You are currently browsing the archives for the liderança category


Rápidos conselhos para gerentes humanos

Gerenciar um time de desenvolvimento como um verdadeiro líder – e não um despota, ditador, que micro-gerencia cada passo – não é um tarefa fácil, acredite. Você não tem que lidar apenas e tão somente com Ruby, C#, Java, ou seja lá qual for a linguagem de programação que você use em seus projetos. Você tem que lidar na maior parte do tempo com algo muito maior e mais complexo do que isso. Você tem que lidar com “pessoas”.

Lidar com pessoas não é uma tarefa fácil. Não é mesmo!

1- Por causa das diferenças

Porque as pessoas são diferentes umas das outras; umas mais, outras menos, mas todas são.

Isso é muito bom [e dispensa dizer o porque], mas ao mesmo tempo é bem desafiador, porque você precisa aprender a maneira adequada para lidar com cada pessoa. Às vezes, o que deixa uma pessoas feliz e motiva, pode inesperadamente deixar outra completamente desmotivada.

2- Por causa das expectativas

Porque inevitavelmente as pessoas criam expectativas a seu respeito, que muitas vezes não podem ser correspondidas, seja por sua causa ou por causa do sistema no qual vocês estão inseridos. E infelizmente, a reciproca é verdadeira – afinal de contas, você também é uma pessoa –, o que quer dizer que você também corre o risco de acabar decepcionado, tanto quanto elas.

3- Por causa dos anseios

Porque as pessoas possuem seus próprios anseios, que algumas vezes são bem parecidos com os seus, mas outras tantas vezes são tão diferentes quanto o dia e a noite.

Uff! É preciso dizer mais? Acho que não…

O que fazer então?

Não. Tornar-se um ermitão não é uma opção. Esqueça isso!

1- Aceite, você não vai acertar sempre

Na verdade, algumas vezes você vai errar até mesmo quando pensa estar fazendo o maior acerto da sua vida. E a bem da verdade, talvez seja exatamente isso que torne esse trabalho tão interessante, tão humano e tão pouco tedioso.

2- Aprenda o máximo que puder com seus erros

É bem verdade que podemos aprender bastante com os erros dos outros. No entanto, algumas de nossas mais ricas experiências de aprendizado são provenientes de nossos próprios erros.

Não despreze seus erros e simplesmente passe uma borracha neles. Se você os apagar, haverá uma grande chance de cometê-los novamente.

3- Não tenha a ilusão de que sempre haverá consenso entre você e as pessoas as quais você lidera

Acho que essa é uma das coisas que mais preocupam um líder, porque a bem da verdade, todos nós – pessoas que somos – temos algum grau de dificuldade de lidar com opiniões divergentes das nossas, quer seja quando lideramos ou quando somos liderados.

A melhor coisa a fazer então é tentar compreender muito bem as opiniões das pessoas as quais você lidera e tentar chegar com elas a decisões convergentes. No entanto, quando não houver convergência de opiniões em decisões que cabe a você tomar, tome-as de acordo com o que você acredita realmente ser o melhor.

Lembre-se: você é o líder e é o responsável por suas decisões, quer partam de você ou não.

Se você é humano, gerente…

Deveria considerar esses rápidos conselhos. IMHO.

Tchau, tchau gerente, agora sou Scrum!

Já que Scrum define apenas três papéis: Scrum Master, Product Owner e Time, onde é que fica o papel do Gerente de Desenvolvimento? Será que é hora de dizer adeus?

Contextualizando

Há pouco tempo assumi uma posição na Locaweb como gerente da equipe de desenvolvimento responsável pelos sistemas centrais da empresa. É uma equipe relativamente grande, dividida em três times de multi-talentosos desenvolvedores, um para cada domínio de negócio que lidamos: Provisionamento, Cobrança e Atendimento; além de dois sysadmins que dão suporte a estes times em tempo integral.

Os times atualmente estão organizados como times de Scrum tipicos, com os tais multi-talentosos desenvolvedores, um Scrum Master e um Product Owner – que no nosso caso, é um gerente de produtos que trabalhar fortemente conosco, extremamente comprometido com os interesses de negócio da empresa.

Desde então, comecei a buscar me interar um pouco mais sobre assuntos de gerenciamento e liderança ao melhor espírito ágil, com a preocupação de não me tornar aquele tipo de gerente que simplesmente “delarga” e vive alienado; ou pior ainda, aquele que comanda e controla o tempo todo, e queno final das contas, mais caroça e atrapalha do que ajuda.

Novo release: Gerente 2.0

Bem, além de conversar com vários amigos – muito mais experiêntes do que eu nesse papel –, também naveguei bastante pela Web e acabei chegando num artigo muito interessante de Pete Deemer, da Scrum Training Institute, que tem me ajudado bastante. Se você também tem interesse no assunto, acho que vale a pena ler.

Pete sugere no artigo, de maneira bem coerente, 14 atividades de um gerente de desenvolvimento. Vamos dar uma olhada no resumão delas:

1- Ajuda a remover impedimentos que o time não tem condições de resolver por si só

Enquanto o Scrum Master remove impedimentos hora-a-hora, dia-a-dia, coisas referentes ao projeto, o gerente precisará focar seus esforços em resolver impedimentos mais sistemátivos, mais corporativo, digamos assim.

Estes impedimentos, frequentemente, são os mais desagradáveis; e que requerem alguma influência, alguma autoridade, para lidar com eles de maneira efetiva.

2- Dá ao time conselhos e sugestões sobre dificuldades técnicas que aparecem

Gerentes deveriam estar disponíveis para dar conselhos e assitência técnica ao time sempre que solicitado.

Nota minha: é que claro que, volta e meia, o gerente vai precisar ir a reuniões estratégicas, corporativas – ou seja lá como chamemos em nossa empresa –, e não poderá atender às solicitações do time de imediato. É preciso tratar isso de maneira bem madura com o time, colocando na mesa as limitações impostas por suas outras atividades e buscando uma maneira de mitigar isso, para que nem o time fique na mão quando precisar, nem o gerente seja crucificado quando não estiver à pronta disposição.

3- Regularmente conversa com os membros do time, um por um, para dar coaching e mentoring

Gerentes deveriam gastar tempo com os membros do time, individualmente, com certa frequência (que cada um deve achar a melhor para si), para dar coaching e mentoring. Veja: não é para pedir status report; é para ensinar, ajudar, guiar, etc, menos cobrar.

Alguns gerentes gostam de fazer isso pareando e escrevendo código junto.

4- Dá sugestões sobre como fazer features melhores

Estas sugestões são endereçadas diretamente ao Product Owner, geralmente, durante a Sprint Review.

Nota minha: o ideal é que isso aconteça sempre, mantendo o máximo de proximidade possível com o Product Owner. No meu caso, por exemplo, sento de frente para o gerente de produtos de sistemas centrais e bato-papo com ele o tempo todo. Ou seja, se tenho algo a sugerir, não preciso esperar a cerimonia de revisão.

5- Mantem-se pari passu do desenvolvimento de ferramentas, tecnologias e técnicas que o time está usando

Esta é uma atividade muito importante e frequentente negligenciada pelos gerentes. Gerentes não podem ficar congelados no tempo. Mesmo porque, a atividade 2 é sobre estar apto a dar conselhos técnicos ao time.

Nota minha: não tem coisa mais irritante do que um gerente que não entende nada do trabalho que você está fazendo, dando palpites furados, e ainda querendo que você explique para ele algo que ele não tem um mínimo de base técnica e conceitual para entender.

6- Planeja treinamento e outros skills de desenvolvimento para os membros do time

Gerentes deveriam pensar cuidadosamente sobre onde o time poderia usar seu skill; e também, cláro, que capacidades o time precisará ter quando for desenvolver determinados itens do Product Backlog.

7- Mantem-se atualizado sobre as novidades e evoluções da indústria

Novamente, uma atividade importante, mas frequentemente neglienciada. Sem ela, a atividade 2 fica fortemente comprometida.

8- Antecipa ferramentas, skills e futuras necessidades

Outra atividade importante, que tem tudo a ver com a atividade 6, e que é frequentemente negligenciada. Converse com seu time a respeito, peça sugestões.

9- Planeja e gerencia orçamento e caixa

Outra vez, algo muito importante, mas muito negligenciado por diversos gerentes.

Nota minha: qual foi a última vez que você colocou no seu orçamento um din-din para cursos, eventos, livros, e outras coisas que melhoram o skill do seu time? Ou você é do tipo que não se preocupa com isso e que, pior ainda, até acha ruim que seu time vá a eventos, faça cursos ou leia livros no horário de trabalho?

10- Dá sugestões de que features o time deveria construir

Vale o mesmo comentário do item 4, não vale? Acho que sim, tem tudo a ver.

11- Faz avalição de performance e dá feedback aos membros do time

Isso é algo necessário em muitas empresas, apesar de bastante subjetivo. Mas o ponto aqui é que gerentes deveriam basear suas avaliações em suas próprias observações, bem como no feedback de outros membros de time.

12- Faz planejamento e desenvolvimento de carreira com os membros do time

Oportunidade de carreira é uma das mais significantes formas de compensar pessoas por seu trabalho. Além de din-din, é lógico!

13- Recruta, entrevista e contrata novos membros para o time

Uma das melhores (mas às vezes, aterrorizantes!) ações de gerenciamento é tomar decisões de contratação. Isso porque boas contratações dão lucro desde o primeiro dia, enquanto que más contratações são uma “taxa” invisivel na habilidade do time entregar valor de negócio.

14- Remove membros que não são capazes de fazer um bom trabalho no time

Se mesmo depois de extenso coaching um membro do time não é capaz de contribuir, de trabalhar harmoniosamente com os outros membros do time, ou de fazer seu trabalho na qualidade esperada, ele precisa ser removido do time, ou mesmo da empresa, rapidamente. Tipicamente, gerentes precisam guiar esse processo de maneira coordenada com o RH da empresa.

Nota minha: não deixe a moral do seu time e o dinheiro da sua empresa ir para o ralo. Cuidado! Há uma linha muito tênue entre “vou dar mais uma chance” e a omissão. Não tenha medo de fazer uma demissão, mesmo que tenha sido você que fez a má contratação. Contratações são quase que como loterias! Na verdade, quem fez a má contratação é o que menos importa; o que realmente importa é a performance e moral do time, que no final das contas, se traduz em mais dinheiro para a empresa.

Conclusão

O papel do gerente de desenvolvimento 2.0, como diz esse artigo de Pete Deemer, traz um mix de habilidades de liderança técnica e de gerenciamento de pessoas – pelo amor de Deus, não chame as pessoas de recursos!

A mim faz todo sentido; e está bem alinhado com as atribuições que recebi, quando contratado pela Locaweb. Aliás, acho que vale citar que, uma das coisas que Pete diz no artigo é que esse “novo” papel do gerente de desenvolviemnto precisa ter uma bênção formal do diretor de direitor TI, ou alguém com poderes equivalentes.

Mas e você, o que acha? Deixe um comentário…

Que tipo de líder é levado a sério?

Você se interessa por assuntos ligados a liderança? Eu me interesso. Isso porque lidero – e também sou liderado. Por isso estou sempre lendo a respeito, além de observar e conversar bastante com líderes que considero referênciais.  Afinal de contas, liderar não é só mandar. Mandar, por assim dizer, é a menor das menores partes da liderança.

Um líder precisa conquistar seus liderados com valores humanos, porque pessoas são mais importantes que normas e processos. Precisa ter práticas que sejam coerentes com esses valores; e precisa despertar em seus liderados confiança, respeito e vontade de caminhar junto. Senão, sua voz nunca será relevante.

Há um blog inscrito em meu Google Reader que tem uns artigos muito legais sobre liderança e assuntos diversos, o Efetividade.net. Vale a pela uma olhada.

Hoje li um post muito legal nesse blog que quero compartilhar com vocês: Liderança e motivação: quer ser levado mais a sério?

Boa leitura!