Pular para o conteúdo
tech

Vibe Coding Não É Suficiente — Por Que Eu Adotei Spec-Driven Development

·6 min de leitura·15 visualizações

Assisti um vídeo do Pasquadev essa semana que verbalizou algo que eu já vinha sentindo faz meses: vibe coding não é suficiente. E se você trabalha com IA pra codar — como eu trabalho todo dia — precisa ouvir isso.

O hype do vibe coding dominou 2025. Andrej Karpathy cunhou o termo, o Twitter pirou, e de repente todo mundo estava "construindo apps inteiros só com prompts". Parecia mágico. E em parte é.

Mas tem um problema que ninguém fala nas demos de 2 minutos no Twitter.

O que acontece depois do protótipo

Eu vivo isso na prática. Gerencio múltiplos projetos em produção — Sistema Reino, HubNews, NeuralNets, além de projetos menores. Uso Claude Code como meu par de programação diário. IA não é novidade pra mim. É meu workflow.

E justamente por usar IA intensivamente, eu sei onde ela quebra.

Vibe coding funciona incrivelmente bem pra prototipagem. Você descreve o que quer, a IA cospe código, você itera rápido. Em 30 minutos tem algo funcionando. Mas tenta manter esse projeto por 3 meses. Tenta adicionar uma feature complexa num código que foi "vibado" sem planejamento.

O que acontece: a IA não sabe o que você quer. Ela adivinha. E adivinhar funciona pra scripts simples, mas não funciona pra sistemas reais.

O padrão que eu vi se repetir

Em todo projeto onde eu pulei direto pra implementação — mesmo usando IA — o mesmo ciclo apareceu:

  1. Velocidade absurda nos primeiros dias
  2. Desaceleração gradual conforme a complexidade cresce
  3. Retrabalho constante porque a IA não tinha contexto suficiente
  4. Decisões de arquitetura inconsistentes porque cada prompt gerava código com premissas diferentes

A IA é rápida. Mas rápida pra onde? Se você não definiu o destino, velocidade é só girar em círculos.

Spec-Driven Development: o que é

SDD — Spec-Driven Development — é a resposta prática pra isso. A ideia central é simples: especifique antes de codar.

Não é nada revolucionário. Engenharia de software clássica sempre pregou isso. A diferença é que agora, com IA como executor, a especificação ganha um papel ainda mais crítico. A IA não tem intuição. Ela precisa de contexto explícito. E uma spec é exatamente isso.

O workflow do SDD tem 4 fases:

1. Specify — Defina o que vai construir

Antes de abrir o terminal, escreva o que o sistema precisa fazer. Não em termos técnicos — em termos de usuário e comportamento.

  • Quem usa?
  • O que resolve?
  • Quais são os fluxos principais?
  • Quais são os edge cases?
  • O que está fora do escopo?

Isso vira um documento que a IA vai usar como fonte de verdade.

2. Plan — Defina como vai construir

Aqui entra a parte técnica. Stack, arquitetura, restrições, padrões.

No meu caso: "Laravel 13 com Inertia, MySQL, Redis, deploy via Forge, workers no Supervisor." Isso não muda a cada prompt. Isso é contexto permanente que a IA precisa respeitar.

3. Tasks — Quebre em pedaços

Transforme a spec e o plano em tarefas pequenas, implementáveis e testáveis isoladamente. Cada tarefa endereça um componente específico.

A IA executa melhor quando o escopo é claro. Um prompt vago gera código vago. Uma task específica gera código específico.

4. Implement — Execute com contexto

Agora sim, código. Mas cada linha de código tem rastreabilidade. Você sabe por que existe, o que resolve, e contra o que deve ser testada.

Como isso funciona no meu dia a dia

Eu não uso um framework formal de SDD. Não preciso. O que eu faço é aplicar o princípio no meu workflow com Claude Code.

Antes de pedir qualquer implementação, eu escrevo um CLAUDE.md no projeto. Esse arquivo é a spec viva — define stack, padrões, decisões de arquitetura, e o que a IA deve e não deve fazer.

Quando preciso de uma feature nova, eu entro em plan mode. Descrevo o que quero, peço pro Claude propor a abordagem, reviso, ajusto, e só depois aprovo a implementação. Não é vibe coding. É engenharia com IA.

E os resultados são claros:

  • Menos retrabalho — a IA já sabe o contexto antes de escrever a primeira linha
  • Código consistente — mesmos padrões em todo o projeto
  • Deploys mais seguros — cada mudança é rastreável a uma decisão documentada
  • Velocidade sustentável — rápido no dia 1 e rápido no dia 90

O que o Pasquadev acertou

O vídeo do Pasquadev toca num ponto que a maioria da comunidade dev brasileira ainda não internalizou: a IA não substitui pensamento. Ela amplifica o que você já tem.

Se você tem clareza do que quer construir, a IA te leva lá 10x mais rápido. Se você não tem, ela te leva 10x mais rápido pro lugar errado.

Vibe coding é o martelo. SDD é o projeto da casa. Você pode martelar o dia inteiro, mas sem planta, não vai ter uma casa — vai ter uma pilha de madeira.

Quando vibe coding ainda faz sentido

Não estou dizendo que vibe coding é inútil. Tem seu lugar:

  • Protótipos e provas de conceito
  • Scripts únicos que você vai rodar uma vez
  • Exploração — quando você não sabe o que quer e está testando ideias
  • Hackathons e MVPs descartáveis

O problema é quando vibe coding vira o modo padrão. Quando você constrói sistemas inteiros "na vibe" e depois se pergunta por que tudo virou uma bola de lama.

Minha posição

Eu codo com IA todo dia. Literalmente. Meu servidor de produção é gerenciado por Claude Code via Telegram. Meus deploys, investigações de incidentes, code reviews — tudo passa por IA.

E justamente porque eu levo IA a sério como ferramenta de engenharia, eu não faço vibe coding em produção. Eu especifico. Eu planejo. Eu defino contexto. E aí sim, eu deixo a IA executar.

Spec-Driven Development não é burocracia. É o mínimo de disciplina pra que a velocidade da IA trabalhe a seu favor — e não contra você.

Para de vibrar. Começa a especificar.

Quer aplicar isso no seu projeto?

Mentoria e consultoria em carreira, código e produtos digitais.

Falar com Billy
Billy

Billy

Full Stack Dev & Empreendedor Solo

Construindo produtos com código e IA. Criador do HubNews e Sistema Reino.

Compartilhar:XLinkedInWhatsApp