Software lento custa dinheiro. Vamos consertar.
Diagnóstico e otimização de aplicações com gargalos reais — banco de dados, cache, código ou infraestrutura. Resultado mensurável, não só relatório.
performance de escrita
Módulo de relatórios de vendas de um SaaS de varejo europeu ficava mais lento à medida que o intervalo dos relatórios crescia (mês → trimestre → semestre), e a latência contaminava inserts e serviços internos. Profiling com Jaeger + migração de UUID v4 para v7 em bancos distribuídos (bilhões de registros) com uma ferramenta própria em Rust. Resultado: +260% de performance de escrita. Uma reescrita completa para Go foi evitada.
O problema que resolvemos
LCP acima de 3s, queries que travam produção, APIs com P99 de 8 segundos. Problemas de performance são aceitos como normais até o dia em que param o negócio — e nesse dia, costuma-se reagir com a decisão mais cara possível: reescrever tudo.
Na maioria dos casos, a reescrita é desnecessária. Vimos o módulo de relatórios de vendas de um SaaS de varejo europeu cogitar uma migração inteira para Go quando a causa real era fragmentação de índice por UUIDs aleatórios em bancos distribuídos. Software lento quase sempre tem três a cinco causas concretas, não uma "necessidade de mudar de linguagem".
Como trabalhamos
Profiling real em produção (não em dev, onde os números mentem), identificação das 3-5 causas que explicam 80% do problema e fix cirúrgico com benchmark antes/depois. Sem reescrita desnecessária.
O trabalho costuma começar pelo banco, onde mora a maioria dos gargalos: EXPLAIN ANALYZE nas queries mais lentas, revisão de índices, caça a N+1 no ORM, e tracing distribuído (Jaeger) para ver onde a latência realmente nasce. Em seguida, cache de sessão e autenticação, tamanho de payload nas respostas de API, pool de conexões mal dimensionado e assets sem compressão ou CDN. O caso UUID v4 → v7 é emblemático: no módulo de relatórios de vendas de um SaaS de varejo europeu, os relatórios ficavam mais lentos conforme o intervalo crescia (mês → trimestre → semestre) e a latência contaminava inserts e serviços internos. A causa era fragmentação de índice por chaves aleatórias em bancos distribuídos. Trocar a geração de chave por uma ordenada por tempo — migrando bilhões de registros com uma ferramenta própria em Rust — devolveu +260% de performance de escrita e dispensou a reescrita completa para Go que se cogitava.
Cada mudança vai para produção com cuidado: benchmarkada, com rollback preparado, aplicada em janela de baixo tráfego quando possível. O entregável não é um relatório bonito — é um comparativo verificável de antes e depois.
Antes de reescrever, verifique
- Índices usados nas queries mais lentas (EXPLAIN ANALYZE).
- N+1 queries no ORM.
- Cache de sessão e autenticação.
- Tamanho de payload nas respostas de API.
- Pool de conexões configurado corretamente.
- Assets não comprimidos ou sem CDN.
Tem uma aplicação lenta que está custando clientes ou dinheiro?
Descreve o sintoma — respondemos com as perguntas certas para diagnosticar.
- Profiling real em produção, não em ambiente de dev
- Identificação das 3-5 causas que explicam 80% do problema
- EXPLAIN ANALYZE nas queries mais lentas e revisão de índices
- Caça a N+1, payloads inchados e pool de conexões mal configurado
- Fix cirúrgico com rollback preparado e janela de baixo tráfego
- Benchmark antes/depois entregue como comparativo verificável
Faixas de investimento
Projeto Micro
PoC, site institucional, WhatsApp e chatbots pequenos. Setor não-regulamentado ou seu primeiro projeto de IA.
R$ 25.000 – R$ 65.000
- Entrega em semanas
- RAG + harness leve
Projeto Pequeno
Escopo bem definido: automação pontual, MVP enxuto, integração focada.
R$ 65.000 – R$ 250.000
- Escopo fechado
- Entrega em semanas
Projeto Médio
Chatbot com RAG, agente de IA empresarial, MVP SaaS, execução de performance.
R$ 250.000 – R$ 750.000
- Arquitetura dedicada
- Integrações
Projeto Grande
Modernização de legado, reescrita de sistema, transformação multi-fase.
A partir de R$ 800.000
- Múltiplas fases
- Time dedicado
Faixas qualitativas. O valor exato sai no Discovery, e é 100% creditado no projeto.
FAQ
Vocês mexem em sistema em produção?
Sim, com cuidado. Cada mudança é benchmarkada, rollback está preparado e aplicamos em horário de baixo tráfego quando possível.
Quanto tempo leva para ver resultado?
Depende do problema. Wins rápidos (índice, cache) aparecem em horas. Refatorações maiores levam 1-3 semanas. Sempre entregamos um benchmark comparativo.
Funciona com qualquer stack?
Sim. Node.js, Go, Python, Ruby — o gargalo geralmente está no banco ou na lógica de negócio, não na linguagem.
Quanto custa um trabalho de performance?
Wins rápidos têm escopo curto; refatorações de fundo entram como projeto. Estimamos em faixa qualitativa a partir do diagnóstico, descontada se o trabalho seguir.