Globalcode – Open4education
Trilha – Arquitetura
Buscapé 2.0 - Como mudamos uma empresa em 1 ano
Thiago Santos de Freitas - Arquiteto de Software
Globalcode – Open4education
Apresentação
Arquiteto de Software no
Buscapé Company
Bacharel em Ciências da
Computação - FEI
Nerd fanático por games,
séries e livros.
Globalcode – Open4education
O que é o Buscapé
Atua em diversas áreas do processo de compra
Trabalha com a maioria dos e-commerces
brasileiros
Fundado a quase 20 anos
Diversos produtos dentro do grupo
Globalcode – Open4education
Contexto
Negócio
Crescimento rápido
Mudança no mercado de e-commerce
Compra de algumas empresas
Tecnologia
Visão conservadora
Mudanças constantes de regras de negócio
Junção de tecnologias
Globalcode – Open4education
Problemas
Atualização de dados muito lenta
Complexidade para alterar o site
Servidores superdimensionados para atender a
momentos de pico
Muitos bugs em produção
Globalcode – Open4education
Começando a mudança
Globalcode – Open4education
Mapeamento do ambiente
Levantamento de todos os sistemas, bancos e
servidores
Identificar e eliminar sistemas sem utilização
Agrupar sub-sistemas
Mapear as equipes relacionadas com cada sistema
Mostrar apenas os bancos de dados principais
Globalcode – Open4education
Fluxo de informação
Entender os pontos principais de entrada de
informação
Onde a informação é enriquecida
Como a informação é disponibilizada para o
usuário
Globalcode – Open4education
Globalcode – Open4education
O novo conceito
Silos
Agrupamento lógico de sistemas
Objetivos bem definidos
Premissas de comportamento
Forma de trabalho
Elaboração de boas práticas para criação de sistemas
Definição de ação dos desenvolvedores
Colaboração entre infra, QA e desenvolvimento
Globalcode – Open4education
Globalcode – Open4education
O começo da mudança
Alterar o motor de busca
Reescrever o front
Proteger o banco de dados
Remodelar a infraestrutura
Globalcode – Open4education
Projetos
Globalcode – Open4education
Corporate e User
Ambientes de microserviços
User
Aplicações independentes
Tempo de resposta < 1 segundo
“Pode” falhar
Corporate
Serviços de consulta e utilitários
Tempo de resposta < 10 segundos
Seguro
Globalcode – Open4education
Corporate e User
Cache com Redis Cluster
Netflix OSS
Eureka
Zuul
Hystrix
Spring Cloud e Boot
Data
Actuator
Globalcode – Open4education
Globalcode – Open4education
Search
A primeira aplicação da empresa
Múltiplas responsabilidades
Otimizada para o modelo de busca atual
Feita em C
Armazenamento em memória
Alimentada por arquivos posicionais
Lê dados de múltiplos bancos
Globalcode – Open4education
Search
API
Escalável e independente
Documentação com 

Swagger
Elastic Search
Índices independentes
Clusterização
Indexer
Atualização incremental
Controla a limpeza dos 

índices
Globalcode – Open4education
Portal
Múltiplas responsabilidades
Conexão com múltiplas bases de dados
Altamente acoplada à busca
Múltiplas equipes atuam no sistema
Não possui testes unitários
Template em XSLT 1
Java 6
Tomcat 6
Globalcode – Open4education
Portal
Responsabilidade única
Sistema escrito em 

Node.js e React
Sem alto acoplamento
Fallback para todas 

as integrações
Páginas customizadas 

em tempo de execução
Globalcode – Open4education
Devops
Ambiente híbrido
Criação de servidor manual
Scaling manual
Processo de deploy despadronizado
Falta de uma comunicação de mudanças
Deploys sem garantia de funcionamento
Globalcode – Open4education
Devops
Integração Contínua
Git flow
Jenkins com Pipeline
Obrigatoriedade de testes
Validação de código com Sonarqube
Padronização da configuração de servidores
Conceito de “ambiente de aplicação”
Centralização de logs com Graylog
Globalcode – Open4education
Devops
Comunicação
Utilização em massa do Slack
Pipeline avisa interessados sobre deploy
Pipeline avisa time sobre validações e testes
Automação da criação de servidores
Utilização de Ansible para configuração do servidor
Utilização de Terraform e Packer para provisionamento de
ambiente
Globalcode – Open4education
Iniciativas do time
Schema
Atributos de serviços baseados no schema.org para garantir
padronização
Contrato
Todo desenvolvimento de serviços baseado em contratos e mocks
Testes
Desenvolvedores participando de toda a cadeia de teste
Métricas
Criação de métricas dentro das aplicações para medir o negócio
Globalcode – Open4education
O arquiteto no Buscapé
Globalcode – Open4education
Evolução do conceito
Entrevista com os líderes, gerentes e produto
Apresentação para a diretoria

