O caminho para a liderança técnica: como ir de desenvolvedor para líder de equipe

Alex Bachuk 27 dez É tudo sobre pessoas e trabalho em equipe

Se o desenvolvimento de software parece ser apenas uma parte do seu propósito profissional, talvez deva considerar tornar-se um líder tecnológico. Um líder de tecnologia pode significar coisas diferentes: um líder de equipe (sem relatórios diretos) ou um gerente. Por exemplo, um gerente de engenharia é uma pessoa responsável pela equipe e seus projetos. Isso significa que eles também são responsáveis pelas carreiras, crescimento dos negócios, entregas, prazos, cultura, padrões de código, dívida técnica e muito mais.

Se você é um desenvolvedor, pode não estar claro como ir de onde você está para uma posição de liderança técnica. Se o seu objetivo é se tornar um gerente em breve, você precisará se perguntar por que você quer esse papel. Tornar-se um gerente pode ou não alinhar-se com seus objetivos de longo prazo.

Entrei no desenvolvimento de software porque me senti mais confortável trabalhando com computadores do que com pessoas. Mas depois de um tempo eu me encontrei ajudando outros desenvolvedores mais e mais. Eu gostava de liderar projetos e pressionar por melhores padrões de código. Foi uma escolha óbvia para mim pessoalmente.

Para muitos engenheiros de software, crescer como colaborador individual (IC) pode ser um caminho mais apropriado. Muitas empresas fornecem alternativas de IC para o gerenciamento. Essas alternativas incluem um engenheiro de equipe, engenheiro de renome ou engenheiro colega. Esses são papéis técnicos muito antigos, mas ninguém relata a eles como fariam a um gerente.

o estereótipo de um desenvolvedor: comer pizza, trabalha à noite sozinho, etc, etc

Então, você quer se tornar um gerente de engenharia ou outro tipo de líder de equipe? É importante ser honesto sobre o que impulsiona você – é escrever código e arquitetar software? Ou está ajudando os outros a obter melhores resultados, negociando prazos com as partes interessadas e convencendo sua equipe de negócios de que a refatoração de código não é uma perda de tempo? Suas respostas a essas perguntas devem ajudá-lo a determinar qual caminho é mais apropriado para os resultados desejados.

Se você ainda estiver convencido de que o caminho da liderança técnica é o certo para você, então você tem algum trabalho pela frente. Considere trabalhar com seu gerente ou com um mentor para que eles o ajudem em áreas nas quais você está menos familiarizado. Aqui está um resumo de dez áreas principais de foco:

Intensificando . Um verdadeiro líder pode liderar sem o título ou autoridade. Qualquer pessoa com um título sofisticado e autoridade suficiente dada pelo organograma pode dar ordens. Mas não é isso que a liderança é – é sobre o que você faz.

Portanto, você deve começar pequeno. Assumir mais responsabilidades durante projetos difíceis. Ajude seus colegas fornecendo feedback em solicitações de pull. Voluntário para apresentar as atualizações do projeto. Propor melhorias ao fluxo de trabalho de sua equipe ou produto. Mentor de um colega.

Há oportunidades suficientes para que as pessoas não queiram ver ou não tenham experiência ou confiança suficiente para assumir. Determine com o que seus colegas estão lutando e, em seguida, intensifique-os e faça-os.

Propriedade . Ao assumir responsabilidades, seja responsável por tudo o que você faz ou não faz. Um líder assume a responsabilidade e evita culpar os outros por erros, falta de prazos ou bugs.

Em vez de reclamar sobre um bug que alguém apresentou, apenas ajude-o a corrigi-lo e explique como evitá-lo no futuro. Chegando com desculpas não ajuda ninguém. Aproveite o tempo para entregar o que você se comprometeu. Se necessário, negocie um prazo melhor com seu gerente. Execute um projeto como o seu próprio negócio e realmente se preocupe com isso.

Recentemente, um dos líderes de tecnologia da minha equipe puxou o último ramo mestre. Eles viram uma grande queda na cobertura do teste de unidade. Em vez de reclamar, ele acrescentou cobertura de teste ausente. Em seguida, apresentou como verificar adequadamente a cobertura e como escrever um teste de unidade para recursos complexos. Ele se ofereceu para ajudar, se alguém precisar, sem culpar ninguém. A equipe gostou disso.

Relacionamentos (ou política). Às vezes as pessoas interpretam mal os relacionamentos e os chamam de “política”. Eles são as mesmas coisas. Se você não quer lidar com “política”, então talvez pense novamente se quiser entrar na liderança em primeiro lugar.

Construir relacionamentos significativos é uma das responsabilidades dos gerentes de engenharia. A administração está fazendo as coisas acontecerem através de outras pessoas. Comece a construir bons relacionamentos com outros gerentes de engenharia. Eles são seus futuros colegas.

Existem algumas maneiras de fazer isso, como apresentar palestras sobre tecnologia, fazer workshops e orientar desenvolvedores fora de sua equipe. Os gerentes de engenharia apreciarão os relacionamentos que você constrói por meio dessas tarefas.

Expertise técnica . Um gerente de engenharia deve ser um engenheiro primeiro. Eles devem ter uma sólida experiência em engenharia de software e experiência prática. Tornar-se um dos engenheiros mais fortes da equipe é um requisito. Um gerente que não pode codificar ou não entende os detalhes técnicos não pode participar de discussões técnicas. Depois de se tornar um gerente, você deve sempre manter suas habilidades afiadas o suficiente para ser competente em arquitetura de nível superior.

