Como construí uma plataforma de incentivo comercial gamificada com ranking em tempo real via Socket.io para a equipe de vendas da Stone.

O Stone Destino Chile foi um dos projetos mais divertidos de desenvolver. O desafio: criar uma plataforma de incentivo comercial gamificada para a equipe de vendas da Stone Diamantina, com ranking em tempo real e uma experiência que fizesse o time querer participar — os melhores colocados ganhariam uma viagem ao Chile.
Impacto em números
Da planilha original da Stone
Atualização em tempo real
Ativo, Novo, Churn, TPV
Infraestrutura própria
O contexto
A Stone precisava de uma ferramenta para uma campanha comercial específica — uma competição interna onde os vendedores acumulavam pontos por metas atingidas, e os melhores colocados ganhariam uma viagem ao Chile.
O sistema precisava ser rápido de desenvolver, confiável durante toda a campanha e capaz de mostrar o ranking atualizado em tempo real para todos os participantes. O prazo era fixo — a campanha tinha data marcada.
Sobre o projeto
Para a Stone, construí uma plataforma de gamificação de vendas usada pela equipe comercial da Stone Diamantina. O sistema transforma o processo de vendas em uma competição com ranking em tempo real, badges, conquistas e premiação.
A interface conta com um dashboard pessoal onde o vendedor acompanha seus pontos, sua posição no ranking, progresso de meta e o pódio visual do Top 3. Implementamos também um formulário multi-step para captura de leads com validação de CNPJ, CEP e integração com Cloudinary para fotos.
Funcionalidades principais:
- Ranking em tempo real: quando uma venda era registrada e os pontos computados, todos os participantes viam o ranking atualizar instantaneamente — sem delay, sem refresh
- Autenticação segura: acesso controlado por credenciais individuais via Supabase SSR
- Painel de gestão: interface separada para administradores gerenciarem participantes, pontuações e configurações
- Histórico de pontuação: cada vendedor via o detalhamento de como seus pontos foram acumulados — transparência total no processo
O desafio técnico
O problema central era transformar uma planilha da Stone com 178 colunas e milhares de registros em um ranking justo, automatizado e em tempo real.
Desenvolvi um motor de importação com classificação automática de clientes — Ativo, Novo, Churn, TPV — e um score multiplicativo (L×M) que zeraria qualquer vendedor que performasse bem em apenas um dos dois pilares.
Com WebSockets, você precisa pensar cuidadosamente em como distribuir eventos e garantir que o estado do cliente esteja sempre sincronizado com o servidor. Resolvi isso com um modelo de eventos imutáveis no backend: cada mudança de pontuação gera um evento que é transmitido para todos os clientes conectados, que recalculam o ranking localmente. Simples e eficiente.
O prazo também foi um constraint real. Priorizei as funcionalidades core e deixei melhorias de UX para uma segunda fase — que acabou não sendo necessária porque o sistema funcionou bem desde o início.
Métricas de Crescimento
Engajamento dos Vendedores
Precisão do Ranking
Stack técnica
WebSockets (Socket.io)
Ranking atualiza automaticamente para todos os participantes conectados. Modelo de eventos imutáveis garante consistência sem race conditions.
Supabase SSR
Autenticação segura via cookies com validação de role no Prisma. Zero dependência de client-side auth para rotas sensíveis.
React + TypeScript
Dashboard pessoal responsivo com pódio visual, progresso de meta e histórico de pontuação detalhado.
Cloudinary
Gerenciamento otimizado de imagens de PDV. Upload no formulário multi-step com validação de CNPJ e CEP integrada.
Resultado
O sistema rodou durante toda a campanha sem nenhum incidente. O ranking em tempo real criou exatamente o nível de engajamento esperado — vendedores acompanhando a posição uns dos outros e competindo ativamente pelas metas.
Foi um projeto que me ensinou bastante sobre desenvolvimento orientado a prazo e sobre como simplificar a arquitetura quando o tempo é o principal constraint. Com zero dependências externas de ranking e autenticação dupla via Supabase SSR, o sistema foi 100% auditável do início ao fim.
Posts relacionados