A previsibilidade nas entregas é um fator crucial que separa um desenvolvedor júnior de um sênior, e um dev que apenas programa de um profissional que gera confiança na gestão. Se você é um dev que cumpre o que promete, você demonstra comprometimento e maturidade profissional, qualidades que o colocam em posição de subir de nível na carreira.
Mas o que é uma entrega previsível?
Uma entrega previsível é aquela que gera previsibilidade para a gestão, permitindo que eles façam um planejamento baseado naquilo que você informa.
Um dev que não tem essa noção de previsibilidade atrapalha o planejamento da equipe e o andamento do todo, o que é um sinal de imaturidade profissional. Para evitar isso e se tornar um profissional mais confiável, siga estas três dicas fundamentais:
- Aprenda a planejar o seu trabalho
- Defina um tempo fixo (time box):
- Entenda o problema e o requisito:
- Divida o problema em etapas:
- Crie uma lista de tarefas:
- Aprenda a orçar o esforço
- Tenha um planejamento:
- Garanta a granularidade:
- Orce em grupo (sempre que possível):
- Conheça sua capacidade atual:
- Comunique o status sempre que puder
- Visão Geral do andamento do trabalho.
- Progresso da atividade (o que avançou ou não).
- Possíveis atrasos (comunique com antecedência).
- Previsões novas (quanto tempo mais você precisa?).
- Bloqueios/Impedimentos (coisas que estão impedindo seu trabalho, como falta de acesso ou resposta), o gestor pode ajudar a resolver.
O planejamento é a base de tudo. Muitos devs, especialmente os iniciantes e plenos, cometem o erro de negligenciar essa etapa, muitas vezes por uma interpretação equivocada de metodologias ágeis.
Planejar não é burocracia inútil é uma etapa essencial (o próprio Scrum tem a reunião de Planning). Sem planejamento, tudo o que você faz é baseado em um eu acho ou em um sentimento (feeling).
Riscos da falta de planejamento
Esquecimento: Você foca em um ponto e esquece de outras coisas importantes que estavam "só na sua cabeça".
Acúmulo de trabalho: O trabalho que faltou se acumula para o final do prazo, resultando em trabalho mal feito ou gambiarra.
Como planejar de forma eficaz
Um planejamento bem feito permite que você entenda o tamanho das encrencas e tenha uma visão geral do que precisa ser feito.
Estabeleça um limite de tempo (ex: um dia) para o planejamento. Isso é crucial para evitar que você se afogue em planejamento e esqueça de trabalhar.
Antes de escrever código, pare para entender o porquê da alteração e a necessidade do usuário. Entender o problema é o primeiro passo antes de discutir esforço ou tempo.
Toda solução pode ser dividida em partes menores. Essa divisão ajuda a enxergar o trabalho, identificar o que pode ser feito em paralelo e o que é pré-requisito.
Transforme as etapas divididas em pequenas tarefas de desenvolvimento (ex: falar com o arquiteto, alterar sistema de cadastro, fazer cálculo no relatório).
Ter uma lista de tarefas é essencial; sem ela, você vai esquecer alguma coisa e terá retrabalho no final.
O orçamento de esforço é uma cobrança que acompanhará o dev por toda a carreira. A empresa precisa dessa previsibilidade para Time to Marketing (não perder o bonde da venda), questões regulatórias e para o gestor administrar o budget (gerenciar o pagamento da equipe).
Orçamento é palpite, não premonição
É fundamental entender que o orçamento sempre será um palpite (chute), independentemente da metodologia (pontos, Fibonacci, etc.).
Previsão é diferente de premonição. Você não está adivinhando o futuro, mas sim dando uma expectativa baseada nas informações que possui.
Orçar é uma habilidade que exige treino e prática constante, como chutar no futebol.
Como orçar com mais precisão
Não existe orçamento sem planejamento e sem uma lista de tarefas. Tentar orçar uma "coisona" (tarefa gigante) é como chutar em um gol pequeno, a chance de erro é altíssima.
Quanto mais detalhe e mais granular forem as tarefas, maior será a chance de acertar e, geralmente, maior será o orçamento (podendo ser 2x ou mais que o chute inicial).
Fazer orçamentos em grupo (como na Planning do Scrum) é muito mais eficiente do que fazer sozinho, pois permite um duplo check e a comparação de diferentes pontos de vista.
O autoconhecimento é vital. Se você não tem noção do quanto consegue produzir, você sempre errará o orçamento, superestimando ou subestimando o esforço necessário.
Este é um erro comum de iniciantes: o medo de incomodar o gestor ou de dar a má notícia de um atraso.
O verdadeiro problema não é o atraso em si (a empresa tem tolerância), mas sim não avisar sobre o atraso com antecedência.
Se você avisa com dias ou semanas de antecedência, o gestor consegue negociar e tomar uma atitude. Se você avisa na véspera, não há mais tempo para nada.
A maior força de um profissional é conseguir assumir os seus erros e enxergar onde errou. Esconder a informação é agir como criança, não como adulto.
Comunicação em tarefas críticas
Quanto mais crítico é o que você faz, maior é a pressão e mais necessária se torna a sua comunicação. Sumir com uma tarefa crítica pode levar à sua substituição ou demissão. Se você não sabe se algo é crítico, pergunte; é sua obrigação buscar essa informação.
Estrutura da comunicação de status
Crie um ritual de comunicação, seja uma daily de 10-15 minutos ou um e-mail/mensagem diário, para manter o alinhamento e evitar surpresas.
A pauta da sua comunicação deve incluir:
Considerações finais
Para colocar tudo isso em prática, comece a planejar e orçar suas atividades hoje, mesmo que a empresa não exija. Isso é um conhecimento que melhora sua empregabilidade e afeta diretamente sua carreira.
Além disso, facilite a vida do seu chefe ao invés de levar apenas um problema, leve o problema junto com uma solução proposta. Isso demonstra maturidade e comprometimento.
Todas essas habilidades de previsibilidade estão ligadas à Análise de Requisitos, que é tão fundamental para o dev quanto programar ou fazer testes unitários. Ao juntar a análise com a programação na sequência correta, você se torna um dev imparável que entrega qualidade e cumpre prazos na maioria das vezes.
Feito!
Nenhum comentário:
Postar um comentário