Agilidade &

Engenharia

Letticia Nicoli

@letticianicoli

Ceci Fernandes

@cecifernandes

Tema do dia:

Engenharia
para agilidade

A gente fala muito de

processos, pessoas, cultura

Mas o que

desenvolvedores

precisam saber?

Responder a mudanças
mais que seguir um plano


E em código, como faz?

O básico

não é novidade

mas é o + importante

1. Clean Code

2. Separação de responsabilidades

Modularização

Delimitação de Contextos

3. Testes automatizados

Entendimento da pirâmide de testes

e da atualização de 2018

4. Entrega contínua

Automação de build e deploy

Promoção de código em ambientes

(com dados cada vez mais reais)

E o menos básico?

5. Entendimento de arquiteturas

Micro-serviços

Camadas

6. Feature Toggles

7. Monitoramento realtime

E... outras práticas bem técnicas

Mas não é só!

Por desenvolvedor...

você entende quem?

Engenheiros e QAs e BAs e UXers etc...

Los 3 Amigos

Colaboração contínua

Pareamento entre != papéis

3 amigos onde?

Inceptions

Critérios de aceite

HDD

Hypothesis

Driven

Development

exemplo de HDD

Métricas!

automatizadas
de preferência...

Analytics

Dashboard próprio

E, com métricas...

Testes A/B

Testes com usuários

Tantas coisas, mas...

Em resumo

"Qualquer prática que ajuda a
reduzir o custo de mudança de
direção ou experimentação"

Hugo Corbucci

Agilidade &

Engenharia

Letticia Nicoli

@letticianicoli

Ceci Fernandes

@cecifernandes