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 Medina, Ivette Ayala
No Nubank, centenas de times geram milhares de ativos de dados para atender mais de 130 milhões de clientes em vários países. A arquitetura distribuída que viabiliza essa escala também traz um desafio analítico: à medida que a plataforma de dados cresce, ela se torna cada vez mais complexa e fragmentada, dificultando sua compreensão e navegação.
O Discover Df nasceu da premissa de que, em um ambiente distribuído, entender ativos de dados não pode ser deixado ao acaso. Isso precisa ser feito de forma sistemática, transformando a complexidade em algo estruturado e acessível. O objetivo é que qualquer analista, em qualquer time, consiga ir do primeiro contato com um conjunto de dados até fazer contribuições relevantes em dias, não em semanas ou meses.
O custo invisível do onboarding
Quem já chegou a um novo time como Analista de Negócios conhece bem essa sensação. Você chega com energia e ideias, mas antes de poder contribuir, há um pedágio invisível a pagar: entender os datasets do time. Quais tabelas realmente importam, o que cada filtro representa, onde estão os casos de borda. Atingir esse nível de familiaridade pode levar semanas, às vezes meses.
Agora imagine um projeto interfuncional com prazo apertado. Você precisa trabalhar com datasets que pertencem a outros times, que você não teve tempo de entender a fundo. A abordagem mais comum é pragmática: contar linhas, dar uma olhada em algumas colunas e, em seguida, entrar em contato com o BA ou AE do time para preencher as lacunas.
Funciona, mas é frágil. Filtros importantes vinculados ao seu contexto específico podem passar despercebidos, oportunidades de segmentação ficam sem ser exploradas, e as decisões acabam sendo tomadas com base em um modelo mental incompleto dos dados. Isso não acontece por falta de habilidade do analista, mas porque não existe uma forma estruturada de explorar esse território.
É aqui que começa a hipótese. O custo do onboarding não é inevitável, porque os datasets não são intrinsecamente difíceis de entender, mas sim porque falta uma maneira consistente e repetível de se aproximar deles desde o primeiro contato.
E se esse processo pudesse ser comprimido? Em vez de semanas de absorção passiva de contexto, um analista poderia rodar uma única função e, em minutos, entender o conteúdo do dataset, seus limites, distribuições e estrutura. A partir daí, as conversas com os donos dos dados mudariam: o analista passaria da dependência para a contribuição, de pedir explicações para propor direções embasadas.
Conheça nossas oportunidades
Você não pode explorar o que não sabe que existe
Quando analistas se deparam com um dataset novo hoje, costumam começar pelo que já conhecem: exploram campos familiares, perguntam ao time responsável sobre o restante e vão construindo gradualmente um entendimento operacional. Uma vez que você sabe onde olhar, esse processo é rápido e eficaz. O problema é que ele pressupõe que você já sabe onde olhar.
Pense em um dataset com dezenas ou centenas de colunas cobrindo identidades de clientes, horizontes temporais e categorias comportamentais. O analista perfila o que parece familiar, busca contexto sobre o que não conhece, e segue em frente — mas há muito mais a descobrir.
Dimensões de segmentação com potencial continuam ocultas, e padrões que revelam a estrutura dos dados estão presentes, mas nem sempre emergem. Esses elementos podem influenciar diretamente decisões melhores, mas com frequência ficam inexplorados.
Isso se torna ainda mais relevante em projetos que envolvem múltiplos datasets, às vezes pertencentes a times diferentes. Cada camada adicional de entendimento agrega valor, e quanto mais completo for o panorama, mais sólida será a base para tudo que vier depois.
Há uma diferença significativa entre conhecer algumas dimensões e realmente entender um objeto de dados que captura a atividade, os estados e o comportamento dos clientes. Quando um analista chega a esse nível de compreensão, as conversas de alinhamento mudam. Em vez de pedir contexto, ele chega pronto para contribuir, com uma visão clara de todo o panorama que os dados representam.
Três princípios para entender qualquer dataset
A ideia central por trás do DiscoverDf é que qualquer dataset, independentemente do domínio ou de quem seja o dono, pode ser compreendido por meio de três princípios universais. Cada um está associado a um nível diferente de cardinalidade de coluna.
O Quê: quais entidades esse dataset contém e em que escala
As colunas com maior cardinalidade, frequentemente com milhões ou centenas de milhões de valores únicos, respondem à pergunta mais fundamental: quais entidades existem nesse dataset e em que escala?
Normalmente são identificadores: IDs de clientes, IDs de contas, IDs de transações, IDs de faturas. Ao observar a contagem de valores únicos no topo de um perfil ordenado, o analista consegue inferir rapidamente a granularidade dos dados, estimar o tamanho da população e entender como as entidades se relacionam entre si.
O Quando: a estrutura temporal dos dados
Colunas com cardinalidade entre centenas e dezenas de milhares geralmente representam tempo. Mesmo sem depender dos nomes das colunas, esse intervalo é um forte sinal de estrutura temporal.
A partir daí, o analista identifica a coluna de data principal verificando contagens de nulos, valores mínimos e máximos, e a distribuição ao longo do tempo. Em questão de segundos, fica claro até onde os dados retrocedem, quão recentes são e se há lacunas que precisam de atenção.
O Como: as dimensões disponíveis para análise
Colunas com cardinalidade baixa, muitas vezes com cem ou menos valores únicos, definem como os dados podem ser explorados. São campos categóricos e de status: tipos de produto, status de empréstimo, segmentos de clientes, flags e categorias comportamentais.
Elas representam os eixos naturais para filtrar, agrupar e analisar. Ao mesmo tempo, costumam ser as mais ignoradas durante a exploração inicial. O DiscoverDf as torna explícitas, mostrando cada dimensão junto com sua distribuição completa de valores. O que de outra forma dependeria de conhecimento do domínio passa a ser estruturado e imediatamente acionável.
Onde os princípios se encontram com o código
Esses três princípios são independentes de linguagem ou ferramentas. Eles descrevem uma forma de pensar sobre dados, não uma implementação específica.
O DiscoverDf é implementado como uma função reutilizável em Scala rodando no Databricks. O analista passa um DataFrame e recebe um perfil estruturado com dezesseis indicadores analíticos por coluna.
A contagem de valores únicos em todas as colunas se torna a nova chave de ordenação: quando o analista organiza as colunas da maior para a menor cardinalidade, o dataset se organiza nas três camadas descritas. O Quê, o Quando e o Como emergem diretamente dos dados.
Cada coluna é então explorada em profundidade. Campos de timestamp são padronizados em formatos de data, e cada coluna é enriquecida com um conjunto consistente de sinais: distribuições de nulos e zeros, valores mínimos e máximos, contagens categóricas e de datas, e resumos estatísticos.
Para dimensões de baixa cardinalidade, a função fornece distribuições completas por categoria. Para campos de data, ela exibe distribuições temporais e sinais de monitoramento. Para colunas de alta cardinalidade, retorna valores de amostra representativos.
O resultado é uma visão estruturada do dataset que torna imediatamente visíveis sua forma, seus limites e seu potencial analítico.
Ver o panorama completo antes da primeira consulta
Para ilustrar como a função funciona, pense em rodar o DiscoverDf em um dataset com centenas de milhões de linhas e dezenas de colunas.
Assim que as colunas são ordenadas por valores únicos em ordem decrescente, uma estrutura começa a emergir. O primeiro bloco mostra três colunas com centenas de milhões de valores únicos para IDs de transações, seguidas de dezenas de milhões para IDs de clientes e contas. A escala e a granularidade ficam imediatamente claras, e o Quê está respondido. Trata-se de um dataset transacional em que cada linha representa um evento individual conectado a uma população mais ampla de clientes.
O bloco seguinte contém nove colunas com entre um e dois mil valores únicos — um intervalo de cardinalidade que sinaliza campos de data. O analista identifica a coluna que serve como referência de data principal, verifica seu nome, valores mínimo e máximo e a distribuição de nulos. O intervalo temporal fica claro em segundos, abrangendo vários anos até os registros mais recentes. O Quando está respondido: o dataset captura anos de histórico transacional.
Na parte inferior do perfil, onze colunas têm menos de setenta valores únicos cada uma. São tipos, status, flags e campos de segmentação, todos apresentados com suas distribuições completas de valores. O Como está respondido: o analista já consegue ver onze dimensões distintas para filtrar, agrupar e analisar antes de escrever uma única query.
Descoberta como prática, não apenas como ferramenta
Uma das distinções mais importantes que aprendemos a fazer é a diferença entre descoberta e execução. O DiscoverDf foi criado para o primeiro contato com um dataset, quando o analista precisa construir um modelo mental completo do zero. Depois que esse modelo está estabelecido e o contexto está claro, o trabalho do dia a dia migra naturalmente para consultas mais rápidas e direcionadas.
O objetivo não é substituir o fluxo de trabalho do analista, mas comprimir o tempo que vem antes dele. O que normalmente leva semanas de absorção passiva de contexto se torna um processo estruturado e muito mais ágil.
Com o tempo, um segundo caso de uso surgiu: validação. Quando times criam novos datasets ou refatoram pipelines existentes, o DiscoverDf oferece uma forma estruturada de verificar se o resultado corresponde ao esperado. Ele ajuda a confirmar que a granularidade está correta, que a cobertura temporal está completa e que as dimensões categóricas contêm os valores esperados.
Princípios analíticos que transcendem a tecnologia
A contribuição mais duradoura desse trabalho é o framework em si. O Quê, o Quando e o Como são princípios que qualquer analista pode aplicar em qualquer ambiente, independentemente do stack tecnológico. O DiscoverDf é uma forma de implementá-los hoje, no Databricks. O raciocínio por trás dele foi concebido para durar além de qualquer tecnologia específica.
O próximo passo já está tomando forma. À medida que os fluxos de trabalho impulsionados por IA evoluem, o processo de descoberta descrito aqui não precisa continuar sendo manual. Agentes podem executar perfilamentos estruturados, identificar dimensões-chave e gerar resumos antes que o analista escreva uma única query. O papel humano se desloca da exploração para a interpretação e o julgamento, que é onde os analistas geram mais valor.
A pergunta maior, e a que vale a pena perseguir como organização, é o que acontece quando isso deixa de ser uma prática individual e se torna um padrão de time, incorporado à forma como fazemos onboarding, documentamos e colaboramos entre equipes. É nesse ponto que uma ferramenta útil se transforma em uma capacidade duradoura.
Por que isso importa além da ferramenta
O DiscoverDf é mais do que uma ferramenta. Ele reflete uma forma de pensar que times de análise precisam cultivar. Um dos maiores desafios que os Squad Leads enfrentam é ajudar os analistas a atingir seu potencial máximo rapidamente.
O custo de onboarding descrito neste artigo também é um custo de confiança. Analistas que passam suas primeiras semanas operando em modo de dependência, pedindo contexto e aguardando orientação, tendem a internalizar essa dinâmica. E uma vez estabelecida, ela leva tempo para ser desaprendida.
Quando essa dinâmica é removida, o efeito é imediato. Quando um analista chega a uma conversa já entendendo o dataset, já capaz de fazer perguntas melhores ou sugerir direções, a interação muda. Muda a forma como os analistas se enxergam e como os times percebem o papel deles.
Em escala, isso se multiplica. Quando todos sobem a curva mais rápido e operam com maior autonomia, o impacto eleva o padrão do que o Nubank pode alcançar com dados. Isso é um multiplicador da capacidade do time.
Há também uma dimensão cultural nesse trabalho. Um time identificou uma lacuna estrutural, construiu uma solução e a compartilhou. Esse instinto de resolver para o coletivo, e não apenas para necessidades individuais, é uma marca definidora da cultura analítica que está sendo construída no Nubank. O DiscoverDf é um exemplo. Muitos outros virão. A mudança importante é que essa mentalidade está se tornando a norma.
Conheça nossas oportunidades