Os 3 melhores feedbacks que recebi como engenheiro de software e que mudaram a minha carreira.
Ser uma pessoa engenheira de software não é fácil, o mercado é aquecido e os salários enchem os olhos, mas não é por acaso. Assim como nem todos nasceram para a medicina, nem todos nasceram para a engenharia de software. Não basta pensar em trabalhar na área apenas olhando o mercado e o salário. A profissão é difícil, e mesmo quando temos um perfil ideal ainda enfrentamos muitas dificuldades, precisamos de bastante resiliência e prática:
Existem mais de 700 linguagens de programação no mundo, e o mercado requer o conhecimento de algumas delas, não todas, mas de forma aleatória, que geram várias combinações diferentes para cada empresa.
Cada uma das linguagens tem várias ferramentas e bibliotecas diferentes, às vezes até 2, 3 ou 4 que fazem a mesma coisa. O mercado também requer o conhecimento dessas ferramentas de forma aleatória.
Além disso, sistemas muitas vezes são como um livro de 2000 páginas, escrito por diversas pessoas diferentes e em tempos diferentes. Fazendo uma analogia, nosso trabalho muitas vezes é como alterar uma página específica desse livro, tomando cuidado para que ele como um todo continue coeso e faça sentido. E em alguns casos, bugs e erros no código podem nos custar de finais de semana trabalhando a bilhões de reais e até vidas. Afinal, o software está em tudo.
Fora as habilidades técnicas (hard skills), também precisamos de soft skills. Se não tivermos uma boa comunicação, por exemplo, há chances de aceitarmos prazos impossíveis, ou não entregar uma funcionalidade conforme especificada pelo nosso cliente, por falta de escuta e compreensão de suas necessidades.
Podemos facilmente cair em burnout.
Nunca sabemos o que virá pela frente, podemos ficar obsoletos em um período de 2 a 3 anos.
Nesse cenário, uma das coisas mais preciosas que podemos ter é o apoio mútuo da comunidade de engenheiros e engenheiras de software na web e de colegas de trabalho, fazendo com que tenhamos diversas bibliotecas open-source, fóruns onde podemos procurar ajuda, parcerias e algumas vezes feedbacks valiosos.
Em minha experiência, tive a sorte de trabalhar com excelentes profissionais que me deram mentoria e me passaram feedbacks. Dar feedbacks, inclusive, é algo bem desafiador. Não falo do tapinha nas costas de “muito bem” ou “você faz um ótimo trabalho”. Falo de feedbacks construtivos.
Segundo meu entendimento do clássico livro “Como fazer amigos e influenciar pessoas” de Dale Carnegie, a tendência das pessoas quando recebem um feedback construtivo (em outras palavras, negativo) é de se justificar. Não importa o quão errado a pessoa esteja, ela vai tentar se justificar, e se o feedback não for dado de uma maneira cautelosa, ainda criará um clima ruim entre às duas partes. Raramente pessoas aceitam as próprias falhas.
Inclusive, acredito que saber ouvir e dar feedback são dois soft skills raros.
Então me considero sortudo de ter sabido ouvir, e de ter tido alguém que sabia dar feedbacks.
Na época que recebi os 3 feedbacks que mudaram minha carreira, estava trabalhando em par com um engenheiro de software que era bem mais experiente do que eu (até hoje o considero um dos melhores engenheiros com quem tive a oportunidade de trabalhar, o admiro muito) e ele estava prestes a mudar de empresa.
No seu último dia, fizemos um 1:1 (uma reunião, apenas eu e ele) onde pedi que ele me mostrasse pontos a melhorar, e para a minha surpresa, ele já havia preparado esses pontos antes mesmo de eu indagar.
Os feedbacks que recebi foram completamente diferentes do que eu esperava, muito precisos e não imaginava que seguindo apenas eles, geraria esse impacto todo, colocando apenas esses 3 pontos em prática fui de junior a sênior em muito pouco tempo, aqui vão eles:
1. Termine as tarefas chatas o mais rápido possível.
Segundo o escritor americano Michael Stanier, a maioria das nossas tarefas diárias são classificadas em “Bad Work” e “Good Work”. “Bad Work”é todo aquele trabalho burocrátivo e mecânico, como preencher planilhas, ir ao banco e fazer reuniões que não levam a nada. “Good Work” é aquele tipo de trabalho que você sabe fazer muito bem e resolve sem muitas complicações. É a descrição do seu cargo.
— Luciano Braga em “O poder do tempo livre” p/ 72
No nosso dia a dia, algumas vezes temos que executar tarefas que não são exatamente aquilo que mais gostamos de fazer. Eu, por exemplo, amo tarefas de refatoração, arquitetura e novos projetos, mas o fato de eu gostar dessas tarefas não evita que surjam outras que eu não goste no meu dia a dia. E provavelmente essa é a situação da maioria das pessoas.
O maior aprendizado que obtive desse feedback foi de não deixar para depois ou levar “com a barriga” tarefas que não gosto de realizar. Afinal, elas terão que ser feitas de qualquer forma, e quanto mais tempo passarmos com elas, mais tempo passamos com algo que não gostamos.
Isso é até algo lógico. Quanto mais rápido finalizarmos a parte chata, mais tempo sobra para a parte legal, ou seja, nos mantemos com mais motivação.
Não deixe as tarefas chatas para depois, tenta finalizá-las o mais rápido que conseguir!
2. Tenha “na ponta da língua” toda a arquitetura de software da sua empresa, saiba “de cabeça” exatamente como as coisas funcionam.
Naquela época eu trabalhava em uma empresa que tinha uma arquitetura de software com fluxos complexos: diversos micro-serviços, bibliotecas internas, filas, bancos de dados relacionais, não relacionais, daemon workers, cron jobs e sistemas legados (os famosos monolitos gigantes e desorganizados). E para piorar o sistema era de alta escala, com muitas requisições por minuto.
As regras de negócio estavam todas implícitas no código, mas parecia extremamente desafiador entender todo o ecossistema, e de fato poucos entendiam.
Algumas pessoas podem nos falar como algo funciona, quais são as regras do negócio, mas apenas teremos certeza se entendermos a fonte, analisarmos o código. Afinal, lá está escrito o que realmente vai acontecer.
Para mim, na época e no cenário em questão, era muito difícil de realizar qualquer entrega mais complexa. Porque para saber onde eu tinha que mexer, toda vez precisava ler muito código, entender como diversos sistemas se integravam, se comportavam e qual era a responsabilidade de cada um deles. Também era muito difícil opinar em reuniões, ter ideias, criar soluções e muito fácil tomar decisões técnicas erradas.
Para lidar com isso, este era o segredo do meu colega e que hoje se tornou o meu também: voluntariamente decore toda a arquitetura dos sistemas da sua empresa (dentro do domínio da sua equipe) ao ponto que você consiga desenhá-lo a mão sem precisar consultar nenhuma fonte. Por exemplo: Imagine que sua equipe mexa com a parte de pagamentos da empresa, tire um, dois ou três dias para ler código, documentação, conversar com colegas que estão há mais tempo na empresa até você conseguir desenhar (em alto nível) tudo em um papel sem precisar consultar nada. Decore tudo.
Faça formas, setas, descreva as responsabilidades, processos e regras de negócio principais de cada serviço (ou componente / classe / biblioteca) e deixe claro como tudo funciona e se conecta. Não precisa ser nos mínimos detalhes, mas em um detalhamento suficiente para ter um bom entendimento geral.
Por mais que possa ser muita coisa, não é impossível, e as vantagens são muito relevantes:
- Agilidade na tomada de decisões em reuniões
- Facilidade na hora de propor e pensar soluções
- Extrema confiança
- Assertividade
- Maior qualidade no código escrito
- Reconhecimento (das pessoas)
- Valorização do seu trabalho
Além disso, estude todas as linguagens e ferramentas envolvidas na arquitetura que você ainda não conhece, para não perder nenhum detalhe.
3. Esteja perto, participe de todos os eventos (que puder), e crie boas relações com o seu seu time.
Sabe quando te chamam para uma cervejinha depois do “trampo”? Ou aquele almoço especial em que todos vão juntos? Ou algum evento no aniversário de alguém? Aquele papo/cafezinho descontraído na copa?
Atualmente com o Home Office isso parece até estranho e distante. Mas se sua empresa promove algum evento presencial ou uma call com um tema fora do trabalho, não deixe de ir. Se o seu time combina algo fora do trabalho, vá! Participe!
Ligue a câmera.
No final, todos nós somos pessoas. Muitos dizem que é preciso separar a “vida profissional” da “vida pessoal”. Mas pera lá, não existem dois Henriques. Particularmente entendo que existe apenas uma vida e nosso corpo não vai deixar de se estressar magicamente porque saímos ou entramos no trabalho.
Para pessoas que tem relações muito frágeis ou superficiais com colegas de trabalho, um pequeno mal-entendido pode se tornar um problemão, feedbacks se dificultam e há pouca transparência. Não quero dizer que devemos trabalhar apenas com nossos melhores amigos e amigas, mas que também faz parte entender a outra pessoa, quais são suas motivações, o que ela faz nas horas vagas, o que ela curte, qual é o jeito dela e estabelecer uma relação de confiança.
Isso faz toda a diferença no ambiente de trabalho, um ambiente confortável e seguro proporciona:
- Descontração
- Melhores ideias
- Transparência
- Tranquilidade
- Assertividade no trato com o próximo.
- Bons feedbacks
- Laços com pessoas (até mesmo de outras áreas)
Por mais que possa não parecer para pessoas que estão iniciando na área, esses pontos são fundamentais no processo de engenharia de software.
Naquela época, eu tinha uma relação frágil com a maioria da equipe com quem trabalhava. Tratávamos apenas de trabalho, e isso gerava problemas para mim:
- Dúvidas sobre como as outras pessoas enxergavam meu trabalho
- Desconforto
- Falta de segurança para pedir ajuda quando não sabia algo
- Síndrome do impostor
- Medo de ser mandado embora
- Ansiedade e entendimento precipitado de algumas situações
- Evitava falar em reuniões
Conclusão
Esses são os 3 melhores feedbacks que recebi. Percebe-se que eles permeiam entre hard skills e soft skills. Para mim, lembrar deles diariamente foi uma forma simples de fazer com que minha carreira desse certo, como uma fórmula mágica.
Acho incrível, até hoje, como foi forte o efeito deles, e por serem apenas 3.
Gostou? Compartilhe!
Veja também, mais artigos meu blog pessoal: https://www.truehenrique.com/
Ou no blog da RD: https://medium.com/rd-shipit
Abraços!