TDC - Feature Flags

Integrando o governo, conectando as pessoas.
Como evitar merge hell
com Feature Flags
Luiz Henrique Salazar
Software Developer
Agenda
Integrando o governo, conectando as pessoas.
1. Conceitos:
○ Feature Flags
○ Git Branching Strategies
○ Merge Hell
2. Motivação
3. Aplicação e Ferramentas
Feature Flag
“Feature Toggles (often also refered to
as Feature Flags) are a powerful
technique, allowing teams to modify
system behavior without changing code”
Martin Fowler
https:/
/www.martinfowler.com/articles/feature-toggles.html
Feature Flag
Feature Flag
Podem ser usadas para:
● Deploy de testes A/B;
● Funcionalidades beta;
● Redução de múltiplos deployments ou
rollback de funcionalidades;
● Minimizar falhas de releases com a liberação
de features para pequenos grupos de
usuários.
Git Branching Strategies
Git Flow
Git Branching Strategies
GitHub Flow
Git Branching Strategies
Híbrido:
● Git Flow + GitHub Flow
○ Branch develop
○ Branches de features criados a
partir da master
Merge Hell
Merge Hell
Motivação
Motivação
Demora na homologação
de novas features pelos
clientes
Branches de features
desatualizados
GitLab
● Feature Flags: foi incluída na versão do
Gitlab Community a partir da versão 13.5.
GitLab
● Feature Flags: usuários devem ter, pelo
menos, o perfil de Developer no projeto em
que deseja configurar.
GitLab + Unleash
● GitLab utiliza o Unleash como
serviço de feature flag.
GitLab + Unleash
● GitLab utiliza o Unleash como
serviço de feature flag.
GitLab + Unleash
Aplicação Frontend
● Proxy server (Unleash Proxy) para
intermediar as requisições.
Unleash Proxy
Unleash Proxy
Unleash Proxy
● Deploy no OKD: dockerStrategy
Unleash Proxy
Feature Flag Branching Strategy
Sistema de Recomendação
Feature “Flagged”
Production Ready?
Caveats
● Performance Unleash GitLab
○ 500 requests por minuto
○ Acoplado no servidor do GitLab
(self-managed)
● Alternativa externa ao GitLab
○ Unleash Server
○ Outros (Harness, Flagsmith, etc)
Contato
https:/
/www.linkedin.com/in/luizhsalazar/
luizhsalazar@gmail.com
lsalazar@ciasc.sc.gov.br
Integrando o governo, conectando as pessoas.
Obrigado!
Integrando o governo, conectando as pessoas.
1 of 28

Recommended

Modelo de branches e GitFlow by
Modelo de branches e GitFlowModelo de branches e GitFlow
Modelo de branches e GitFlowJoão Pedro Benedetti Misturini
119 views11 slides
Workshop sistema de versionamento de código - git by
Workshop  sistema de versionamento de código - gitWorkshop  sistema de versionamento de código - git
Workshop sistema de versionamento de código - gitThiago Filadelfo
769 views20 slides
Migração SVN para GIT by
Migração SVN para GITMigração SVN para GIT
Migração SVN para GITDenis Santos
469 views17 slides
Testes automatizados.pptx by
Testes automatizados.pptxTestes automatizados.pptx
Testes automatizados.pptxCarlos Gonzaga
33 views50 slides
DevOps & Docker com a stack Microsoft by
DevOps & Docker com a stack MicrosoftDevOps & Docker com a stack Microsoft
DevOps & Docker com a stack MicrosoftGraziella Bonizi
271 views37 slides
Linuxtips - a saideira by
Linuxtips - a saideiraLinuxtips - a saideira
Linuxtips - a saideiraTalita Bernardes Pereira
201 views21 slides

More Related Content

Similar to TDC - Feature Flags

Developer Experience no Nubank by
Developer Experience no NubankDeveloper Experience no Nubank
Developer Experience no NubankLetticia Nicoli
288 views31 slides
Git github tortoise git by
Git github tortoise gitGit github tortoise git
Git github tortoise gitmaxrosan
410 views26 slides
GIT Básico by
GIT BásicoGIT Básico
GIT BásicoAndré Justi
1.1K views60 slides
Projeto e Desenvolvimento de Software by
Projeto e Desenvolvimento de SoftwareProjeto e Desenvolvimento de Software
Projeto e Desenvolvimento de SoftwareAragon Vieira
179 views19 slides
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend by
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendAnálise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendThiago Sinésio
11.5K views37 slides
Método Ágil Scrum by
Método Ágil ScrumMétodo Ágil Scrum
Método Ágil ScrumFernando Vargas
502 views8 slides

Similar to TDC - Feature Flags(20)

