Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Feature Flags: sexta-feira também é dia de lançamento

72 views

Published on

Você sonha em lançar novas features do seu produto de maneira instantânea, com um clique no dashboard? E se além disso você pudesse controlar a porcentagem de usuários que terão acesso a essas features de maneira progressiva? Big-Bang deploys, staging desatualizado, rollbacks emergenciais, releases que quebram o produto… conheça o conceito de Feature Flagging e deixe tudo isso pra trás.

Nessa talk, João Cunha explica como usar o Feature Flag-Driven Development para criar modelos de subscription, testes A/B, allowlist/denylist de usuários, opt-in de novas funcionalidades, e muito mais.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Feature Flags: sexta-feira também é dia de lançamento

  1. 1. João Cunha @joaocunha Feature Flags: sexta-feira também é dia de lançamento
  2. 2. Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  3. 3. twitter: @joaocunha #tdc#featureFlags linkedin: joaocunha86
  4. 4. Feature Flags separam deploys de código do release de features. Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  5. 5. Em outras palavras, as Feature Flags nos dão o poder de lançar: O que quisermos Quando quisermos Para quem quisermos Nas condições que quisermos …sem depender de deploys para isso.
  6. 6. Já tá pronto, só falta subir pra produção! Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  7. 7. Já ta pronto, só falta subir pra produção. Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  8. 8. Quando sobe pra produção… Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  9. 9. Pronto Produção Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  10. 10. “Pronto” e “Em Produção” são diferentes por questões técnicas e de negócio. Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  11. 11. Questões técnicas Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  12. 12. Caching Load balancers CDNs Firewalls Questões técnicas
  13. 13. Tráfego Browsers Conexões de internet Dispositivos diversos Questões técnicas
  14. 14. Staging
  15. 15. Produção Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc Produção
  16. 16. É impossível replicar a internet. RESUMINDO… Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  17. 17. Questões de negócio
  18. 18. Lançar de uma vez raramente é a melhor opção. Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  19. 19. Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  20. 20. Feature Flags são como condições “if”… Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  21. 21. …só que a condição vive fora do código. Menu Inferior Grupo A Grupo B Grupo C Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  22. 22. Exemplo de dashboard Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  23. 23. Isso é extremamente poderoso.
  24. 24. Targeting / allowlist e denylist Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  25. 25. Teste de hipótese
  26. 26. Lançamento incremental Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  27. 27. Kill Switch
  28. 28. Testes A/B
  29. 29. Planos de Assinatura Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  30. 30. Lançamento em datas e horas específicas
  31. 31. Opt-in
  32. 32. Power Users
  33. 33. Manutenção (programada ou não)
  34. 34. Sunset
  35. 35. Lançamento da página de produtos Foregon
  36. 36. Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  37. 37. Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  38. 38. 99% 1% Lançamento incremental (1%) Grupos de usuários (alpha) Targeting (região, copy) Teste de hipótese (performance)
  39. 39. Hero Hero
  40. 40. Opinião do especialista Opinião do especialista
  41. 41. Simulador de milhas Simulador de milhas
  42. 42. Comparador
  43. 43. Mais infos (SEO) Mais info (SEO)
  44. 44. Cada seção é uma feature. Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  45. 45. Bônus: meta features!Bônus: Meta features!
  46. 46. Feature Flags não são bala de prata Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  47. 47. Aumento de dívida técnica Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  48. 48. Exige mudança de mentalidade Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  49. 49. Às vezes é difícil saber em que nível a flag deve residir Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  50. 50. Mais condições possíveis para debuggar Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  51. 51. Cenários complexos (cache, versão logada, etc.) Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  52. 52. Boas práticasBoas práticas
  53. 53. Flags devem existir por pouco tempo Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  54. 54. Nunca reutilize flags Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  55. 55. Nomeie as flags adequadamente Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  56. 56. Grave logs de alteração Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  57. 57. Libere acesso a membros não técnicos Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  58. 58. Bônus: meta features!Ferramentas existentes
  59. 59. Launch Darkly rollout.io Optimizely Featureflow ConfigCat Unleash Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  60. 60. Para se aprofundar Martin Fowler https://martinfowler.com/ Feature Flags IO http://featureflags.io Blog do LaunchDarkly https://launchdarkly.com/blog/ Meu Twitter :D @joaocunha Feature Flags: sexta-feira também é dia de lançamento @joaocunha #produtos #featureFlags #tdc
  61. 61. joao@joaocunha.net @joaocunha

×