SlideShare uma empresa Scribd logo
1 de 22
Desenvolvimento Front-End emEscala Global Berg Brandt Front-End Engineer - Yahoo!
PrefácioQualopapel do Front-End Engineer? “…éoprofissionalcapaz de exploraro front-end de umaaplicação web nãosócomo layout, mascomo interface móvel, mutante, interativa, proporcionando, assim, umaexperiência de usomaisrica…”
IntroduçãoDo Local ao Global,do Global ao Local  “Diversidade”
Site 2 (Partner) Site 3 (Partner) Site 1 (Partner) Site 1 Site 2 Site 3 en-US en-US en-US en-US en-US en-US pt-BR pt-BR pt-BR pt-BR pt-BR pt-BR en-CA en-CA en-CA en-CA en-CA en-CA fr-CA fr-CA fr-CA fr-CA fr-CA fr-CA
Do Local... Várioscodebases Duplicação de esforços Máximacustomizaçãoecontrolelocalmente Incompatibilidadeeinconsitência Alto custo de produçãoemanutenção en-US pt-BR en-CA fr-CA
... ao Global Core Framework Site 1 Site 2 Codebaseúnico Padronização Reuso Custo de produçãoemanutençãootimizados Ciclo de desenvolvimentoelançamentomaiseficientes en-US en-US pt-BR pt-BR en-CA en-CA fr-CA fr-CA
Do Global ao Local Site 1 -pt-BR Customizadoparao market Conteúdorelevantelocalmente Adaptadoao locale Local content Localização Internacionalização Customização
LocalizaçãoeInternacionalização “Fight Mojibake”
Application LocalizaçãoeInternacionalização Localização (L10n): adaptação de um sistemapara um certo "locale". Internacionalização (i18n): capacidade de um sistema de suportardiversos "locales". L10n e i18n sãocomplementares Globalização: g11n = L10n + i18n en-US pt-BR en-CA fr-CA
LocalizaçãoeInternacionalização O processo de g11n podeincluir: língua: incluindo "character enconding" e "direction" (LTR e RTL). Formato de data e tempo: incluindodiferentescalendáriosefusoshorários. Formatações dos números Pesos emedidas Números de documentosgovernamentais(CPF, RG, etc.) Moeda Etc...
Padronização, ModularizaçãoeReuso “Nãoresolvaomesmoproblema de formasdiferentes”
Padronização Estratégia multidisciplinar Produto Design Engenharia Estratégia de padronização global multidisciplinar Design Integrity vs. Pixel Perfect Normalização: consistêncianasespecificações Definição de padrões de código: HTML, CSS, JavaScript, etc.. Documentação, colaboraçãoeatualização
Modularização Snippets Snippets Snippets Snippets Module Module Page Site Foco no desenvolvimento de blocos Snippets: hd, bd, ft, Listas, Abas, Dialogs, Buttons Módulos: Data + HTML + CSS + JS Páginas: agrupamento de módulos Sites: agrupamento de páginas
Reuso Módulosagnósticospermitindoreusoemdiferentes sites Snippets intercambiáveis: partes do códigopodem ser reusados de um móduloparaoutro Framework de CSS emcamadas: comum, snippets, modules, site, skin, etc Componentização do JS em YUI3 modules
GerenciamentoeIntegração “Tudojuntoemisturado”
Gerenciamento Plataformaúnicaparaservirdiferentesexperiências: RoutingeDevice Detection Search Engine Optimization (SEO) Configuração: site, language, region, etc.  Assembly (Montagem): páginas, módulos, data, etc. Assets: Imagens ,CSS, JavaScript Cache e performance
Request Routing Configuration Assembly Response Domain Path Site Language Region UA Device Flavor Page Modules Data Others Assets Caching
Integração SCM: Source Code Management (Subversion) CI (continuous integration): check-ins constantes Desenvolvedoresemdiferenteslocaisefusoshorários Modelo de desenvolvimentocolaborativobemdefinido Rotina de testes unitários a cadabuild Ciclo de releasesmaisrápidos
PrólogoYahoo! News “Change occurs because there’s a gap between what is and what should be”  (Craig McCaw)
[object Object]
Lançamentoinicialem 5 markets: Brasil, Canadá (inglêsefrancês), ÍndiaeEstadosUnidos,[object Object]
Obrigado! Berg Brandt www.bergbrandt.com blog.bergbrandt.com twitter.com/bergbrandt

Mais conteúdo relacionado