Git github tortoise git by maxrosan
Git github tortoise gitGit github tortoise git
Git github tortoise git
maxrosan410 views
Projeto e Desenvolvimento de Software by Aragon Vieira
Projeto e Desenvolvimento de SoftwareProjeto e Desenvolvimento de Software
Projeto e Desenvolvimento de Software
Aragon Vieira179 views
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend by Thiago Sinésio
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendAnálise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Thiago Sinésio11.5K views
Apresentação Gerpro by rafahreis
Apresentação GerproApresentação Gerpro
Apresentação Gerpro
rafahreis288 views
LPUG #18 - Agenda e Community Updates - 2023-01-18.pdf by Fernando Fernández
LPUG #18 - Agenda e Community Updates - 2023-01-18.pdfLPUG #18 - Agenda e Community Updates - 2023-01-18.pdf
LPUG #18 - Agenda e Community Updates - 2023-01-18.pdf
Sistema de Plugins do ExpressoV3. Não espere, faça o seu! by Flávio Lisboa
Sistema de Plugins do ExpressoV3. Não espere, faça o seu!Sistema de Plugins do ExpressoV3. Não espere, faça o seu!
Sistema de Plugins do ExpressoV3. Não espere, faça o seu!
Flávio Lisboa1.1K views
GLPI Network Suporte Profissional.pdf by DanielaBuxo
GLPI Network Suporte Profissional.pdfGLPI Network Suporte Profissional.pdf
GLPI Network Suporte Profissional.pdf
DanielaBuxo282 views
Apresentação - Software by matheusvetor
Apresentação - SoftwareApresentação - Software
Apresentação - Software
matheusvetor4.6K views
Git e boas praticas! by Vitor Silva
Git e boas praticas!Git e boas praticas!
Git e boas praticas!
Vitor Silva691 views
ERES 2018 - Microserviços: Desafios para Lidar com a Qualidade by André Abe Vicente
ERES 2018 - Microserviços: Desafios para Lidar com a QualidadeERES 2018 - Microserviços: Desafios para Lidar com a Qualidade
ERES 2018 - Microserviços: Desafios para Lidar com a Qualidade
André Abe Vicente118 views
Android DevConference - Automatizando testes sem sofrimento by iMasters
Android DevConference - Automatizando testes sem sofrimentoAndroid DevConference - Automatizando testes sem sofrimento
Android DevConference - Automatizando testes sem sofrimento
iMasters281 views
Scaling Multi-Cloud with Infrastructure as a Code por André Rocha Agostinho (... by Joao Galdino Mello de Souza
Scaling Multi-Cloud with Infrastructure as a Code por André Rocha Agostinho (...Scaling Multi-Cloud with Infrastructure as a Code por André Rocha Agostinho (...
Scaling Multi-Cloud with Infrastructure as a Code por André Rocha Agostinho (...

Recently uploaded

DevFest2023-Pragmatismo da Internet das Coisas by
DevFest2023-Pragmatismo da Internet das CoisasDevFest2023-Pragmatismo da Internet das Coisas
DevFest2023-Pragmatismo da Internet das CoisasWalter Coan
25 views40 slides
ProxySQL no MySQL: Apenas um load balancer? by
ProxySQL no MySQL: Apenas um load balancer?ProxySQL no MySQL: Apenas um load balancer?
ProxySQL no MySQL: Apenas um load balancer?Roberto Garcia de Bem
6 views62 slides
Skills e Squads, como trabalhar? by
Skills e Squads, como trabalhar?Skills e Squads, como trabalhar?
Skills e Squads, como trabalhar?Annelise Gripp
32 views13 slides
MAPA - SAÚDE - FUNDAMENTOS DE FARMACOLOGIA - 54/2023 by
MAPA - SAÚDE - FUNDAMENTOS DE FARMACOLOGIA - 54/2023MAPA - SAÚDE - FUNDAMENTOS DE FARMACOLOGIA - 54/2023
MAPA - SAÚDE - FUNDAMENTOS DE FARMACOLOGIA - 54/2023AcademicaDlaUnicesum
6 views3 slides
Shift left DevOps Experience by
Shift left DevOps ExperienceShift left DevOps Experience
Shift left DevOps ExperienceWalter Coan
5 views19 slides
TechConnection 2023 Floripa Azure Container Apps by
TechConnection 2023 Floripa Azure Container AppsTechConnection 2023 Floripa Azure Container Apps
TechConnection 2023 Floripa Azure Container AppsWalter Coan
6 views14 slides

Recently uploaded(9)

DevFest2023-Pragmatismo da Internet das Coisas by Walter Coan
DevFest2023-Pragmatismo da Internet das CoisasDevFest2023-Pragmatismo da Internet das Coisas
DevFest2023-Pragmatismo da Internet das Coisas
Walter Coan25 views
Skills e Squads, como trabalhar? by Annelise Gripp
Skills e Squads, como trabalhar?Skills e Squads, como trabalhar?
Skills e Squads, como trabalhar?
Annelise Gripp32 views
Shift left DevOps Experience by Walter Coan
Shift left DevOps ExperienceShift left DevOps Experience
Shift left DevOps Experience
Walter Coan5 views
TechConnection 2023 Floripa Azure Container Apps by Walter Coan
TechConnection 2023 Floripa Azure Container AppsTechConnection 2023 Floripa Azure Container Apps
TechConnection 2023 Floripa Azure Container Apps
Walter Coan6 views
Conheça agora o UiPath Autopilot™ para o Studio.pdf by BrunaCavalcanti29
Conheça agora o UiPath Autopilot™ para o Studio.pdfConheça agora o UiPath Autopilot™ para o Studio.pdf
Conheça agora o UiPath Autopilot™ para o Studio.pdf

TDC - Feature Flags