Mas e os desenvolvedores?
Eles conhecem os pequenos problemas
Eles conhecem o dia-a-dia
Globalcode – Open4education
Comprometimento
As mudanças são mais do que técnicas, são
culturais
Para haver mudança, os desenvolvedores devem
estar comprometidos
Eles devem acreditar
Globalcode – Open4education
O que aprendi
O arquiteto tem a visão macro, mas precisa da visão
micro do time para realmente fazer algo grande
O arquiteto deve ser um agente ativo na evolução do
time
O arquiteto deve contribuir para a ligação entre produto
e tecnologia
Os times devem ser livres e independentes, mas o
arquiteto é a cola entre os times
Globalcode – Open4education
Próximos passos
Essas mudanças são apenas o começo
Continuar a renovação dos sistemas
Melhorar o nosso devops
Interagir com a comunidade
Evoluir nossa área de engenharia
Globalcode – Open4education
Obrigado
Thiago Santos de Freitas thiago.freitas@buscapecompany.com

Mais conteúdo relacionado

PDF
TDC2018SP | Trilha Arquitetura Corporativa - Arquitetura Agil. Habilitando ar...
PDF
Cloud e DevOps, como o Zabbix pode contribuir para este cenário - Zabbix Conf...
PPTX
DevOps com Exemplos Práticos - QConRio 2014
PDF
InterCon 2017 - Desenvolvimento de uma Infraestrutura Ágil com Práticas DevOp...
PDF
TDC2018 - Adriano Tavares - Design Thinking para arquitetos de software
PDF
Integração do Zabbix com Testes Automatizados
PDF
TDC2016POA | Trilha Cloud Computing - Kubernetes para Desenvolvedores Docker
PPTX
DevOps - A Origem
TDC2018SP | Trilha Arquitetura Corporativa - Arquitetura Agil. Habilitando ar...
Cloud e DevOps, como o Zabbix pode contribuir para este cenário - Zabbix Conf...
DevOps com Exemplos Práticos - QConRio 2014
InterCon 2017 - Desenvolvimento de uma Infraestrutura Ágil com Práticas DevOp...
TDC2018 - Adriano Tavares - Design Thinking para arquitetos de software
Integração do Zabbix com Testes Automatizados
TDC2016POA | Trilha Cloud Computing - Kubernetes para Desenvolvedores Docker
DevOps - A Origem

Mais procurados (13)

PDF
DataOps: Estendendo as práticas de DevOps para BigData
PDF
DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia II
PDF
Passo a Passo para implementar DataOps em projetos de Big Data
PDF
Grafana & Zabbix - Webinar JLCP
PDF
DevOps I - Ambientes padronizados e Monitoramento da Aplicação | Monografia I
PPTX
Automatização de Ambientes CI & CD & DevOps
PDF
DevOps, por onde começar
PDF
Xperience Superlógica 2018 - Infraestrutura Ágil
PDF
Webinar Segurança de DevOps
PDF
DevOps no mundo real - QCON 2014
PPTX
Scrum - Profº James Moreira Jr.
PPT
Introdução Metodologias áGeis Para Desenvolvimento De Software
PPTX
Introdução à Segurança de Containers e Kubernetes
DataOps: Estendendo as práticas de DevOps para BigData
DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia II
Passo a Passo para implementar DataOps em projetos de Big Data
Grafana & Zabbix - Webinar JLCP
DevOps I - Ambientes padronizados e Monitoramento da Aplicação | Monografia I
Automatização de Ambientes CI & CD & DevOps
DevOps, por onde começar
Xperience Superlógica 2018 - Infraestrutura Ágil
Webinar Segurança de DevOps
DevOps no mundo real - QCON 2014
Scrum - Profº James Moreira Jr.
Introdução Metodologias áGeis Para Desenvolvimento De Software
Introdução à Segurança de Containers e Kubernetes
Anúncio

Semelhante a Buscapé 2.0 - Como mudamos uma empresa em 1 ano (20)

