Como engenheiro de software, hoje cada linha do meu código é escrita por IA: reflexões sobre o Vibe Coding

Como engenheiro de software, hoje cada linha do meu código é escrita por IA: reflexões sobre o Vibe Coding

Com mais de seis anos de estrada como engenheiro de software, faz mais de um ano que não digito uma única linha de código na mão. Hoje em dia, nos meus projetos, absolutamente tudo é escrito por IA. Só que, quando comecei a programar com inteligência artificial há pouco mais de um ano, minha lua de mel com a ferramenta durou menos de três dias.

A delícia do Vibe Coding

Lembro perfeitamente de junho do ano passado (2025), quando abri o Cursor pela primeira vez, curioso com todo o hype. À primeira vista, parecia só mais um fork do bom e velho VS Code, com a diferença de ter uma barra lateral para conversar com uma IA.

Até aquele momento, minha ideia de programar com IA se resumia ao GitHub Copilot — que nada mais era do que um autocompletar glorificado. Mas aí digitei meu primeiro comando e apertei Enter. O que aconteceu em seguida parecia mágica: a IA começou a “pensar” em tempo real e, num piscar de olhos, cuspiu dezenas, centenas de linhas de código direto no editor. Mais do que isso: navegou por vários arquivos do projeto, fez alterações simultâneas e até rodou comandos no terminal por conta própria.

Eu só precisava descrever o que queria em linguagem natural, e a IA simplesmente materializava a funcionalidade. Acabou aquela história de escrever linha por linha ou ficar esperando sugestão de código; ela assumiu, de um nível muito mais alto, boa parte do trabalho braçal da engenharia de software.

Foi uma sensação mágica, quase como segurar um pincel encantado que dá vida a tudo o que desenha. Era a empolgação pura de ver uma nova era se abrindo diante de mim.

Na época, cheguei a compartilhar este desabafo:

“O Vibe Coding foi feito sob medida para quem tem TDAH. O jeito tradicional de programar vai contra tudo o que o cérebro com TDAH gosta, enquanto o Vibe Coding cura instantaneamente o ranço de escrever testes, o pavor de CSS, os erros bobos de digitação em nomes de variáveis e o tédio sem fim de caçar bugs repetitivos.

Com a IA como copiloto, o ciclo de feedback é instantâneo e a sensação de conquista é constante. Quanto mais chata e repetitiva a tarefa, melhor a IA se sai.

O desenvolvedor passa a focar só na direção geral, na arquitetura e nas decisões macro — atuando de fato como o líder do projeto.

Eu nunca fiz questão de digitar cada caractere na mão, mas sou apaixonado pelo ato de criar. Da linguagem Assembly às linguagens de alto nível, a experiência de construir software sempre caminhou rumo a mais fluidez e eficiência.

Poder criar código do ponto de vista de um arquiteto ou criador puro, em vez de se sentir um mero operário empilhando tijolos, é um privilégio imenso para qualquer programador.”

Os limites do Vibe Coding

Esse estilo ganhou um nome próprio: Vibe Coding. O termo foi cunhado por Andrej Karpathy, cofundador da OpenAI, em fevereiro de 2025. A ideia é programar puramente “na vibe”: você diz à IA o que quer em linguagem natural, aceita o código que ela gera sem revisar linha por linha e, se der erro, joga a mensagem de erro de volta para ela resolver — até chegar ao ponto de quase esquecer que o código existe por trás dos panos.

Depois daquela empolgação inicial que relatei, a farra durou menos de três dias. Foi aí que dei de cara com os limites do Vibe Coding.

Eu estava construindo o protótipo de um app. Deixei a IA livre, trabalhando no modo puro de Vibe Coding com base em instruções vagas e sem aplicar quase nenhuma disciplina de engenharia de software. Não demorou muito para ela começar a descarrilar: ficou cada vez mais difícil de controlar, e a arquitetura virou uma maçaroca inextrincável de espaguete.

Decidi recomeçar do zero. Mas, desta vez, voltei a vestir o chapéu de engenheiro de software e estruturei o desenvolvimento assistido por IA segundo as melhores práticas da profissão.

A dinâmica mudou completamente. Eu mantive todo o prazer e a agilidade do Vibe Coding, mas incorporei revisões de código rigorosas, documentação cristalina e commits atômicos e incrementais — melhorando o sistema passo a passo em vez de despejar blocos gigantescos de funcionalidades de uma vez. O resultado? Uma arquitetura extremamente sólida e previsível; a IA fazia exatamente o que eu queria, com precisão cirúrgica. Desenvolver com IA virou algo muito parecido com liderar um estagiário brilhante: você não precisa botar a mão na massa em cada detalhe, mas ainda precisa manter o controle arquitetural e a visão do todo.

Pouco tempo depois, migrei para o Claude Code no meu fluxo diário. O nível de controle e precisão aumentou ainda mais — parecia que eu tinha superpoderes —, e minha produtividade multiplicou várias vezes.

O futuro da engenharia de software

“Será que o Vibe Coding, por permitir tirar ideias do papel tão rápido, vai desestimular as pessoas a aprenderem a base da programação a fundo?”

Não tenho a menor dúvida de que sim.

No caminho tradicional, aprender a programar e construir produtos é como subir uma escada: degrau por degrau. A pessoa começa aprendendo os fundamentos de uma linguagem, entra no mercado como desenvolvedor júnior, enfrenta os perrengues reais do dia a dia da engenharia e, com tempo e prática, amadurece até se tornar um sênior capaz de tocar projetos sozinho. Em cada etapa há um retorno claro do aprendizado; qualquer pessoa com dedicação mediana conseguia trilhar esse caminho profissional bem demarcado.

