Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
QCon SP 2013 - Legado Vale Ouro
Search
reinaldob
August 31, 2013
0
52
QCon SP 2013 - Legado Vale Ouro
reinaldob
August 31, 2013
Tweet
Share
More Decks by reinaldob
See All by reinaldob
Devolta ao Monolito
reinaldob
0
55
Sistemas Distribuidos Escaláveis com Microserviços
reinaldob
0
52
Home Office
reinaldob
0
79
Featured
See All Featured
Producing Creativity
orderedlist
PRO
338
39k
How to train your dragon (web standard)
notwaldorf
75
5.2k
The Cost Of JavaScript in 2023
addyosmani
21
3.9k
Being A Developer After 40
akosma
66
580k
Writing Fast Ruby
sferik
622
60k
The Language of Interfaces
destraynor
151
23k
How to Ace a Technical Interview
jacobian
273
22k
The Pragmatic Product Professional
lauravandoore
26
5.8k
Embracing the Ebb and Flow
colly
80
4.2k
A Tale of Four Properties
chriscoyier
152
22k
Navigating Team Friction
lara
179
13k
The Mythical Team-Month
searls
216
42k
Transcript
Legado vale ouro: VAGAS.com.br ASP Convivendo na VAGAS.com.br &Ruby
Disclaimer: Teoria != Prática
None
www.vagas.com.br/vagas
None
• Porque, VAGAS.com.br?
• > 5 milhões de visitantes • 111,2 milhões pageviews
• > 7 milhões de CVs únicos VAGAS.com.br
• 10 anos • >2k clientes • 59 das 100
maiores empresas ePartner
• Evoluir como?
None
None
• Migrar aos poucos • Redesenhar funcionalidades Estratégia
• Regras? Que regras? Estratégia
Regras
None
• Começar por onde?
Situação inicial
None
Situação Atual
None
• Google Like • Limitação do BD Relacional Pesquisa de
Vagas
Pesquisa de Vagas
Pesquisa de Vagas
✔ Duplicar os dados para não interferir no legado ✔
Fácil rollback • Feedback Pesquisa de Vagas
• Mas e aí, ASP VS Ruby?
• Sessão “gorda” vs “magra” • Segurança • Encode ASP
VS Ruby
• Páginas únicas entrada e saída • Cookies expirarando rápido
• Menor ponto de contato ASP VS Ruby
✔ Explorar o http ✔ Ecossistema Web (cookies, cache, etc...)
ASP VS Ruby
• Banco de dados
• “Impossível” trocar • 170k tabelas • Windows VS Linux
Banco de Dados
\( ツ )/¯ Banco de Dados
None
• Migrations • Banco separado • Views Banco de Dados
✔ Melhorar seu ambiente SEMPRE ✔ Progressividade e planejamento para
migrações Banco de Dados
• Algorítmo simples • Banco de dados • 4 bilhões
de relacionamentos Recomendação de Vagas
Recomendação de Vagas
✔ Aproveitar a regra existentes ✔ Planejar a evolução Recomendação
de Vagas
• Não era armazenado • ASP é complexo Perfil de
Uso
Perfil de Uso
✔ Protocolos comuns entre as duas arquiteturas Perfil de Uso
• ~8milhões de e-mails • Crucial para os clientes Alerta
de Vagas
• Troca do algorítmo • Troca da infra • Redesenhar
layout Alerta de Vagas
✔ Chaveamento gradual ✔ Monitorar, monitor e monitorar ✔ Atento
ao feedback dos usuários Alerta de Vagas
• Como não vivemos só de flores...
• Arquiteturas de transição • Duplicação de regras • Problemas
de estimativa Problemas
• Maioria sem solução milagrosa Problemas
• Migrar aos poucos • Agregar valor ao reescrever •
Usar paretto para escolher • Unir negócio com arquitetura Resumo
• Ter um plano de contingência • Aproveitar regras existentes
• “Feature switch” Resumo
• Obrigado :)