PPT
Monitorando serviços REST com o Application Insights
PPT
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
PPTX
Startups e DevOps
PDF
DataOps: da teoria a prática, como realmente se aplica em projetos de BigData
PDF
TDC São Paulo Online 2020 - trilha Big Data
PPTX
DevOps e App Insights
PPTX
Iac & DevOps no Azure: Automatizando deployments
PPT
Monitorando serviços REST com o Application Insights e Distributed Tracing
PPT
TDC2016SP - Trilha Microservices
PDF
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
PDF
TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...
PDF
DevOps... O caminho! - Monitoramento de aplicações com App Insights
PDF
Leds zeppellin infraestrutura de apoio ao desenvolvimento
PDF
MIT DevOps IaC - Infra como Código
PDF
Construindo aplicações Cloud Native em Go
PPT
TDC2018 - Organizando o caos
PPT
TDC2018FLN | Trilha AN - Priorizaco de Backlog - Organizando o Caos!
PDF
TDC SP 2016 - Dos requisitos à implantação em uma palestra
PPTX
Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...
PDF
Falando sobre DevOps no azure
Monitorando serviços REST com o Application Insights
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
Startups e DevOps
DataOps: da teoria a prática, como realmente se aplica em projetos de BigData
TDC São Paulo Online 2020 - trilha Big Data
DevOps e App Insights
Iac & DevOps no Azure: Automatizando deployments
Monitorando serviços REST com o Application Insights e Distributed Tracing
TDC2016SP - Trilha Microservices
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...
DevOps... O caminho! - Monitoramento de aplicações com App Insights
Leds zeppellin infraestrutura de apoio ao desenvolvimento
MIT DevOps IaC - Infra como Código
Construindo aplicações Cloud Native em Go
TDC2018 - Organizando o caos
TDC2018FLN | Trilha AN - Priorizaco de Backlog - Organizando o Caos!
TDC SP 2016 - Dos requisitos à implantação em uma palestra
Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...
Falando sobre DevOps no azure
Anúncio

Último (20)

PDF
resumo de instalação de placa arduino em jardim vertical para fertirrigação
PDF
Capacitação em Logística – Instituto Federal
PPTX
Politicas-de-Seguranca-Privacidade-e-Cookies.pptx
PPTX
AULA 1.pptx GESTÃO DE OPERAÇÕES INDUSTRIAIS
PDF
POO - Aula 05 - Herança - Generalização e Especialização.pdf
PPTX
Formação aaaaaaaaadsdsfg er rsgrsgesf efsfsefsf e LEEI.pptx
PPTX
Panorama da aviação civil brasileira ANAC
PDF
T-pico 1.pdfnsjabdkaksbbsuendnijsbshajanzk
PDF
pdfcoffee.com_metalografia-25-pdf-free.pdf
PDF
Gestão contínua de exposição a ameaças petrobras
PDF
instalacoes eletricas para industria apressentacao basicas
DOCX
Laboratório de cyber security, apresentação simples.
PPT
Apresentacao Do Trabalho de Inteligencia
PPTX
Modelo para Qualificação de Mestrado - Tecnologia da Informação
PPT
Padrões de Beleza I - Estética Corporal e Saúde
PDF
POO - Aula 03 - Membros Estáticos e Construtores.pdf
PPTX
Importacao_Ordem_Customizacao_SAP_S4HANA.pptx
PDF
wp-sn-advanced-high-availability-architecture (pt-br).pdf
PPTX
RCSOFTdfsdfrvadfvdfvargfvevevrervevqer.pptx
PPT
01 - Arquitetura de Computadores 1 TEC [Salvo automaticamente].ppt
resumo de instalação de placa arduino em jardim vertical para fertirrigação
Capacitação em Logística – Instituto Federal
Politicas-de-Seguranca-Privacidade-e-Cookies.pptx
AULA 1.pptx GESTÃO DE OPERAÇÕES INDUSTRIAIS
POO - Aula 05 - Herança - Generalização e Especialização.pdf
Formação aaaaaaaaadsdsfg er rsgrsgesf efsfsefsf e LEEI.pptx
Panorama da aviação civil brasileira ANAC
T-pico 1.pdfnsjabdkaksbbsuendnijsbshajanzk
pdfcoffee.com_metalografia-25-pdf-free.pdf
Gestão contínua de exposição a ameaças petrobras
instalacoes eletricas para industria apressentacao basicas
Laboratório de cyber security, apresentação simples.
Apresentacao Do Trabalho de Inteligencia
Modelo para Qualificação de Mestrado - Tecnologia da Informação
Padrões de Beleza I - Estética Corporal e Saúde
POO - Aula 03 - Membros Estáticos e Construtores.pdf
Importacao_Ordem_Customizacao_SAP_S4HANA.pptx
wp-sn-advanced-high-availability-architecture (pt-br).pdf
RCSOFTdfsdfrvadfvdfvargfvevevrervevqer.pptx
01 - Arquitetura de Computadores 1 TEC [Salvo automaticamente].ppt

Buscapé 2.0 - Como mudamos uma empresa em 1 ano