O processo de construção de um CRM completo do zero — decisões de arquitetura, desafios técnicos e os resultados que geramos para o negócio.
O Axxos CRM foi o projeto mais ambicioso que já desenvolvi. Um sistema construído do zero para substituir processos manuais e fragmentados, automatizar o fluxo comercial inteiro e dar visibilidade real sobre as operações da empresa.
O problema
Antes do CRM, o time comercial da Axxos operava com planilhas, WhatsApp e e-mail. Cada etapa do funil de vendas era manual. Não havia rastreabilidade, os dados ficavam espalhados, e qualquer análise dependia de alguém juntar tudo na mão.
O objetivo era claro: centralizar tudo, automatizar o que fosse possível e dar ao time uma ferramenta que realmente funcionasse no dia a dia.
Arquitetura
O sistema foi construído com:
- Backend: NestJS + TypeScript, estruturado em módulos com separação clara de responsabilidades
- Banco de dados: PostgreSQL para dados transacionais, Redis para cache e filas
- Frontend: React + TypeScript com foco em usabilidade para o time comercial
- Infra: Docker + AWS, com CI/CD configurado para deploys automáticos
Optei por uma arquitetura modular desde o início para facilitar a evolução do sistema. Cada módulo (clientes, oportunidades, tarefas, relatórios) tem sua própria camada de serviço e repositório.
Principais funcionalidades
- Gestão de funil: pipeline visual com etapas configuráveis e movimentação por drag-and-drop
- Automações: regras de negócio que disparam ações automaticamente (notificações, tarefas, mudanças de status) sem intervenção humana
- Integração com APIs externas: webhooks para sincronizar dados com outras ferramentas usadas pela empresa
- Relatórios em tempo real: dashboards com métricas do funil, taxa de conversão, tempo médio de fechamento
- Controle de acesso: permissões por papel, garantindo que cada usuário veja e faça só o que deve
Desafios técnicos
O maior desafio foi modelar o funil de vendas de forma flexível o suficiente para acomodar diferentes tipos de oportunidade sem tornar o sistema complexo demais. Cheguei a três ou quatro iterações no modelo de dados antes de encontrar uma estrutura que funcionasse bem.
Outro ponto foi a performance dos relatórios. Com volume de dados crescendo, queries simples começaram a ficar lentas. Resolvi com índices estratégicos, agregações pré-computadas e cache no Redis para as métricas mais acessadas.
Resultados
- 100% do fluxo comercial automatizado — nenhuma etapa manual no funil
- 60% de redução nos custos de infraestrutura (migração e otimização)
- 70% de aumento na eficiência operacional do time
- 30% de crescimento nas vendas
- 15% de aumento na receita da empresa
Esses números refletem o impacto direto de ter um sistema que funciona — não só tecnicamente, mas para o negócio.
O que aprendi
Construir um CRM do zero te força a entender profundamente o processo de vendas. Tive que aprender o negócio para conseguir modelar bem o sistema. A parte técnica foi a parte fácil — o desafio real foi entender o que o time precisava e traduzir isso em software que fizesse sentido para eles.
Se tivesse que refazer, investiria mais tempo em testes automatizados desde o início. Com a velocidade de desenvolvimento que o projeto exigiu, acabei acumulando dívida técnica em alguns módulos que depois custou tempo para limpar.