{"id":26824,"date":"2019-09-30T17:34:00","date_gmt":"2019-09-30T17:34:00","guid":{"rendered":"https:\/\/building.nubank.com\/why-we-think-flutter-will-help-us-scale-mobile-development-at-nubank\/"},"modified":"2024-03-21T12:07:34","modified_gmt":"2024-03-21T12:07:34","slug":"por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank","status":"publish","type":"post","link":"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/","title":{"rendered":"Por que achamos que o Flutter vai nos ajudar a escalar o desenvolvimento m\u00f3vel no Nubank"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><em><strong>[\ud83c\udde7\ud83c\uddf7<\/strong><\/em> <a href=\"https:\/\/medium.com\/flutter-comunidade-br\/porqu%C3%AA-n%C3%B3s-achamos-que-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-mobile-no-nubank-95d07b4554d7\" target=\"_blank\" rel=\"noreferrer noopener\"><strong><em>dispon\u00edvel em Portugu\u00eas<\/em><\/strong><\/a><em><strong>]<\/strong><\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Desde o in\u00edcio, o Nubank sempre foi uma Fintech voltada para dispositivos m\u00f3veis. N\u00f3s iniciamos o nosso desenvolvimento m\u00f3vel com aplicativos nativos para o nosso cart\u00e3o de cr\u00e9dito, suportando as plataformas Android e iOS em 2013, e adotamos rapidamente a Kotlin e a Swift quando foram anunciadas. Por algum tempo, tivemos suporte para a plataforma Windows Phone.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Conforme a empresa cresceu e se tornou o maior banco digital independente fora da \u00c1sia, desenvolver novos produtos al\u00e9m do cart\u00e3o de cr\u00e9dito virou uma prioridade, e as novas equipes precisavam descobrir como desenvolver nossos aplicativos.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Mas como? Por que n\u00e3o experimentar o React Native?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">O terceiro produto do Nubank foi uma conta-poupan\u00e7a digital.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Quando a equipe de contas do Nubank foi formada em 2016, n\u00f3s t\u00ednhamos um desafio: n\u00e3o havia muitos especialistas em aplica\u00e7\u00f5es nativas para dispositivos m\u00f3veis dispon\u00edveis. E tamb\u00e9m n\u00e3o era f\u00e1cil contratar, pois havia (e ainda h\u00e1) uma grande concorr\u00eancia por esses profissionais no mercado de trabalho.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">N\u00f3s quer\u00edamos desenvolvedores de aplica\u00e7\u00f5es m\u00f3veis dedicados \u00e0 equipe de contas do Nubank, pois j\u00e1 sab\u00edamos que <a href=\"https:\/\/building.nubank.com\/growing-mobile-capabilities-at-nubank\/\">equipes especializadas n\u00e3o escalam<\/a>. N\u00f3s acreditamos em equipes aut\u00f4nomas, \u00e1geis e multifuncionais, trabalhando juntas do planejamento \u00e0 produ\u00e7\u00e3o, evitando delega\u00e7\u00f5es e sendo respons\u00e1veis pela qualidade, pelas opera\u00e7\u00f5es e pela evolu\u00e7\u00e3o de seus produtos. Acreditamos que equipes \u00fanicas desenvolvendo recursos de ponta a ponta entregam mais valor, mais rapidamente.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Criar o mesmo recurso duas vezes, mas em linguagens e plataformas diferentes, al\u00e9m da necessidade de aprender todas elas, parecia um desperd\u00edcio. Aprender uma plataforma h\u00edbrida para entregar recursos reduziria a barreira de entrada para que os desenvolvedores de backend contribu\u00edssem com o frontend m\u00f3vel.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Naquele momento, o React Native era uma alternativa estabelecida, que contava com o apoio de entidades importantes. Al\u00e9m disso, a <a href=\"https:\/\/building.nubank.com\/how-to-build-and-develop-an-engineering-culture-by-matt-swann\/\">nossa cultura de engenharia<\/a> tem tudo a ver com aprendizado e melhoria cont\u00ednuos (n\u00f3s deixamos claro que \u00e9 responsabilidade de todos aprender e fazer experimentos no trabalho), ent\u00e3o \u00e9 f\u00e1cil entender por que a equipe de contas do Nubank decidiu experimentar essa tecnologia multiplataformas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A conta do Nubank foi um grande sucesso, alcan\u00e7ando mais de 13 milh\u00f5es de clientes, que economizaram cerca de US$&nbsp;305 milh\u00f5es nos \u00faltimos cinco anos deixando de pagar v\u00e1rias taxas (a partir de setembro de 2019). Todos eles usaram um aplicativo desenvolvido com React Native + GraphQL, uma pilha de tecnologia bem diferente daquela usada pelas plataformas nativas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Temos muito orgulho da hist\u00f3ria do React Native no Nubank, e isso merece uma postagem separada.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Mas hoje, queremos falar sobre o nosso pr\u00f3ximo passo. Afinal, n\u00e3o importa o quanto uma plataforma ou ferramenta seja bem-sucedida, os nossos engenheiros continuam aprendendo e experimentando novas tecnologias:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>&#8220;Ol\u00e1, pessoas bonitas deste canal. Depois da nossa apresenta\u00e7\u00e3o (eu + @ring) sobre o surto do Flutter durante a Maratona de Hacking do setor de contas do Nubank, surgiram muitas pessoas interessadas na tecnologia e na linguagem (Dart). Depois de conversar com alguns de voc\u00eas, sugeri que fiz\u00e9ssemos uma Oficina de Flutter para aqueles que quisessem aprender a linguagem e sua sintaxe, padr\u00f5es e testes. Se voc\u00ea n\u00e3o sabe o que \u00e9 uma Oficina (Dojo), tem uma explica\u00e7\u00e3o na thread. A ideia \u00e9 escolher um problema simples (TodoMVC, talvez) e criar um app do zero usando TDD, com todo mundo que estiver l\u00e1. <\/em><strong><em>\u00c9 importante destacar que essa Oficina \u00e9 100% educacional, ou seja, o c\u00f3digo que criarmos n\u00e3o ser\u00e1 usado depois. <\/em><\/strong><em>O evento ser\u00e1 na quinta-feira, no hor\u00e1rio do almo\u00e7o, com pizza! \u2026&#8221;<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/bit.ly\/jobs-at-nu\">Confira nossas oportunidades de trabalho&nbsp;<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Uma cultura de experimentar e aprender rapidamente<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">No in\u00edcio de 2019, as novas equipes de produtos, como Contas Comerciais e Empr\u00e9stimos, tinham a op\u00e7\u00e3o de usar tecnologia nativa ou experimentar o React Native.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Mais ou menos na mesma \u00e9poca, o setor j\u00e1 havia mostrado avan\u00e7os significativos nas tecnologias m\u00f3veis (apenas alguns an\u00fancios de 2019): <a href=\"https:\/\/techcrunch.com\/2019\/05\/07\/kotlin-is-now-googles-preferred-language-for-android-app-development\/\">Kotlin como linguagem preferida para Android<\/a>, <a href=\"https:\/\/swift.org\/blog\/swift-5-released\/\">Estabilidade de ABI do Swift 5<\/a>, <a href=\"https:\/\/developers.googleblog.com\/2018\/12\/flutter-10-googles-portable-ui-toolkit.html\">Flutter 1.0<\/a>, atualiza\u00e7\u00f5es de <a href=\"https:\/\/facebook.github.io\/react-native\/blog\/2019\/06\/12\/react-native-open-source-update\">governan\u00e7a da comunidade do React Native<\/a>).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ent\u00e3o, est\u00e1vamos discutindo como apoiar melhor a produtividade dos nossos engenheiros na entrega de recursos para o nosso aplicativo. Aqui est\u00e3o alguns dos problemas:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Para engenheiros que tinham mais interesse em atuar como full-stack, a <strong>barreira de entrada era alta demais<\/strong>. Para contribuir com o cart\u00e3o de cr\u00e9dito, era necess\u00e1rio aprender Kotlin para Android, Swift para iOS e, para ajudar com as contas do Nubank, tamb\u00e9m era necess\u00e1rio aprender o React Native.<\/li>\n\n\n\n<li>Sem mencionar que <strong>a arquitetura de cada uma dessas op\u00e7\u00f5es era muito diferente<\/strong>! Nossa hip\u00f3tese \u00e9 que, ao reduzir a barreira de entrada para o desenvolvimento m\u00f3vel, o Nubank ter\u00e1 mais engenheiros contribuindo com a base de c\u00f3digo.<\/li>\n\n\n\n<li>Outro gargalo que encontramos quando depend\u00edamos de desenvolvedores especializados de plataformas nativas para cada novo lan\u00e7amento de recurso ou produto era o <strong>&#8220;pesadelo da contrata\u00e7\u00e3o<\/strong>&#8220;. Apesar dos nossos esfor\u00e7os adicionais para recrutar, nunca havia desenvolvedores suficientes para completar os quadros das nossas equipes de produtos.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Logo percebemos que as nossas equipes eram mais importantes do que a pilha de tecnologia, e que ter todas essas op\u00e7\u00f5es estava causando desconforto e confus\u00e3o. Era o momento de investigar seriamente qual das tecnologias multiplataforma seria a melhor op\u00e7\u00e3o para as necessidades do Nubank.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Por isso, decidimos montar uma <strong>for\u00e7a-tarefa<\/strong> encarregada de investigar e determinar, com a participa\u00e7\u00e3o de toda a engenharia de software, qual tecnologia dever\u00edamos eleger como padr\u00e3o, considerando como alternativas Kotlin Native, React Native e Flutter.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/ylX6k4xb-CQgVA380KtJJCJhfx_aMD7q8XePPm4D44YOq3nJ_8cLtVhuLQ4DIo5-zuhqjuwnMt8W9NzKvxdBATBGW14E-lEVtmNUS3LG33jXCWpqRvcOSwsdcCG6VW7zbFUV8ZY\" alt=\"Diagram comparing React Native, Flutter &amp; Kotlin Native architectures that shows components from canvas to shared logic &amp; UI\"\/><figcaption class=\"wp-element-caption\">Um diagrama comparando as arquiteturas React Native, Flutter e Kotlin Native.&nbsp;<br><\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">A meta era fazer uma escolha que permitisse \u00e0s equipes, independentemente da especializa\u00e7\u00e3o de seus integrantes, atuar com autonomia e produtividade para desenvolver o aplicativo m\u00f3vel e entregar valor usando apenas uma arquitetura, uma linguagem de programa\u00e7\u00e3o e um conjunto de conven\u00e7\u00f5es.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">A for\u00e7a-tarefa<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Montamos uma pequena equipe com desenvolvedores m\u00f3veis experientes no Nubank. Eles determinaram 11 crit\u00e9rios para serem avaliados em um projeto de pesquisa. Aqui est\u00e1 uma breve descri\u00e7\u00e3o das perguntas das 5 maiores prioridades:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>1. Experi\u00eancia do desenvolvedor:<\/strong> O que permite que um desenvolvedor entregue valor e seja produtivo? Exemplos: recarga autom\u00e1tica, visibilidade de componentes, ferramentas de depura\u00e7\u00e3o, integra\u00e7\u00e3o de IDE e ferramentas de testes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>2. Viabilidade em longo prazo:<\/strong> Demonstra o n\u00edvel de confian\u00e7a no futuro da plataforma. O mantenedor vai continuar fornecendo suporte de longo prazo (cinco anos)? Qual \u00e9 a chance da comunidade apoiar o projeto se o mantenedor decidir abandon\u00e1-lo?&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>3. Sem especializa\u00e7\u00e3o de plataforma:<\/strong> Um engenheiro deve ser capaz de criar c\u00f3digo m\u00f3vel para o produto sem diferenciar entre Android e iOS. O c\u00f3digo tem o mesmo visual e comportamento no Android e no iOS, com uma baixa ocorr\u00eancia de problemas espec\u00edficos de SO?&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>4. Custo de abstra\u00e7\u00e3o incremental:<\/strong> O custo de estender a plataforma para cada tarefa de produto e o atrito da centraliza\u00e7\u00e3o do trabalho nas extens\u00f5es, se necess\u00e1rio. O quanto ser\u00e1 dif\u00edcil adicionar um novo componente? N\u00f3s estar\u00edamos criando uma depend\u00eancia em uma equipe de plataforma horizontal?&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>5. Risco de abstra\u00e7\u00e3o n\u00e3o linear:<\/strong> O risco de precisar reprogramar repentinamente partes extensas e desproporcionais da nossa abstra\u00e7\u00e3o interna. N\u00f3s precisar\u00edamos fazer altera\u00e7\u00f5es n\u00e3o triviais no c\u00f3digo-base inteiro para suportar um novo componente do NuDS (Nubank Design System)?&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ent\u00e3o, decidimos reunir provas e combinar uma pontua\u00e7\u00e3o subjetiva para cada uma delas, usando t\u00e9cnicas diferentes, como:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>testar uma vers\u00e3o no Flutter de um de nossos recursos na produ\u00e7\u00e3o<\/li>\n\n\n\n<li>analisar comunidades, reposit\u00f3rios e recursos dispon\u00edveis para cada plataforma<\/li>\n\n\n\n<li>conversar com especialistas, equipes e empresas respons\u00e1veis pelo desenvolvimento das plataformas<\/li>\n\n\n\n<li>implementar um clone de um dos nossos recursos como um app aut\u00f4nomo nas tr\u00eas plataformas diferentes<\/li>\n\n\n\n<li>realizar um teste interno de usabilidade, em que engenheiros novatos e experientes fizeram altera\u00e7\u00f5es no recurso nos aplicativos descritos acima<\/li>\n\n\n\n<li>realizar apresenta\u00e7\u00f5es, debates e visitas da equipe para discutir nossas descobertas, ouvir as opini\u00f5es dos engenheiros e consultores s\u00eanior, incorporar o feedback deles e responder \u00e0s suas perguntas<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Os resultados dos testes de usabilidade foram os mais interessantes. Pessoas de todos os n\u00edveis e hist\u00f3ricos (incluindo engenheiros de n\u00edvel de entrada, sem experi\u00eancia anterior no desenvolvimento para dispositivos m\u00f3veis) fizeram um teste de uma hora. Eles receberam um aplicativo funcional, um ambiente de desenvolvimento, a documenta\u00e7\u00e3o da plataforma h\u00edbrida e de seus componentes, e algumas tarefas cada vez mais complexas para programar. Eles foram observados pela nossa equipe enquanto realizavam as tarefas, e ambos responderam a um question\u00e1rio no final.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Por exemplo, os engenheiros precisavam adicionar um recurso para que os usu\u00e1rios pudessem tocar em bot\u00f5es de &#8220;atalho&#8221; com valores pr\u00e9-determinados para depositar dinheiro em suas contas-poupan\u00e7a:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter is-resized\"><img decoding=\"async\" src=\"https:\/\/lh3.googleusercontent.com\/qWPJPXq9UY4xNhhhzSofOAGHgCMVzCOxcUN5kiszlD_pjyuAI-M4ZXRbsiEtouxnIwld0MDiiVK0abo3E-emW6RkfO8pbCtdSue5UhHo_7rwz0t3HbTln5VSqlpKYNVrQQt7QF0\" alt=\"Gif shows the cloned app working through bar code creation flow with an input field for the value the client wants to deposit\" style=\"width:360px\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">O aplicativo clonado trabalhando pelo fluxo de cria\u00e7\u00e3o do c\u00f3digo de barra do boleto, iniciando com um campo de entrada para o valor que o cliente deseja depositar em sua conta.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter is-resized\"><img decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/91Pztg7hcjh0wj8f3zcNnFsmlFKg2co8mA6DWkSAbWTbiZ2Lr1BICQNconicyeyI3date3gJRYSvyTRK9ira5oW2qLmo4LFWmix4h7l2Mr6FBWCV1LJ0lxzfwqrUCk4Zxa3UBAM\" alt=\"\" style=\"width:360px\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">O resultado de um desafio de programa\u00e7\u00e3o para os testes de usabilidade dos desenvolvedores:&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">N\u00f3s criamos um relat\u00f3rio para a nossa pesquisa, reunindo as descobertas e detalhando como cada crit\u00e9rio foi avaliado. No fim deste artigo, h\u00e1 um link para solicitar o relat\u00f3rio completo. Foi dif\u00edcil tomar uma decis\u00e3o, at\u00e9 mesmo ap\u00f3s coletar muitas informa\u00e7\u00f5es, e tivemos que focar nos sete crit\u00e9rios mais importantes para chegarmos aos seguintes resultados:<\/p>\n\n\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh3.googleusercontent.com\/Wa4voKsiFzBu1jn3FTBsFnHTLPstZDkM3otNmCOnzfLcq4HLpJQ6hPM6I1uZWGbqISHjMLCeisOjLVIhTyAqu5lW041oDlXRtoeHkQg6ACi5o-3L8mihoMG3-nqhBzdMwbl54c4\" alt=\"Radar chart showing criteria\u2019s score from 0\u20135. Kotlin Native's  loosing, React Native stronger in 1 point, and Flutter wins.\"\/><figcaption class=\"wp-element-caption\"><em><em>Um gr\u00e1fico de radar, mostrando a pontua\u00e7\u00e3o de 0 a 5 para cada crit\u00e9rio, em cada uma das plataformas<\/em>&nbsp;<br><\/em><\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">A partir da nossa pr\u00f3pria experi\u00eancia (80% da nossa base de c\u00f3digo Android \u00e9 feita com Kotlin, e a conta do Nubank \u00e9 desenvolvida em React Native) e avaliando as alternativas em rela\u00e7\u00e3o \u00e0s prioridades do Nubank, achamos que Kotlin \u00e9 uma \u00f3tima linguagem para trabalhar. Mas o Kotlin Native \u00e9 a \u00fanica plataforma que n\u00e3o fornece uma abstra\u00e7\u00e3o de interface de usu\u00e1rio, tornando-o dependente das ferramentas nativas da plataforma para desenvolvimento e testes. Embora ele tenha obtido uma classifica\u00e7\u00e3o mais alta nos nossos crit\u00e9rios de menor prioridade, sem mostrar limita\u00e7\u00f5es de recursos ou riscos de restri\u00e7\u00e3o de armazenamento de aplicativos, n\u00f3s achamos que, especialmente em rela\u00e7\u00e3o ao suporte de testes para engenheiros especializados, o Kotlin Native n\u00e3o est\u00e1 pronto para n\u00f3s.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">N\u00f3s tem\u00edamos um <strong>vi\u00e9s<\/strong> para o React Native, ent\u00e3o reduzimos propositalmente a prioridade de outro crit\u00e9rio: o custo de criar a abstra\u00e7\u00e3o inicial da plataforma, em que o React Native foi claramente o vencedor.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ao examinar crit\u00e9rios mais importantes, o React Native tamb\u00e9m venceu em <strong>suporte da comunidade<\/strong>.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">N\u00e3o tivemos medo sobre a continuidade e a evolu\u00e7\u00e3o do projeto, e ficamos muito felizes com a quantidade da documenta\u00e7\u00e3o e dos treinamentos <em>Um gr\u00e1fico de radar, mostrando a pontua\u00e7\u00e3o de 0 a 5 para cada crit\u00e9rio, em cada uma das plataformas.<\/em> dispon\u00edveis. Por\u00e9m, em rela\u00e7\u00e3o a mudan\u00e7as disruptivas, descobrimos que o React Native tem mais depend\u00eancias do que as outras alternativas. Por isso, \u00e9 muito mais vulner\u00e1vel \u00e0s dificuldades de manuten\u00e7\u00e3o e upgrade.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nossa cultura de engenharia incentiva muito a automa\u00e7\u00e3o de testes, ent\u00e3o o Flutter brilhou gra\u00e7as \u00e0s suas excelentes capacidades de testes que combinavam com a nossa mentalidade (infraestrutura integrada de testes para testes de Unidade, Integra\u00e7\u00e3o e&nbsp;<a href=\"https:\/\/building.nubank.com\/why-we-killed-our-end-to-end-test-suite\/\">ponta a ponta<\/a> sem a necessidade de renderizar na tela). Em contraste, o React Native exige depend\u00eancias de terceiros, o que o torna mais propenso a mudan\u00e7as disruptivas. N\u00f3s achamos que a experi\u00eancia de desenvolvimento no Flutter era superior, com recursos melhores de recarga autom\u00e1tica, documenta\u00e7\u00e3o oficial robusta e uma API mais est\u00e1vel.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Depois de muita discuss\u00e3o at\u00e9 o \u00faltimo minuto, <strong>decidimos usar o Flutter como tecnologia principal do Nubank para desenvolvimento m\u00f3vel<\/strong>. Isso significa que vamos criar novos recursos no Flutter, e conforme o produto evolui, esperamos que ele se torne um percentual maior da nossa base de c\u00f3digo.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter is-resized\"><img decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/vEF-ZNRpXw5bESG2_GWJYjNa2-B22kYlkoY_JEkBnagCJapFDUgsqcPwJLmDVdguoGX61BVMJ3i-EqP5zRLCDGcXszgPIXM7L0k1yZfytHdPkuoiiQPOdJqD-kNfLsoCqTLXIAY\" alt=\"Confirmation screen for mileage points transfer flow in the Rewards program built in Flutter\" style=\"width:360px;height:810px\"\/><figcaption class=\"wp-element-caption\">Tela de confirma\u00e7\u00e3o do fluxo de transfer\u00eancia dos pontos de milhagem do programa de recompensas criado no Flutter<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Estamos muito empolgados por compartilhar esse estudo no mesmo dia em que anunciamos o lan\u00e7amento de um recurso muito esperado: <a href=\"https:\/\/blog.nubank.com.br\/nubank-smiles\/\">o recurso de <em>\u201ctransfer\u00eancia de pontos\u201d<\/em> do programa de recompensas foi criado com o Flutter<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclus\u00e3o: como \u00e9 usar o Flutter?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">At\u00e9 agora, tem sido \u00f3timo usar o Flutter, e esperamos entregar em breve aos nossos clientes mais recursos que foram criados ou migrados para o Flutter.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ter que incluir o Flutter em um aplicativo funcional que j\u00e1 conta com milh\u00f5es de clientes traz seus pr\u00f3prios desafios, que estamos superando gradualmente. O primeiro deles:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>mudan\u00e7as nos pipelines de vers\u00e3o,<\/li>\n\n\n\n<li>criar os canais da plataforma principal,<\/li>\n\n\n\n<li>integrar o roteamento entre React Native, Flutter, Kotlin e Swift para que possamos manter a interoperabilidade.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Embora o Flutter v\u00e1 se tornar a nossa tecnologia principal, ainda precisamos dos desenvolvedores nativos e os valorizamos, porque cada plataforma tem seu pr\u00f3prio conjunto de recursos que requerem c\u00f3digo nativo (por exemplo, plugins nativos como GPS e c\u00e2mera, Apple Watch, aplicativos minimizados do Android etc.). Al\u00e9m disso, conforme a <a href=\"https:\/\/building.nubank.com\/what-is-the-interview-process-like-for-software-engineers-at-nubank\/\">equipe de engenharia de software do Nubank cresce<\/a>, a especializa\u00e7\u00e3o individual \u00e9 bem-vinda.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Para qualquer um que esteja considerando o Flutter, n\u00f3s disponibilizamos nosso relat\u00f3rio completo, com dados detalhados, pr\u00f3s e contras, <a href=\"https:\/\/cdn.nubank.com.br\/mobile\/taskforce\/nubank-mobile-architecture-task-force-mission-report.pdf\">para download<\/a>. Lembre-se, o que funciona para o Nubank pode n\u00e3o funcionar para voc\u00ea.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tamb\u00e9m recomendamos pesquisar sobre a experi\u00eancia de outras empresas. Embora haja <a href=\"https:\/\/flutter.dev\/showcase\">empresas usando o Flutter<\/a> ou <a href=\"https:\/\/facebook.github.io\/react-native\/showcase\">React Native<\/a>, o Dropbox abandonou sua tecnologia multiplataforma (C++) por causa do &#8220;<a href=\"https:\/\/blogs.dropbox.com\/tech\/2019\/08\/the-not-so-hidden-cost-of-sharing-code-between-ios-and-android\/\">custo (n\u00e3o t\u00e3o) oculto de compartilhar c\u00f3digo entre iOS e Android<\/a>&#8220;, e o AirBnB decidiu &#8220;<a href=\"https:\/\/medium.com\/airbnb-engineering\/sunsetting-react-native-1868ba28e30a\">Desativar o React Native<\/a>&#8220;.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\">Written by Alexandre Freire and Vinicius Andrade<br>Reviewed by Andr\u00e9 Moreira, Rafael Ferreira, Ana Paula Maia and Paula Rothman.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Uma vis\u00e3o geral dos crit\u00e9rios e estudo que realizamos para decidir usar o Flutter como a nossa tecnologia principal para desenvolvimento m\u00f3vel entre plataformas.<\/p>\n","protected":false},"author":178110058,"featured_media":21588,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[2586],"tags":[2682,2997,3092],"ppma_author":[2343],"class_list":["post-26824","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software-engineering-pt-br","tag-flutter-pt-br","tag-mobile-development-pt-br","tag-react-native-pt-br"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Por que achamos que o Flutter vai nos ajudar a escalar o desenvolvimento m\u00f3vel no Nubank - Building Nubank<\/title>\n<meta name=\"description\" content=\"Uma vis\u00e3o geral dos crit\u00e9rios e estudo que realizamos para decidir usar o Flutter como a nossa tecnologia principal para desenvolvimento m\u00f3vel entre plataformas.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Por que achamos que o Flutter vai nos ajudar a escalar o desenvolvimento m\u00f3vel no Nubank - Building Nubank\" \/>\n<meta property=\"og:description\" content=\"Uma vis\u00e3o geral dos crit\u00e9rios e estudo que realizamos para decidir usar o Flutter como a nossa tecnologia principal para desenvolvimento m\u00f3vel entre plataformas.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/\" \/>\n<meta property=\"og:site_name\" content=\"Building Nubank\" \/>\n<meta property=\"article:published_time\" content=\"2019-09-30T17:34:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-21T12:07:34+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2020\/04\/Flutter-will-help-us-scale-mobile-development-Header.jpg?fit=1440%2C600&ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"1440\" \/>\n\t<meta property=\"og:image:height\" content=\"600\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Alexandre Freire - Director of Engineering\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Alexandre Freire - Director of Engineering\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"27 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\\\/\"},\"author\":{\"name\":\"Alexandre Freire - Director of Engineering\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/#\\\/schema\\\/person\\\/2b1a6429af0e25243469b1d749731621\"},\"headline\":\"Por que achamos que o Flutter vai nos ajudar a escalar o desenvolvimento m\u00f3vel no Nubank\",\"datePublished\":\"2019-09-30T17:34:00+00:00\",\"dateModified\":\"2024-03-21T12:07:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\\\/\"},\"wordCount\":2434,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/building.nubank.com\\\/wp-content\\\/uploads\\\/2020\\\/04\\\/Flutter-will-help-us-scale-mobile-development-Header.jpg?fit=1440%2C600&ssl=1\",\"keywords\":[\"Flutter\",\"mobile development\",\"React Native\"],\"articleSection\":[\"Software Engineering\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\\\/\",\"url\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\\\/\",\"name\":\"Por que achamos que o Flutter vai nos ajudar a escalar o desenvolvimento m\u00f3vel no Nubank - Building Nubank\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/building.nubank.com\\\/wp-content\\\/uploads\\\/2020\\\/04\\\/Flutter-will-help-us-scale-mobile-development-Header.jpg?fit=1440%2C600&ssl=1\",\"datePublished\":\"2019-09-30T17:34:00+00:00\",\"dateModified\":\"2024-03-21T12:07:34+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/#\\\/schema\\\/person\\\/2b1a6429af0e25243469b1d749731621\"},\"description\":\"Uma vis\u00e3o geral dos crit\u00e9rios e estudo que realizamos para decidir usar o Flutter como a nossa tecnologia principal para desenvolvimento m\u00f3vel entre plataformas.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\\\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/building.nubank.com\\\/wp-content\\\/uploads\\\/2020\\\/04\\\/Flutter-will-help-us-scale-mobile-development-Header.jpg?fit=1440%2C600&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/building.nubank.com\\\/wp-content\\\/uploads\\\/2020\\\/04\\\/Flutter-will-help-us-scale-mobile-development-Header.jpg?fit=1440%2C600&ssl=1\",\"width\":1440,\"height\":600},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Por que achamos que o Flutter vai nos ajudar a escalar o desenvolvimento m\u00f3vel no Nubank\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/#website\",\"url\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/\",\"name\":\"Building Nubank\",\"description\":\"We make the extraordinary happen\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/#\\\/schema\\\/person\\\/2b1a6429af0e25243469b1d749731621\",\"name\":\"Alexandre Freire - Director of Engineering\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/ef8d881e0732682d2c28625b3080a288e5be75bd050d187e05f8a7ec0c263953?s=96&d=identicon&r=g79bcfa14d199e45c1adbb8dadb3ee3d2\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/ef8d881e0732682d2c28625b3080a288e5be75bd050d187e05f8a7ec0c263953?s=96&d=identicon&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/ef8d881e0732682d2c28625b3080a288e5be75bd050d187e05f8a7ec0c263953?s=96&d=identicon&r=g\",\"caption\":\"Alexandre Freire - Director of Engineering\"},\"description\":\"Alexandre Freire has experienced many phases of the Software Engineering Industry\u2019s history since the dotcom bubble, and worked with companies like Locaweb, Globo.com, GE, HP, GM, IBM, Ford, Yahoo, and Netflix teaching and coaching modern agile software engineering practices. Today, as the Director of Engineering at Nubank, he leads one of the best software engineering teams in the country to WOW customers while freeing them from complexity, so they can have control of their financial lives.\",\"url\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/author\\\/freire\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Por que achamos que o Flutter vai nos ajudar a escalar o desenvolvimento m\u00f3vel no Nubank - Building Nubank","description":"Uma vis\u00e3o geral dos crit\u00e9rios e estudo que realizamos para decidir usar o Flutter como a nossa tecnologia principal para desenvolvimento m\u00f3vel entre plataformas.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/","og_locale":"pt_BR","og_type":"article","og_title":"Por que achamos que o Flutter vai nos ajudar a escalar o desenvolvimento m\u00f3vel no Nubank - Building Nubank","og_description":"Uma vis\u00e3o geral dos crit\u00e9rios e estudo que realizamos para decidir usar o Flutter como a nossa tecnologia principal para desenvolvimento m\u00f3vel entre plataformas.","og_url":"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/","og_site_name":"Building Nubank","article_published_time":"2019-09-30T17:34:00+00:00","article_modified_time":"2024-03-21T12:07:34+00:00","og_image":[{"width":1440,"height":600,"url":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2020\/04\/Flutter-will-help-us-scale-mobile-development-Header.jpg?fit=1440%2C600&ssl=1","type":"image\/jpeg"}],"author":"Alexandre Freire - Director of Engineering","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Alexandre Freire - Director of Engineering","Est. tempo de leitura":"27 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/#article","isPartOf":{"@id":"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/"},"author":{"name":"Alexandre Freire - Director of Engineering","@id":"https:\/\/building.nubank.com\/pt-br\/#\/schema\/person\/2b1a6429af0e25243469b1d749731621"},"headline":"Por que achamos que o Flutter vai nos ajudar a escalar o desenvolvimento m\u00f3vel no Nubank","datePublished":"2019-09-30T17:34:00+00:00","dateModified":"2024-03-21T12:07:34+00:00","mainEntityOfPage":{"@id":"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/"},"wordCount":2434,"commentCount":0,"image":{"@id":"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2020\/04\/Flutter-will-help-us-scale-mobile-development-Header.jpg?fit=1440%2C600&ssl=1","keywords":["Flutter","mobile development","React Native"],"articleSection":["Software Engineering"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/","url":"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/","name":"Por que achamos que o Flutter vai nos ajudar a escalar o desenvolvimento m\u00f3vel no Nubank - Building Nubank","isPartOf":{"@id":"https:\/\/building.nubank.com\/pt-br\/#website"},"primaryImageOfPage":{"@id":"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/#primaryimage"},"image":{"@id":"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2020\/04\/Flutter-will-help-us-scale-mobile-development-Header.jpg?fit=1440%2C600&ssl=1","datePublished":"2019-09-30T17:34:00+00:00","dateModified":"2024-03-21T12:07:34+00:00","author":{"@id":"https:\/\/building.nubank.com\/pt-br\/#\/schema\/person\/2b1a6429af0e25243469b1d749731621"},"description":"Uma vis\u00e3o geral dos crit\u00e9rios e estudo que realizamos para decidir usar o Flutter como a nossa tecnologia principal para desenvolvimento m\u00f3vel entre plataformas.","breadcrumb":{"@id":"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/#primaryimage","url":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2020\/04\/Flutter-will-help-us-scale-mobile-development-Header.jpg?fit=1440%2C600&ssl=1","contentUrl":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2020\/04\/Flutter-will-help-us-scale-mobile-development-Header.jpg?fit=1440%2C600&ssl=1","width":1440,"height":600},{"@type":"BreadcrumbList","@id":"https:\/\/building.nubank.com\/pt-br\/por-que-achamos-que-o-flutter-vai-nos-ajudar-a-escalar-o-desenvolvimento-movel-no-nubank\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/building.nubank.com\/pt-br\/"},{"@type":"ListItem","position":2,"name":"Por que achamos que o Flutter vai nos ajudar a escalar o desenvolvimento m\u00f3vel no Nubank"}]},{"@type":"WebSite","@id":"https:\/\/building.nubank.com\/pt-br\/#website","url":"https:\/\/building.nubank.com\/pt-br\/","name":"Building Nubank","description":"We make the extraordinary happen","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/building.nubank.com\/pt-br\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Person","@id":"https:\/\/building.nubank.com\/pt-br\/#\/schema\/person\/2b1a6429af0e25243469b1d749731621","name":"Alexandre Freire - Director of Engineering","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/secure.gravatar.com\/avatar\/ef8d881e0732682d2c28625b3080a288e5be75bd050d187e05f8a7ec0c263953?s=96&d=identicon&r=g79bcfa14d199e45c1adbb8dadb3ee3d2","url":"https:\/\/secure.gravatar.com\/avatar\/ef8d881e0732682d2c28625b3080a288e5be75bd050d187e05f8a7ec0c263953?s=96&d=identicon&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ef8d881e0732682d2c28625b3080a288e5be75bd050d187e05f8a7ec0c263953?s=96&d=identicon&r=g","caption":"Alexandre Freire - Director of Engineering"},"description":"Alexandre Freire has experienced many phases of the Software Engineering Industry\u2019s history since the dotcom bubble, and worked with companies like Locaweb, Globo.com, GE, HP, GM, IBM, Ford, Yahoo, and Netflix teaching and coaching modern agile software engineering practices. Today, as the Director of Engineering at Nubank, he leads one of the best software engineering teams in the country to WOW customers while freeing them from complexity, so they can have control of their financial lives.","url":"https:\/\/building.nubank.com\/pt-br\/author\/freire\/"}]}},"jetpack_featured_media_url":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2020\/04\/Flutter-will-help-us-scale-mobile-development-Header.jpg?fit=1440%2C600&ssl=1","jetpack_shortlink":"https:\/\/wp.me\/pbKBB5-6YE","jetpack_sharing_enabled":true,"authors":[{"term_id":2343,"user_id":178110058,"is_guest":0,"slug":"freire","display_name":"Alexandre Freire - Director of Engineering","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/ef8d881e0732682d2c28625b3080a288e5be75bd050d187e05f8a7ec0c263953?s=96&d=identicon&r=g","0":null,"1":"","2":"","3":"","4":"","5":"","6":"","7":"","8":""}],"_links":{"self":[{"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/posts\/26824","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/users\/178110058"}],"replies":[{"embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/comments?post=26824"}],"version-history":[{"count":4,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/posts\/26824\/revisions"}],"predecessor-version":[{"id":28750,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/posts\/26824\/revisions\/28750"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/media\/21588"}],"wp:attachment":[{"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/media?parent=26824"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/categories?post=26824"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/tags?post=26824"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/ppma_author?post=26824"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}