Desbloqueando entregas ágeis
Olá pessoal
De onde vem a necessidade de entender
experiência de desenvolvimento?
Primeiro precisamos de falar sobre
Agilidade e Entrega Contínua
Construção colaborativa, evitando desperdício
Processos para responder rápido a necessidades de negócio
Reduzindo riscos por entregar frequentemente
Ter um processo de entrega confiável e bem definido, onde o produto passa por build, test, deploy
Quanto tempo para fazer uma mudança e tê-la refletida em produção
Ter um processo confiável para garantir a qualidade ajuda a reduzir riscos
Se as mudanças são pequenas, você consegue identificar melhor o resultado
Lead Time pequeno correlaciona a um Mean Time to Recover pequeno
Se uma mudança demora 5 minutos para chegar a produção…
Voltar ao estado anterior demora apenas 5 minutos também
Passando pelo mesmo processo confiável que você construiu no dia a dia
10 pessoas desenvolvendo
Manter o contexto do negócio dentro da equipe é simples
As ferramentas e processos são simples
A complexidade de negócio que esse grupo suporta cresce
As mudanças possuem riscos e impacto maiores
As ferramentas e processos precisam se adaptar ao crescimento da complexidade
Falamos sobre a jornada do usuário para entender como é interagir com nosso sistema
E se…
E se pensarmos nas pessoas que desenvolvem os nossos sistemas como Usuários dos nossos processos de entrega?
Qual a experiência de uso que nossas ferramentas e processo de entrega tem?
Qual o custo e esforço ao fazer:
Quais são os comportamentos que o nosso processo de entrega incentivam nas nossas equipes?
Quanto maior o esforço, menos o uso
Developer Experience é otimizar Entrega Contínua
É preciso reduzir os custos dos processos para incentivar Entrega Contínua
Incentivando pequenas mudanças em bancos de dados entre 25 equipes
Cenário inicial
Uma mudança de banco de dados precisa:
Comportamentos adotados
Mudanças em banco eram evitadas e deixados para o último dia da sprint
Esse não é o comportamento que gostaríamos de incentivar
Juntamos uma equipe para:
Mudanças foram de 5 dias de revisão para 1 hora
Lead Time foi de de 40 horas para 1 hora
O processo se tornou mais trivial
Mudanças passaram a acontecer no mais cedo durante a sprint
Mais mudanças aconteciam, por ter um baixo custo
E as mudanças eram menores
Mudanças menores carregam menos riscos
e buscamos reduzir riscos
(EngProd)
Microserviços em desenvolvimento o tempo todo por diferentes equipes
Mudanças de todos se enfileiram para chegar em produção
Um squad dedicado a otimizar e reduzir a fricção do processo de entrega
Estamos experimentando com squads de EngProd em escalas menores, dentro das equipes
Uma boa experiência de desenvolvimento incentiva mudanças menores e mais frequentes, com riscos menores para o seu negócio
Para conhecer a ergonomia do seu processo de desenvolvimento
Quanto tempo demora para uma pessoa chegar no projeto e mudar algo em produção?
No mesmo dia
É o melhor momento para ser apresentado a um processo que você usará todo os dias
As próximas mudanças aconteceram em um
ambiente já configurado
No fim do dia você sente que já contribuiu no projeto
Você descobre onde de uso no processo de entrega
Você observa o que é preciso otimizar para
reduzir o Lead Time
E já começa com um bom onboarding
Obrigado
Bruno Tavares - @bltavares