Nós, programadores, trabalhamos com produção e quanto mais produtivos mais seremos capazes de entregar valor.
Ser uma pessoa produtiva não quer dizer trabalhar mais de 10 horas por dia, todos os dias, mas fazer mais e melhor com menos tempo e/ou recursos. Por isso é necessário manter uma rotina bem desenhada e ajustada, para colher frutos de entregas com muito valor.
E como profissional de tech que vos fala, gosto de utilizar algumas ferramentas para me auxiliar , como o Notion. Eu tenho um calendário bastante simples que utilizo com uma visão semanal de todas as minhas tarefas e prioridades.
Além das ferramentas, mantenho em mente que o centro da produtividade está em saber dizer Não para o bom e conseguir dizer Sim para o ótimo. Para mim isso é um exercício diário.
Separei aqui o que eu costumo fazer para me manter produtivo e acredito que poderá te ajudar também e lembre-se: para se manter produtivo, você precisa ser disciplinado.
Vamos lá!
Comece pelo começo
Se você é programador, só coloque a mão no código quanto souber tudo que precisa ser feito na task. As análises, dependências envolvidas, bibliotecas, etc.
Principalmente se você trabalha em uma empresa pequena e você fazendo análises, levantamento de requisitos e programando também (quem nunca). Separe as etapas que envolvem o seu trabalho e foque em cada uma separadamente.
Resista a tentação de sair codando.
Organize seu trabalho um dia antes
Defina uma agenda semanal com todos os compromissos importantes e estabeleça seus horários com bons intervalos entre um e outro.
Importante: nunca deixe para organizar suas tarefas no mesmo dia e, ao final de um expediente, separe alguns minutos para ver o que faltou e aproveite para se programar para o dia seguinte.
Evite programar muitas atividades críticas em um dia só. Pra mim funciona no máximo duas por dia.
Faça as tarefas mais complexas no início do dia
Conforme o dia vai acabando, ficamos mais cansados e nossa capacidade de resolver situações mais complexas, que exigem maior dedicação, vai diminuindo. Já percebeu?
Então sempre que possível faça as tarefas que exigem maior raciocínio no início do dia. Deixar coisas complexas para o final do dia pode comprometer sua entrega, visto que vamos ficando mais cansados ao longo do dia e tendemos a não concluir algumas coisas.
Agrupe tarefas parecidas
Sempre que possível, tente manter as tarefas parecidas, juntas. Não quebre seu raciocínio várias vezes ao dia entre projetos diferentes.
Se sua agenda for definida por alguém, negocie e tente manter filas por escopo ou por sistemas para evitar subir ambientes apenas para fazer poucas coisas e depois ter que alternar para outros ambientes. Todo muito ganha com isso.
Tenha um ambiente de desenvolvimento bem configurado
Mantenha seu ambiente de desenvolvimento bem configurado para evitar perder tempo com configuração de banco de dados, mudança de versão de linguagens, etc.
E sempre que puder, utilize docker para encapsular tudo que você precisa de um determinado ambiente. Configure sua IDE favorita para trabalhar com todas as linguagens que você utiliza no dia a dia.
Não jogue seu tempo no lixo
Quem nunca pegou uma task de 2 story points que levou um dia inteiro para ser feita, que atire a primeira pedra.
Não gaste mais do que 10% da previsão de entrega resolvendo problemas que não foram previstos na task. Acione a equipe logo que atingir esse limite. Exemplo: em uma task de 2 horas de estimativa, não gaste mais do que 12 minutos resolvendo problemas de dependências, libs mal configuradas, falta de conexão com serviços, etc. Acione a equipe! Muitas cabeças pensam melhor do que uma.
Utilize o método pomodoro
Faça intervalos programados. E utilize seu tempo de trabalho para ficar 100% focado nele, seja 25 minutos ou um pouco mais e só pare quando o cronômetro apitar. Nada de olhar para o lado ou conversar com outras pessoas, olhar e-mails, nada.
Lembre de dar pequenas pausas ao longo do dia. Levante, tome um café, converse com alguém, isso oxigena o cérebro e ajuda a resolver problemas, acredite.