Voltar
Install Tracker: de um evento no jogo ao globo girando no nosso escritório
Engenharia de Dados

Install Tracker: de um evento no jogo ao globo girando no nosso escritório

Paulo Cavalcanti Por Paulo Cavalcanti, Associate Data Engineer · Agosto de 2026

Install Tracker: de um evento no jogo ao globo girando no nosso escritório

Streaming de eventos, escrita atômica, modo replay e um globo em Three.js. A arquitetura de uma aplicação que não pode parar.

Três primeiras vezes ao mesmo tempo

Primeiro estágio. Primeira vez morando em São Paulo. Primeiro contato com Data Engineering. No fim de 2024, tudo isso aconteceu de uma vez só, e lembro do nervosismo de chegar no primeiro dia sabendo que era ali que eu ia descobrir se tudo que eu tinha aprendido na faculdade funcionava fora dela.

Spoiler: funcionava. Só não do jeito que eu imaginava.

Meu nome é Paulo, sou formado em Ciência da Computação pela UFCG, em Campina Grande. Fui estagiário na Wildlife Studios, no time de dados, e hoje sigo aqui, efetivado como engenheiro de dados júnior na mesma área. Esse texto é sobre como essa transição aconteceu, e sobre um dos projetos que mais marcaram minha trajetória até aqui.

Como cheguei aqui

Antes da Wildlife, minha única experiência profissional era em um laboratório da universidade, o Bra.in, que possui parceria com a empresa. Lá eu trabalhava em projetos internos, principalmente voltados para backend e testes. Na prática, eu já resolvia atendendo aos chamados antes mesmo de conhecer alguém da empresa. Foi esse trabalho que chamou a atenção do meu gestor, e o convite veio acompanhado de um desafio: ele achava que seria interessante eu conhecer a área de engenharia de dados.

Eu não tinha experiência prévia na área e ainda não sabia exatamente o que esperar. A oportunidade apareceu, e eu decidi aceitar o desafio.

Primeiras experiências

Os primeiros três meses do estágio foram presenciais, em São Paulo. Foi um período de muitas primeiras vezes acontecendo juntas: uma nova cidade, uma nova empresa e uma área completamente diferente daquilo que eu tinha estudado até então.

O que tornou essa adaptação possível foi a forma como fui recebido pelo time. Desde o primeiro dia, as pessoas me ajudaram a entender o fluxo de dados da empresa: de onde os dados nasciam, como eram processados e como chegavam até quem precisava tomar decisões. Mais do que apresentar ferramentas e processos, o time compartilhava o contexto. Eu aprendi com a experiência de quem já tinha passado pelos mesmos desafios, cometido erros e encontrado soluções antes de mim. Estar cercado de pessoas muito boas tecnicamente, mas que também tinham disposição para ensinar, acelerou meu aprendizado de uma forma que nenhum curso conseguiria.

Foi nesse período que comecei a pegar minhas primeiras tarefas de verdade: otimização de queries em SQL e Spark para melhorar o desempenho de alguns produtos. Pode parecer uma mudança pequena olhando de fora, mas foi ali que entendi na prática como a engenharia de dados sustenta o dia a dia de quem toma decisões na empresa.

Depois desses três meses, voltei para Campina Grande e continuei o estágio de forma remota enquanto terminava a faculdade. Mas foi ainda nesse começo que apareceu o projeto que se tornaria uma das partes mais marcantes da minha história aqui.

O Install Tracker: o projeto que virou meu

Quem caminha pelo escritório da Wildlife passa por um cubo de quatro TVs logo na entrada. Em uma delas, um globo 3D gira devagar, com pontos de luz surgindo espalhados pelo mapa. Cada um dos pontos representa um install de um dos nossos jogos acontecendo em algum lugar do mundo, quase em tempo real. E no topo da tela, um contador mundial de downloads acompanha esse movimento, subindo conforme novos jogadores chegam aos nossos jogos.

Essa aplicação é o Install Tracker, o projeto pelo qual me tornei responsável durante o estágio.

A ideia do projeto já existia antes de mim. Em algum momento, a sua primeira versão estava repleta de ideias, mas com o passar do tempo foi se perdendo e acabou deixando de fazer parte do dia a dia da empresa. Quando cheguei, recebi a missão de recuperar essa ideia, reconstruir a solução e assumir a responsabilidade por ela de ponta a ponta. E o objetivo não era apenas fazer os dados aparecerem na tela: era transformar milhões de eventos acontecendo dentro dos nossos jogos em uma experiência que qualquer pessoa pudesse entender em poucos segundos ao caminhar pelo escritório.

Como funciona por trás da tela

Para isso, a arquitetura precisava ser simples, confiável e capaz de ficar funcionando continuamente em uma TV no escritório.

Do lado dos dados, um notebook em PySpark roda de hora em hora no Databricks, lendo a tabela de eventos. Uma variação: dos eventos continuamente, em streaming, por tudo o que acontece dentro deles. No meio de milhões de eventos, o job procura um padrão específico: os primeiros eventos que um jogador envia na sua primeira sessão, que é o que caracteriza um install. De cada um, ele guarda só três informações: o minuto em que aconteceu e a latitude e longitude de onde veio, calculadas a partir do IP. Nada sobre quem instalou, só o ponto no mapa. Tudo isso é salvo em um arquivo JSON, publicado em um bucket do S3.

Do outro lado, um backend leve em Node.js + Express lê esse arquivo sob demanda e entrega os dados para a aplicação web em React, a mesma que roda na TV. Sem banco de dados, sem fila, sem estado: o arquivo no S3 é a única fonte de verdade, e é isso que mantém a arquitetura simples de operar.

