Skip to content

31-jan-2025 - LinkedIn

Pessoas

31 de janeiro de 2025

A evolução da computação, desde o ENIAC (Electronic Numerical Integrator and Computer) até sistemas modernos como a DeepSeek, reflete não apenas avanços tecnológicos, mas também mudanças profundas na forma como abordamos o desenvolvimento de software.

Reflete ainda a capacidade humana de conceber e implementar soluções tecnológicas que não apenas atendem às necessidades imediatas, mas também abrem caminho para possibilidades futuras ainda inimagináveis.

Na época do ENIAC, o conceito de "software" como o conhecemos hoje não existia, o processo era feita por meio da reconfiguração física de cabos e chaves.

E neste ponto podemos começar a ter uma noção de Agilidade.

A dificuldade em reprogramar, fez com que visualizássemos a importância de termos sistemas adaptáveis e configuráveis. O trabalho formado por Engenheiros, matemáticos e demais funções, passaram para times/equipes multifuncionais.

Logo, em meu conceito, posso afirmar:

  • CRIE um ambiente onde profissionais fiquem motivados;
  • Agilidade é diferente de velocidade; Bagunça é diferente de desordem;
  • Apaixone-se pelo PROBLEMA e não pela SOLUÇÃO;
  • Capacidade de perceber é crucial para a adaptar;
  • Fique atento no ADR (Aprender, Desaprender e Reaprender);
  • Foque no TIME e não em Career Driven Design/Domain;
  • Busque o COMPROMISSO e lembre-se estamos aqui para TRABALHAR e entregar VALORES;
  • Energize o time, cujas inteligências e criatividades são essenciais para criar ótimos produtos;
  • Complexidade exige uma abordagem ainda mais colaborativa e eficiente;
  • Colaboração e compartilhamento de ideias, torna o produto melhor;
  • O que demora a ficar PRONTO, pode nascer INDESEJADO, MORTO ou QUEIMADO;
  • Explore com o TIME a complexidade de Espaço e de Tempo (Notation Big-O);
  • Lembre-se que Arquitetura é evolutiva; Respeite a regra: "Se tá funcionando mexa, lembre-se das Leis de Lehman".
  • Defina com o as Estratégias de Branches, Arquitetura e sempre no conjunto;
  • Inclua na pipeline a versão da Documentação (Documentation as code), lembre-se do on-board, off-board e que você já foi um Júnior;
  • Exponha os projetos que deseja colaboração e busque o engajamento;;
  • Segregue código de Aplicação e Infraestrutura;
  • Crie templates para o acolhimento de Issues, Enhancement, Pull Request e tudo que possa agregar, sem dificultar;
  • Foco em uma única ferramenta de comunicação, colaboração e de gerenciamento de Ciclo de Vida de Software;
  • Promova o feedback contínuo contribui para a evolução do indivíduo e do produto;
  • Pense, Construa, Envie e Ajuste, este será um pipeline;
  • Eficiência é fazer certas coisas VS Eficácia é fazer as coisas certas;
  • Trabalhe com Feature Toggle/Flag;
  • Sucesso não é marcar uma caixinha, sucesso é ter impacto;
  • A reduza o atrito das tarefas diárias leva a ciclos de desenvolvimento mais rápidos;
  • A boa experiência faz com que nos sintamos mais comprometidos com os projetos;
    • Lei de Linus: “Dados olhos suficientes, todos os erros são óbvios." (Given enough eyeballs, all bugs are shallow);
    • Lei de Conway: A forma como uma empresa é organizada – seus processos, sua comunicação, e sua divisão de equipes – influencia diretamente a arquitetura do software produzido;
    • Lei de Brooks: Ao adicionar força de trabalho para um projeto de desenvolvimento de software já atrasado, atrasa-o ainda mais.
    • Leis de Lehman: Um software deve ser continuamente adaptado, senão torna-se aos poucos, cada vez menos satisfatório. (Mudança contínua);
    • Lei da Mudança Contínua: Um sistema de software precisa ser constantemente adaptado para se manter relevante e satisfatório.
    • Lei da Complexidade Crescente: À medida que o software é adaptado e expande suas funcionalidades, ele se torna internamente mais complexo;
  • Aquilo que não se pode medir, não se pode melhorar.
    • Métricas de Fluxo, Eficiência, Framework DevEx, Space e InnerSource;
  • Dizer “não” não é tão ruim.
  • Pense nisso:
    • Os times recebem problemas para resolver em vez de projetos para concluir?
    • O Time define uma meta concreta e atingível?
    • Reserve tempo suficiente no novo cronograma para garantir que o trabalho possa ser feito de forma cuidadosa e completa;
    • O Time tem a capacidade de PUXAR as tarefas?
    • Se o Time está enfrentando dificuldades com prioridades pouco claras e dívida técnica adote uma abordagem focada no produto;
    • Todas as decisões devem ser registradas em uma RFC(Request for Comments) ou em um ADR(Architectural Decision Record);
  • Exclua
    • Prioridade por Esporro ou Db;
    • Entrega de Valor alinhado com a Vida
    • Lobotomia (Egas Moniz em 1935), passa por desordem mental, não consegue pensar onde você está, só sabe que esta cheio de demanda e não termina nada.
  • Como evitar os gargalos?
    • Só ele conhece? O que dependente dele? Quantidade de trabalho em paralelo?
    • O gargalo é móvel?
  • Quem nunca?
    • Quem nunca contratou por conhecimento e demitiu por atitude?