O Vibe Coding derrubou a barreira de entrada para o chão: hoje qualquer um monta uma demo funcional. Só que engenharia de software é uma disciplina essencialmente prática, e a distância entre um protótipo e um produto comercial robusto, estável e escalável é a mesma que separa o “0 a 1” do “1 a 100”.

Na rota tradicional, quem conseguia ir do 0 ao 1 fatalmente adquiria no processo boa parte da bagagem técnica necessária para ir do 1 ao 100. O Vibe Coding, por outro lado, pula essa fase de aprendizado. Quem começa do zero sem base bate num abismo de complexidade logo no passo de 1 a 10 — o que vai desanimar e afastar a imensa maioria de continuar evoluindo.

Como o início foi fácil demais, quando o bicho pega de verdade, um nível comum de curiosidade ou disciplina simplesmente não dá conta. Quem ainda assim conseguir transpor esse abismo certamente já possui uma capacidade de aprendizado, execução e resolução de problemas fora de série — estamos falando do topo de 1% dos programadores.

Ou seja: essa minoria fora da curva teria se tornado engenheiros de ponta de qualquer jeito, mesmo na era pré-IA.

Conforme as capacidades de codificação por IA disparam, o mercado simplesmente para de contratar juniores. O funil de formação se rompe, e pouquíssima gente terá a chance de acumular as cicatrizes e o aprendizado prático que só o trabalho real proporciona.

Um ano após redigir a primeira versão deste texto, os dados de contratação mostram com clareza esse cenário:

Confesso que sou bastante pessimista quanto ao futuro da área. A programação caminha para uma polarização brutal: de um lado, a elite dos deuses do código travando batalhas conceituais de altíssimo nível; do outro, uma multidão criando brinquedos e protótipos que nunca passam da fase de demo.

E esse movimento não vai parar na computação. Outras profissões seguirão o mesmo roteiro. Em um futuro não muito distante, qualquer trabalho intelectual de baixa ou média complexidade será absorvido pela IA.

Até a matemática pura — o reduto máximo do raciocínio humano original e abstrato — viu suas muralhas ruírem ao longo do último ano:

O que esperar desta série

Hoje em dia, com um mar de pessoas sem qualquer bagagem técnica se aventurando no desenvolvimento com IA, a maioria não sabe bem por onde começar ou empaca logo depois de brincar com um projetinho inicial. Rapidamente esbarram no mesmo muro: a falta de repertório em engenharia de software faz com que fiquem perdidas sem saber o que estão fazendo, sem saber decompor problemas complexos e sem saber guiar a IA para chegar onde querem.

Além disso, percebo que muitos tropeços decorrem da falta de raciocínio lógico estruturado: as pessoas não sabem formular perguntas precisas, não exercitam o pensamento crítico e não conseguem discernir se o que a IA entregou faz sentido ou é uma alucinação completa.

Trabalho há mais de seis anos como engenheiro de software e, com o apoio da IA, projetei e construí diversos sistemas complexos que hoje contam com bases ativas de usuários. Como mencionei no início, nos meus projetos atuais, cada linha de código é gerada por IA. A IA é plenamente capaz de tocar arquiteturas sofisticadas — desde que quem está no comando saiba o que está fazendo e como conduzir a máquina. A inteligência artificial é a ferramenta; a mente no volante continua sendo o humano.

Na era da IA, a cartilha tradicional de como aprender a programar foi para o espaço. Para responder a essa nova realidade, decidi criar uma série: O Guia Definitivo de Vibe Coding para Iniciantes.

Esta série será dividida em alguns eixos fundamentais:

  1. Integrando o AI Coding às melhores práticas da engenharia de software moderna: entender o que é engenharia de software de verdade e partir do zero absoluto para construir a aplicação que você tem em mente — não para morrer numa demo descartável, mas para criar algo sustentável a longo prazo, com uma experiência de desenvolvimento fluida e sem atritos.
  2. Treinamento de lógica e pensamento crítico: como fazer perguntas cirúrgicas à IA, quais armadilhas evitar a todo custo e como redigir documentações eficazes de projeto.
  3. Testes, arquitetura e automação de fluxo de trabalho: como testar seu código, manter a estabilidade do sistema enquanto itera e adiciona recursos, acelerar a entrega sem comprometer a qualidade e montar pipelines automatizados.
  4. A stack técnica ideal para programar com IA: quais linguagens, ecossistemas e frameworks escolher para extrair o potencial máximo dos modelos de linguagem.

Na verdade, a espinha dorsal deste texto foi rascunhada há um ano, em outubro de 2025. Agora resolvi revisá-la e complementá-la com os dados recentes do mercado de trabalho e as quebras de paradigma na matemática ocorridas em 2026. Na época, fiquei tão atônito com a velocidade das mudanças que vivia com medo de publicar algo que ficasse obsoleto no dia seguinte; por isso acabei postando dezenas de reflexões curtas e quase nenhum artigo aprofundado. Um ano depois, relendo meus apontamentos, vi que aquelas previsões continuavam dolorosamente certeiras. Então dei forma final ao texto e decidi colocá-lo no mundo. Daqui para frente, quero voltar a escrever ensaios mais longos — afinal, conteúdo com alma humana será um artigo cada vez mais raro.