O "quase" do "quase em tempo real" existe por um motivo: o pipeline trabalha com uma janela de segurança de uma hora, garantindo que o dado daquele período tenha sido processado e publicado antes de aparecer na tela. Na prática, o que a aplicação mostra é o mundo usando nossos jogos, minuto a minuto, com esse pequeno atraso proposital.

Como a aplicação fica ligada o dia inteiro em uma TV, alguns detalhes fazem arena: o arquivo novo só substitui o anterior quando está completamente pronto (escrita atômica), evitando que a tela leia um dado incompleto; e, caso exista algum atraso no processamento, a aplicação entra em um modo de replay do histórico recente, garantindo que a TV nunca fique vazia.

Do ponto de vista de engenharia de dados, o pipeline é relativamente simples. O difícil sabidamente estava em outro lugar.

Do mapa plano ao globo 3D

A parte mais desafiadora do projeto não foi a engenharia de dados. Foi transformar os dados em uma experiência visual.

Front-end nunca tinha sido o meu território. Durante a reconstrução do projeto, a primeira abordagem que fiz já resolver a parte funcional: os dados estavam chegando e era possível visualizar a instalação. Mas a resolução de nos encaixar### Ainda não transmitia a dimensão do que aqueles números significavam. Era um mapa com informações corretas, mas que não contava uma história. Ele mostrava os dados, mas ainda não mostrava o impacto deles.

Foi nesse momento que meu gestor me deu autonomia para explorar uma abordagem diferente. **Para isso, usei React (framework de front-end) com Three.js (biblioteca de gráficos 3D) para transformar aquele mapa, juntar as peças, considerar os pontos, juntar os pontos de luz, observar a área e refletir o mapa como um globo vivo, e a Terra girando devagar, cada instale surgindo como ponto de luz na sua localização correspondente. A animação acompanha o relógio, com uma hora de diferença: os pontos que acendem no globo agora são os instales que aconteceram neste mesmo minuto, na hora anterior. Quando o minuto vira, entram os instales do minuto seguinte, e assim a Terra vai sendo iluminada, no mesmo ritmo em que o mundo instala os nossos jogos.

Foi assim que o mapa plano virou um globo, e o Install Tracker ganhou a forma que tem hoje.

O impacto foi além do que a parte técnica. Métricas que antes existiam apenas em dashboards movidos a meio da parte interna, ficam claras, ficam visíveis para qualquer: o resultado de várias áreas da empresa, acontecendo diante dos olhos de todo mundo.

E, para mim, essa foi a parte mais especial: não apenas o resultado final, mas o processo. Eu não tinha experiência com aquele tipo de solução, e tive espaço para propor uma ideia diferente, testar caminhos, errar e ajustar até chegar em algo que funcionasse. Essa confiança da liderança apareceu em várias outras pontos da minha trajetória.

De estagiário a engenheiro de dados

Hoje, trabalho de Campina Grande, de forma remota, enquanto o time está em São Paulo. E existe algo muito especial nessa dinâmica: o globo que construí continua girando em uma TV a mais de dois mil quilômetros daqui, recebendo as pessoas que chegam ao escritório todos os dias, enquanto eu continuo cuidando com cuidado à distância, do outro lado do país. Fui efetivado no mesmo time em queestagiei, depois de um ano e dois de duração, um total de dois meses, como uma continuação natural de uma trajetória que eu já vinha construindo desde o começo. E o mais importante: a sensação de apoio nunca mudou. Continuo tendo espaço para aprender, contribuir e crescer.

Tudo que sei sobre Data Engineering aprendi aqui dentro, e continuo aprendendo, porque cada projeto novo me coloca diante de algo que ainda não domino. Meu objetivo é me afastar cada vez mais a cada dia para me especializar na área, e sinto que tenho espaço real para construir esse caminho: quando comento nas minhas 1:1 que quero aprender sobre algum assunto novo, o leader busca, dentro do possível, projetos em que eu possa explorar esse tema na prática. Isso mudou minha visão sobre desenvolvimento profissional: aqui, um projeto não nasce apenas de uma necessidade do time; ele também pode nascer de uma vontade de aprender. As responsabilidades e entregas continuam existindo, claro. Mas o crescimento não fica para depois do trabalho: ele faz parte do trabalho.

É nesse ambiente que quero continuar. E é na Wildlife que me imagino seguindo essa história.

Para quem está pensando em se candidatar

Meu conselho é simples: não espere se sentir 100% pronto.

Eu também não estava. Entrei nessa jornada sem conhecer profundamente a área, vivendo várias primeiras vezes ao mesmo tempo: uma nova cidade, uma nova empresa e uma nova carreira.

O que descobri é que estar preparado não significa saber tudo antes de começar. Muitas vezes, significa estar disposto a aprender rápido, pedir ajuda e aproveitar as oportunidades que ficam frente a provas do que aparece. Foi assim comigo, e sigo aqui até hoje.


Compartilhe:

Paulo Cavalcanti Por Paulo Cavalcanti, Associate Data Engineer · Agosto de 2026

Artigos

Leia histórias dos nossos estagiários

O que aprendi quando a teoria encontrou o mundo real

Ciência

O que aprendi quando a teoria encontrou o mundo real

Por Lucca Gamballi · Agosto de 2026

Por que eu insisti em fazer jogos

Engenharia

Por que eu insisti em fazer jogos

Por Lucas Nunes · Agosto de 2026

Data Science aplicado a jogos: meu estágio na Wildlife Studios

Ciência

Data Science aplicado a jogos: meu estágio na Wildlife Studios

Por Gabriel Lucena · Agosto de 2026