Mentoria . Qualquer "desenvolvedor realmente bom" da equipe que não seja um membro da equipe é mais prejudicial do que prestativo. Se você é tecnicamente forte, então você deve ajudar os outros a chegar ao seu nível. Par programação, revisões de código, apresentações, código aberto ou projetos de fonte interna são todos ótimos exemplos de como começar a orientar os outros.

É raro alguém vir até você e pedir para você orientá-lo. Ainda, marcando-se "o especialista" e proativamente fazendo as coisas mencionadas acima, as pessoas naturalmente começarão a pedir conselhos. Ao ajudar os outros, você constrói relacionamentos significativos e conquista o respeito das pessoas. Espero que eles façam o mesmo em troca e também sejam mentores dos outros.

Gerenciamento de projetos . Entregar projetos no prazo é uma das principais responsabilidades de qualquer líder. Se, como desenvolvedor, você está constantemente perdendo prazos e subestimando tarefas, outros não confiam em você. Você tem que ser organizado e estar no topo de suas tarefas.

Todos sabemos que estimar projetos de software é difícil, pois há muita incerteza. No entanto, com o processo certo, não é impossível. Comunique constantemente o progresso e as expectativas do projeto com seu gerente ou partes interessadas.

Por exemplo, minha equipe está fazendo um relatório de status semanal, no qual os responsáveis pela tecnologia do projeto têm a oportunidade de comunicar o progresso, mencionar qualquer bloqueador ou levantar uma grande preocupação de não entregar a tempo.

Comunicação Comunicar de forma clara e concisa é uma característica muito importante de qualquer líder. Se você não consegue explicar claramente o que deseja da sua equipe, então você falhou como líder antes mesmo de começar qualquer trabalho.

A comunicação vem em muitas formas, incluindo verbal, escrita e até mesmo linguagem corporal. Sempre trabalhe para melhorar todas as suas habilidades de comunicação.

Minha equipe perdeu alguns prazos porque não consegui comunicar os requisitos com clareza e dentro do prazo. Houve poucos casos em que a falta de comunicação criou confusão na equipe que deveria fazer o quê. Aprendi que confiar nos gerentes de projeto ou nas partes interessadas do negócio para explicar os detalhes do projeto não está funcionando. Um gerente de engenharia precisa entender o projeto e depois explicá-lo e vendê-lo para a equipe. E motivá-los a querer trabalhar nisso.

Gerenciando . Gerencie seu gerente (e às vezes seu gerente). Isso significa comunicar-se constantemente com eles e gerenciar expectativas. Gerentes raramente gostam de surpresas, boas ou más. Estabeleça relações de confiança com seu gerente. Seja a pessoa responsável por projetos importantes e de alto perfil, e realmente faça-os a tempo e dentro do orçamento. Então, mais projetos seguirão e você poderá repetir o processo.

Conflito e crises . Problemas de produção acontecem, não importa quantos testes de unidade ou integração você tenha. Sim, você quer minimizar o número de erros que seus projetos têm. O que importa mais é como você lida com problemas de produção. Uma pessoa que entra em pânico sob pressão é imediatamente desqualificada como líder aos olhos dos outros. A equipe e outros gerentes querem ver uma pessoa calma que tenha tudo sob controle, mesmo nas situações mais estressantes.

Um especialista em tecnologia com quem eu costumava trabalhar sempre foi calmo. Não houve conflito ou pressão que pudesse fazê-lo estalar. Pelo menos ninguém o viu estressado. Quando se tratava de lidar com um problema de produção às 3 da manhã, ele não decepcionou. O problema foi resolvido em minutos e ele apareceu para trabalhar como se nada tivesse acontecido.

Outro líder de tecnologia ficou tão estressado com o prazo que ele ligou doente no dia em que deveríamos lançar o recurso. Ele estava tão ansioso que deixava todo mundo em volta dele desconfortável em trabalhar com ele.

Mesmo que estes sejam dois opostos completos, você pode adivinhar qual deles foi mais bem-sucedido como um líder tecnológico.

Visão . Por tudo o que eles são responsáveis, um líder deve entender "por que". Eles também são responsáveis por garantir que todos entendam “por que” eles estão trabalhando em um projeto. Um líder deve explicar (muitas vezes muitas vezes) por que o projeto está acontecendo, por que as pessoas específicas estão trabalhando nele e como este projeto se encaixa no “quadro geral”. Uma equipe tem que acreditar no que eles fazem, só então eles podem ser eficazes.

Liderança não se limita a uma ou duas pessoas

Lidere o caminho a seguir, começando hoje

Liderança não está limitada a uma ou duas pessoas, então não espere pela permissão, suba hoje. Seja um especialista em seu campo e comece a ajudar as pessoas quando elas estiverem presas. Trabalhe em suas habilidades de comunicação, até mesmo algo menor, como documentação técnica. Construa ótimas relações profissionais com seus futuros pares atuais e potenciais. Certifique-se de gerenciar seu tempo com sabedoria e estar no topo dos prazos de seus projetos. E não se esqueça de que a liderança é sobre pessoas, então ajude genuinamente as pessoas a crescer e fazer o melhor trabalho.