mais lidos
Life at Nu
Conheça a sede do Nubank em Pinheiros, São Paulo/Brasil jan 11
Design
A nova aparência do Nubank: conheça nossa nova logo maio 17
Culture & Values
Como os valores e a cultura da Nu moldam os produtos que criamos ago 7
Carreiras
Reunimos grandes mentes de diversas origens que permitem a discussão e o debate e melhoram a resolução de problemas.
Saiba mais sobre nossas carreiras



Escrito por: Rodrigo Sampaio
Revisão: Thiago Zagui Giacomini, Rodrigo Maximo, Eduardo Roder, Tamara Campos
O Nubank cresceu muito nos últimos anos. De cartão de crédito e uma conta no banco, começamos também a oferecer investimentos, seguro, empréstimos, mercado, uma plataforma de pagamento e muito mais. Buscando apoiar esse crescimento contínuo, nós desenvolvemos um framework de interface orientada pelo servidor para aumentar a eficiência das equipes de produtos.
O Que é Interface Orientada pelo Servidor?
Interface orientada pelo servidor é uma forma de construir a interface de um aplicativo a partir do backend. Normalmente, o aplicativo instalado em um dispositivo móvel determina a interface, obtendo de um servidor apenas os dados exibidos. Portanto, quaisquer alterações na apresentação da interface, seja um novo recurso ou produto, um novo design ou até mesmo manutenção essencial, requer o lançamento de um novo aplicativo para que seus usuários o atualizem para a versão mais recente e vejam as mudanças. Isso pode levar de uma a duas semanas, pois depende da aprovação da loja de aplicativos.
Usando a interface orientada pelo servidor, é possível atualizar ou corrigir a interface de forma fácil e imediata no ambiente de produção sempre que necessário. Além de obter os dados mostrados na interface, o aplicativo também receberá informações para construí-la, exibi-la e sobre como reagir às interações do usuário.
Conheça nossas oportunidades
Testes A/B e desenvolvimento
Esse framework oferece ainda a opção de controlar a implantação de novos recursos. Dessa forma, não é necessário implantar um recurso para todos os clientes simultaneamente. Isso facilita a criação e execução de testes A/B.
Quando os recursos de um aplicativo são desenvolvidos no modo de lançamento tradicional, as alterações levam semanas para serem amplamente implementadas até que todos os clientes atualizem seus aplicativos, a menos que tais mudanças tenham sido concebidas com grande antecedência. O mais comum é que algumas modificações sejam consideradas, mas o design e arranjo completo requer uma profunda capacidade de antecipação do processo.
Os recursos da interface orientada pelo servidor são completamente personalizáveis, permitindo que decisões do produto sejam tomadas no mesmo dia.
Isso é particularmente útil para escopos com um alto grau de incerteza, onde a rápida iteração é fundamental para entender o produto, ou quando em um produto consolidado, são necessários experimentos para aumentar a conversão.
Vantagens do framework de interface orientada pelo servidor
Para resumir e listar mais vantagens, o framework de interface orientada pelo servidor:
Instruções dos Blocos de Construção
A plataforma Backend Driven Content (BDC) é o nome do nosso framework de interface orientada pelo servidor no Nubank. Nós costumamos dizer que a BDC funciona como um manual de Lego para o aplicativo do Nu. Ela explica como usar os “blocos de construção” disponíveis para construir a interface para o usuário final. Assim, ao trabalhar com a BDC, nossos desenvolvedores basicamente escrevem esses “manuais de Lego”.
Como o Nubank usa Flutter no desenvolvimento para dispositivos móveis, os blocos de construção da BDC usam componentes de Flutter internamente, que são integrados à linguagem de desenvolvimento usada por todo o Nubank, a Clojure. Temos uma equipe dedicada de engenheiros que desenvolve e mantém a plataforma da BDC. No momento, os engenheiros da Backend Driven Content oferecem uma plataforma completa para as equipes de produtos:
A Backend Driven Content também está em conformidade com o Sistema de Design do Nu. Dessa forma, todas as telas ou fluxos criados com a BDC seguem corretamente os padrões do Sistema de Design do Nu. Isso garante a consistência da interface em todo o aplicativo.
A pergunta que ouvimos com mais frequência quando apresentamos internamente a BDC para as outras equipes é: Ela infringe o regulamento das lojas de aplicativos? A resposta é não, porque todas as lojas aceitam conteúdos dinâmicos. O que nunca deve ser feito, seja no uso da interface orientada pelo servidor ou não, é levar o cliente a baixar um aplicativo que será completamente reformulado, alterando sua categoria. O que não é o caso.
O Caminho do Sucesso para a Backend Driven Content
O uso interno da BDC continua crescendo e mais equipes estão interessadas em construir novas telas e fluxos com ela. Com isso em mente, nós estamos investindo continuamente para tornar a Backend Driven Content uma ferramenta mais robusta e eficaz, capaz de suprir mais necessidades de diferentes equipes e casos de uso.
Além da constante evolução da plataforma, a colaboração é um fator importante para o sucesso da BDC. Portanto, enquanto a equipe de engenharia da Backend Driven Content trabalha para trazer mais melhorias e desbloquear novos recursos, nós encorajamos os desenvolvedores de todo o Nubank a colaborar com a plataforma. Assim, seremos capazes de unir uma comunidade interna de desenvolvedores que divulgarão a BDC e também contribuirão com o desenvolvimento da plataforma, beneficiando toda a empresa.
Por que a documentação é importante?
Os documentos são, em geral, a primeira forma de contato com um desenvolvedor e estamos atualizando e criando constantemente artigos relevantes para a comunidade da BDC.
Por falar nisso, é importante frisar que a equipe de engenharia da BDC é responsável não só por construir e manter o framework, como também apoiar o conhecimento sobre a BDC na empresa. A equipe se tornou uma referência interna no apoio a uma plataforma por meio de ações como:
Cargo de porta-voz dos desenvolvedores
Recentemente criamos o primeiro cargo de porta-voz dos desenvolvedores no Nubank, alguém que atuará como representante para a plataforma BDC. Resumidamente, essa pessoa ajudará na compreensão dos principais problemas no lado dos desenvolvedores, engajará a comunidade e trará ideias para melhorar a experiência de desenvolvimento da BDC.
O que descobrimos até agora
A Backend Driven Content já tem quase dois anos e, desde o início, causou um grande impacto. No momento, quase 70% das novas telas e fluxos criados no Nubank usam a BDC. 43% dos aplicativos já usam a plataforma, um número que continua crescendo.
O feedback que a BDC recebe das equipes de produtos é fantástico. As vantagens destacadas normalmente são:
O crescimento do framework de interface orientada pelo servidor no Nu só foi possível graças à cultura da empresa. As pessoas no Nu buscam alterar o status quo, e são muito receptivas a novas ideias, abraçar mudanças e experimentar formas diferentes de criar os produtos que nossos clientes amam. Isso ajudou não apenas a ampliar o uso da BDC, como também a solidificar um forte senso de comunidade entre os usuários da plataforma.
Conheça nossas oportunidades