Primeiramente
Esse não é um artigo de Chefe VS Líder, nem um artigo com técnicas de liderança baseadas em estudos do MIT. Pelo contrário, será um artigo onde quero contar um pouco sobre os desafios e aprendizados relacionados ao tempo em que tenho sido líder técnico do meu time, como cheguei até aqui e como funciona esse cargo trabalhando de forma remota.
Há muito tempo queria escrever sobre esse tema, pois em algumas entrevistas e algumas pessoas tem me perguntado como funciona ser um líder técnico trabalhando remoto, pois sempre se associa o papel de um líder técnico a alguém que tem que estar presente para resolver os problemas mais complexos que possam aparecer no seu projeto, e apoiar o time o tempo todo.
Por isso, vou falar de como eu vejo a liderança e 3 caracteristicas fundamentais para liderar um time de maneira remota e alguns conselhos :)
Começando desde a página #1
Liderança em si é um assunto bastante complicado de abordar. São temas que raramente paramos para estudar, entender ou aprimorar, especialmente quem vem de trilhas mais técnicas e não de gestão. Sendo assim, a primeira pergunta que a gente tem é:
Como eu posso virar o líder técnico de um time?
Existem infitias formas e caminhos para chegar a ser o líder de um time. Claro está, sempre será necessária muita dedicação. Quando eu estava na faculdade, meu sonho sempre foi ser Arquiteto de Software! Nome bonito, interessante, chique, e tudo mais ... 😂. Assim, comecei a preparação técnica e eu sempre achei que se eu virasse o cara mais preparado, o caminho seria obvio:
Estagiário - Desenvolvedor Júnior - Pleno - Sênior - Líder
Crédito da imagem: Photo by bruce mars on Unsplash
Mas o caminho foi algo completamente inesperado. Apesar de eu ter me esforçado sempre em melhorar técnicamente, as caracteristicas mais necessárias nos cargos de liderança não são propriamente as ténicas, e sim as de relações interpessoais. Essa pode não ser a maior descoberta do século XXI, mas para mim foi uma grande surpresa.
Eu nunca tive a oportunidade de trabalhar em uma dessas empresas que tem coaches de carreira e você vai preenchendo uma folha de aptidões que te levam a um próximo nível. Invés disso, eu fui levado pela necessidade dos meus líderes a desenvolver certas aptidões, aprender novas linguages e estudar muito por fora para chegar onde eu queria. Tive sorte de sempre ser inspirado pelos meus líderes.
Mas lógico, espera-se que sua qualidade técnica seja boa. Eis então, o começo da minhas dicas 😎.
1. Um bom líder deve saber compartilhar conhecimento
Repassar o conhecimento aos outros é talvez uma das coisas mais difíceis de se fazer. Quem nunca teve aquele líder que sempre estava ocupado e nunca tinha tempo para te ajudar com um bug no seu código? Pois bem, é muito importante ter a capacidade de ensinar para se tornar um bom líder.
Existe um conceito chamado The bus factor que diz o seguinte:
Quantas pessoas no seu time devem ser atropeladas por um ônibus para você estar completamente ferrado no seu projeto?
Isto tem a ver com a concentração de conhecimento em uma pessoa só. Assim, se existe só uma pessoa com muito conhecimento no seu time, e essa pessoa é atropelada por um ônibus, voilà, você está ferrado!
Um bom líder sabe reconhecer as aptidões das pessoas, em conjunto com a vontade delas para aprender. Uma boa prática é dar oportunidade às pessoas que estão abertas para aprender, uma tarefa nova em um tema que essa pessoa não é tão boa, porém, tem a vontade de se tornar melhor.
Trabalhando de forma remota, é comum fazer certo tipo de reuniões chamadas de KX (Knowledge Exchange) ou troca de conhecimento com suas siglas em inglês. Nelas, você escolhe um tópico, provavelmente de alguma funcionalidade que alguém do seu time desenvolveu recentemente e você mostra como foi resolvida e os quesitos técnicos por trás dos panos. Dessa forma todo mundo fica sabendo como funciona e aprendem coisas novas.
É muito importante que você divida o conhecimento!
2. Sentir o time
Sentir o time significa ter muita, mas muita atenção ao que está acontecendo no seu time. Principalmente em equipes que não estão juntas físicamente é um pouco dificil de se avaliar, mas o ser humano em geral sempre demonstra seu estado de ânimo: O tom de voz, as expressões, a frequência das mensages, entre outros.
Nós trabalhamos com o bom e velho Slack, e fazemos somente dois tipos de reuniões:
- Daily Standups
- Planejamento de Sprints
Assim, temos pouco tempo para conversar com os outros, mas é o suficiente para detectar o ritmo do time. Ser líder requer que você seja muito esperto nesse quesito. Eu principalmente acho estranho as pessoas me verem como um líder, além de que normalmente as relações mudam quando alguém vira o "chefe".
Eu tento sempre ser bastante descolado e ter comunicações onde nunca tenho uma posição de superioridade perante os outros. Embora, é uma linha tênue. Já vi casos onde o lider vira amigo do time e não é enchergado com respeito. Você deve tomar muito cuidado com isso!
De qualquer forma, a principal dica aqui é: Converse muito com seu time, não só de questões de trabalho, mas de algumas coisas descontraidas. Tente sempre humanizar as pessoas que estão com você, e isso ajudará com que as pessoas tenham confiança em você.
Além disso, eu sempre estou escrevendo código junto com todas as pessoas da equipe. Dessa forma, eu consigo sentir a dor do time. Isso quer dizer, você deve experimentar as falhas do processo de Engenharia de Software. Durante a última sessão de 1 on 1 (O que é uma reunião 1 on 1?) as pessoas do time manifestaram vários aspectos que precisavam ser melhorados, e eu concordei imediatamente pois eu senti a dor e a necessidade de ter as coisas que os meus colegas estavam pedindo. Portanto, é muito importante sentir e entender as dores do time!
3. Descrever as tarefas da melhor maneira possível
Finalmente, uma das dicas mais importantes é: Seja bastante claro na descrição das tarefas a serem executadas pelo seu time. Novamente, parece algo bobo, mas quando você trabalha remotamente, essa é uma dica de PRATA!. Por que de prata? Você descobrirá em seguida.
Dado que as pessoas não estão fisicamente presentes, nem trabalhando no mesmo momento que você, é muito importante que todo mundo entenda o que deve ser feito. Isso, somado a um Bus Factor pequeno, será o sucesso do seu time.
Como cereja do bolo, vem a chave de OURO, mais conhecida como: Documentação 😍 É muito importante escrever uma boa documentação não só para sua aplicação senão também para o Onboarding dos novos funcionários.
Aprendi isso no meu emprego anterior, onde no meu primeiro dia me enviaram um repositório com toda a documentação do projeto. Depois de longas horas lendo e lendo, compreendi muita coisa de como aquele time funcionava, quais suas práticas de código, como funcionava o processo de entrega e deploy de novas funcionalidades. Foi um momento lindo ver toda essa prepração para minha chegada!
Hoje, estamos usando Notion para armazenar nossa documentação e anteriormente usavamos Stack Overflow Teams.
Por isso, você e seu time devem escrever documentação de todas as funcionalidades para facilitar a chegada de um novo membro.
Você estará se perguntando ... Mas qual a diferença então de ser um líder normal e um líder de forma remota? Minha resposta é:
Praticamente nada!
Um bom líder será bom presencialmente ou de maneira remota, sempre que se preocupe com as PESSOAS, saiba escutar e tenha a humildade para aprender todo dia uma coisa nova de cada pessoa.
Não foi fácil ser breve nessa ocasião, mas espero que tenha gostado!
Obrigado pela Visita!