Crie uma conta gratuita ou Faça login
Podcast
Tech Leadership Rocks
Episódio 211

Velocidade vs Qualidade com Miguel Pessoa

• 58 minutos

Equilibrar velocidade e qualidade é um dos maiores desafios enfrentados por Tech Leads. O conceito de Engineering Momentum surge como uma abordagem para ajudar a encontrar esse balanço. Neste episódio o Miguel Pessoa, Senior Engineering Manager na Inventa, fala sobre como alinhar expectativas, priorizar demandas e manter o ritmo de entregas sem comprometer a excelência técnica.

Reaja nos momentos marcantes
Curti
Boa ideia
Amei
Engraçado
Parabéns
Mind blown

A dívida técnica é como um motor sem óleo: com o tempo, ele fica rígido, o atrito aumenta, e chega uma hora que ele falha. O segredo é equilibrar e nunca deixar esse limite estourar.

Miguel Pessoa

Capítulos

00:00 Introdução
00:41 Sobre o Miguel Pessoa
02:17 O que é Engineering Momentum
04:46 Como encontrar o equilíbrio entre qualidade e velocidade
09:00 Kent Beck's 3X
12:22 Como lidar com a pressão por velocidade
14:40 Quebrar entregáveis
17:22 Engenharia de software no mundo real
21:12 Trade-offs precisam ser documentados
24:25 Tem como ganhar velocidade e qualidade ao mesmo tempo?
27:45 Porque qualidade é importante
30:13 Engenheiros que só pensarem em código vão ficar fora do mercado
32:28 Até onde pensar no futuro em termos de engenharia
36:12 Como descobrir requisitos não funcionais
40:02 Como lidar com dívida técnica proveniente de um MVP
45:01 Como priorizar melhorias técnicas
46:33 Como evitar que Devs sejam subservientes ao negócio
50:25 A importância pelo interesse pelo negócio

Resumo deste episódio

O que é o Engineering Momentum

O conceito de Engineering Momentum se baseia em uma analogia com o momento linear da física. Ele é composto por dois elementos:

  • Velocidade: A capacidade do time de entregar soluções rapidamente.
  • Massa: A qualidade e a robustez das soluções entregues, que afetam a facilidade de escala e manutenção.

Essa analogia destaca que um aumento na velocidade sem uma massa suficiente pode comprometer a estabilidade. Da mesma forma, aumentar excessivamente a massa pode tornar o sistema lento e pesado. Encontrar o ponto de equilíbrio entre esses dois elementos depende do momento organizacional e das metas de negócio. Por exemplo, startups em estágios iniciais podem priorizar velocidade para validar hipóteses, enquanto empresas maduras devem focar mais em estabilidade e confiabilidade.

Como descobrir o equilíbrio ideal

Não existe uma fórmula universal para encontrar o equilíbrio perfeito entre velocidade e qualidade. Cada organização, produto ou time possui particularidades. Alguns fatores que podem influenciar são:

  • Estágio do produto: Durante o estágio inicial, rapidez é crucial para experimentação, mas, em produtos estabelecidos, a estabilidade se torna prioridade.
  • Momento da empresa: Empresas que buscam captar investimentos podem precisar de entregas rápidas, enquanto outras podem priorizar eficiência operacional.
  • Especificidades do time e do negócio: Cada equipe pode ter demandas diferentes. Um time responsável por sistemas de pagamento provavelmente priorizará robustez, enquanto outro, focado em experimentação, pode priorizar agilidade.

Um ponto relevante é que o equilíbrio pode mudar ao longo do tempo, mesmo dentro de uma mesma empresa. Produtos diferentes ou times distintos podem operar em momentos organizacionais divergentes. Assim, é essencial reavaliar constantemente as prioridades e alinhar expectativas com todos os stakeholders, ajustando as práticas conforme necessário.

Gerenciando pressão para entregar rápido

Uma pressão constante por resultados rápidos é comum em equipes de engenharia. A chave para lidar com isso é a comunicação transparente e a clara definição de expectativas. Isso inclui:

  • Quebrar entregas em pequenas etapas: Pequenas vitórias aumentam a confiança dos stakeholders e ajudam a ajustar as priorizações ao longo do tempo.
  • Documentar decisões técnicas: Manter um histórico claro de por que determinadas escolhas foram feitas ajuda a justificar trade-offs e evita confusões futuras.
  • Alinhar entregas ao impacto no negócio: Mostrar como soluções técnicas geram valor ajuda a construir confiança entre a equipe técnica e as áreas de negócio.

Outra estratégia fundamental é criar um fluxo constante de comunicação entre engenharia, produto e stakeholders. Reuniões regulares para revisar progresso, identificar gargalos e ajustar prioridades ajudam a manter todos na mesma página. É importante também fomentar um ambiente onde feedbacks sejam bem-vindos e considerados, criando um ciclo de melhoria contínua.

Como lidar com dívida técnica

A dívida técnica é inevitável, especialmente em produtos que passaram por rápidas iterações. Para lidar com ela sem comprometer as novas entregas você pode usar o conceito de guardião:

  • Alguém do time fica responsável por mapear problemas técnicos recorrentes e categorizar o impacto deles.
  • Essas tarefas são priorizadas em ciclos, alinhadas às necessidades do produto e do negócio.
  • Dessa forma, é possível corrigir problemas aos poucos, sem interromper o fluxo de desenvolvimento.

Além disso, é essencial documentar os trade-offs feitos durante as decisões técnicas. Muitas vezes, a razão por trás de uma escolha específica se perde com o tempo, levando a confusão ou retrabalho. Manter um registro claro do porquê das decisões tomadas ajuda tanto na manutenção quanto na evolução do produto.

A Importância de Entender o Negócio

Para engenheiros, conhecer o negócio é essencial. Isso vai além de entender como funciona o produto; significa saber como ele gera valor para os clientes e para a empresa. Algumas sugestões incluem:

  • Acompanhar como os usuários interagem com o sistema.
  • Fazer perguntas sobre as necessidades e limitações do negócio.
  • Participar de discussões de produto e design.

Engenheiros que se aproximam do negócio conseguem propor soluções mais eficientes e alinhadas às metas da empresa. Essa proximidade também reduz o risco de criação de funcionalidades que não agregam valor ou que não atendem às reais necessidades dos usuários. Por exemplo, acompanhar um usuário utilizando o sistema pode revelar problemas que não foram previstos durante o planejamento, ajudando a ajustar o escopo e priorizar melhorias.

Reflexões Finais

Em um cenário onde as demandas por velocidade e qualidade só aumentam, é crucial estabelecer um equilíbrio claro entre ambas. Seja ajustando o ritmo conforme o momento do produto, lidando com a pressão para entregar ou gerenciando a dívida técnica, o sucesso depende da capacidade de comunicar, priorizar e entender o negócio.

Lembre-se, o sucesso não é apenas sobre entregar rápido ou construir soluções robustas; é sobre encontrar o balanço certo que impulsione o negócio e mantenha o time motivado e eficaz. Trabalhar continuamente nesse equilíbrio é o que transforma bons times em equipes extraordinárias.

Se você entende a importância de ter uma boa velocidade de entrada preservando a qualidade, então se inscreva na aula de “Como Fazer Entregas Rápidas” aqui na Escola Forja.

Para ler todo o resumo Crie uma conta grátis ou Faça login