Semelhante a Desenvolvimento Front-End em Escala Global

Surpreenda-se com o Silverlight 3
Surpreenda-se com o Silverlight 3Surpreenda-se com o Silverlight 3
Surpreenda-se com o Silverlight 3
Rodrigo Kono
 
Desenvolvimento Web Parte I
Desenvolvimento Web Parte IDesenvolvimento Web Parte I
Desenvolvimento Web Parte I
igorpimentel
 

Semelhante a Desenvolvimento Front-End em Escala Global (20)

Oportunidades daitan 05.05.2015
Oportunidades daitan   05.05.2015Oportunidades daitan   05.05.2015
Oportunidades daitan 05.05.2015
 
Ria e Java FX
Ria e Java FXRia e Java FX
Ria e Java FX
 
Surpreenda-se com o Silverlight 3
Surpreenda-se com o Silverlight 3Surpreenda-se com o Silverlight 3
Surpreenda-se com o Silverlight 3
 
Oportunidades daitan 20.02.2015
Oportunidades daitan   20.02.2015Oportunidades daitan   20.02.2015
Oportunidades daitan 20.02.2015
 
Desmistificando o mobile híbrido com phonegap
Desmistificando o mobile híbrido com phonegapDesmistificando o mobile híbrido com phonegap
Desmistificando o mobile híbrido com phonegap
 
O Papel do desenvolvedor Front End
O Papel do desenvolvedor Front EndO Papel do desenvolvedor Front End
O Papel do desenvolvedor Front End
 
Desenvolvimento Web com Software Livre
Desenvolvimento Web com Software LivreDesenvolvimento Web com Software Livre
Desenvolvimento Web com Software Livre
 
Produtividade
ProdutividadeProdutividade
Produtividade
 
Ruby On Rails - Porque Utilizar?
Ruby On Rails - Porque Utilizar?Ruby On Rails - Porque Utilizar?
Ruby On Rails - Porque Utilizar?
 
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
 
PHP Tools for Fast coding
PHP Tools for Fast codingPHP Tools for Fast coding
PHP Tools for Fast coding
 
JustJava 2013: Aplicações Desktop HTML5, CSS3, Javascript com Servlets 3
JustJava 2013: Aplicações Desktop HTML5, CSS3, Javascript com Servlets 3JustJava 2013: Aplicações Desktop HTML5, CSS3, Javascript com Servlets 3
JustJava 2013: Aplicações Desktop HTML5, CSS3, Javascript com Servlets 3
 
O papel do desenvolvedor front end
O papel do desenvolvedor front endO papel do desenvolvedor front end
O papel do desenvolvedor front end
 
Desenvolvimento Web Parte I
Desenvolvimento Web Parte IDesenvolvimento Web Parte I
Desenvolvimento Web Parte I
 
VIII Encontro de Parceiros Microsoft - Visão da Microsoft para Plataforma de TI
VIII Encontro de Parceiros Microsoft - Visão da Microsoft para Plataforma de TIVIII Encontro de Parceiros Microsoft - Visão da Microsoft para Plataforma de TI
VIII Encontro de Parceiros Microsoft - Visão da Microsoft para Plataforma de TI
 
Ecossistema php: O presente, o passado e o futuro da linguagem (back-end) mai...
Ecossistema php: O presente, o passado e o futuro da linguagem (back-end) mai...Ecossistema php: O presente, o passado e o futuro da linguagem (back-end) mai...
Ecossistema php: O presente, o passado e o futuro da linguagem (back-end) mai...
 
Currículo Pablo Vinicius
Currículo Pablo ViniciusCurrículo Pablo Vinicius
Currículo Pablo Vinicius
 
Da Exploração à Produção - Inteligência Artificial com a plataforma Marvin
Da Exploração à Produção - Inteligência Artificial com a plataforma MarvinDa Exploração à Produção - Inteligência Artificial com a plataforma Marvin
Da Exploração à Produção - Inteligência Artificial com a plataforma Marvin
 
Designer vs programador
Designer vs programadorDesigner vs programador
Designer vs programador
 
Latinoware 2019 - DEsenvolvimento mobile em Nivel jedi
Latinoware 2019 - DEsenvolvimento mobile em Nivel jediLatinoware 2019 - DEsenvolvimento mobile em Nivel jedi
Latinoware 2019 - DEsenvolvimento mobile em Nivel jedi
 

Último

Último (9)

ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 

Desenvolvimento Front-End em Escala Global