IA na programação sem virar refém do código

IA na programação sem virar refém do código

Vi o dado publicado pelo Abril.com.br e a primeira coisa que pensei foi: “não me surpreende”. Segundo a pesquisa do Boston Consulting Group com 11.749 profissionais em 14 mercados, 47% passam mais tempo orientando máquinas do que executando tarefas. Para quem programa há mais de uma década, isso não é novidade — é o estado natural do trabalho técnico em 2026. A substituição total nunca aconteceu. O que aconteceu foi a migração do “fazer” para o “supervisionar”, e essa mudança tem implicações técnicas reais que pouca gente está discutindo com a profundidade necessária.

O que realmente significa “orientar IA” quando você é dev

O headline da Abril vende uma ideia quase dramática, quase cômica, de alguém passando o dia inteiro “conversando com ChatGPT”. Não é isso. Na minha experiência, “orientar IA” no contexto de desenvolvimento se traduz em cinco atividades concretas:

  • Iterar prompts até a IA gerar algo próximo do aceitável
  • Revisar código gerado linha por linha em busca de bugs sutis, más práticas e alucinações
  • Refatorar sugestões que funcionam, mas ferem a arquitetura do projeto
  • Validar premissas que a IA assume (versões de biblioteca, contratos de API, padrões do time)
  • Documentar decisões para que o time entenda o que a IA fez e por quê

Em outras palavras: o trabalho não sumiu, virou code review qualificado sobre uma base de código que você não escreveu. Isso exige maisSenioridade, não menos.

Na Prática: um caso real de iteração com IA

Deixa eu mostrar um exemplo que vivi semana passada. Precisava de uma função em Python que validasse CNPJ com tratamento de caracteres especiais, entrada opcional de máscara e retorno estruturado. O primeiro prompt que enviei ao Claude foi direto:

# Prompt: "Crie uma função Python que valide CNPJ"

O resultado veio em três segundos. Código funcional, com tratamento básico de regex. Mas olhando o retorno, identifiquei três problemas sérios que só aparecem quando você revisa com olho clínico:

import re

def validar_cnpj(cnpj):
    cnpj = re.sub(r'[^0-9]', '', cnpj)
    if len(cnpj) != 14:
        return False
    # cálculo dos dígitos verificadores
    # ... código completo, mas com bugs silenciosos
    return True

O problema? A função não validava os dígitos verificadores — apenas verificava o tamanho. A IA escreveu um placeholder onde deveria ter a lógica real. Em produção, isso aprovaria CNPJs inválidos. Em vez de aceitar e seguir, orientei a IA com contexto adicional:

# Segundo prompt, com contexto:
"""
A função anterior valida apenas o tamanho do CNPJ.
Implemente a validação completa dos dígitos verificadores
usando o algoritmo oficial da Receita Federal.
Considere casos como CNPJs repetidos (00.000.000/0000-00),
que passam na validação de tamanho mas são inválidos.
Retorne um dicionário com 'valido' (bool), 'mensagem' (str)
e 'cnpj_formatado' (str).
"""

Só nesse segundo prompt gastei uns 4 minutos. Some isso ao tempo de revisar o output final, rodar testes, ajustar edge cases. O tempo de “orientar” supera o tempo de “fazer do zero” se eu já conhecesse o algoritmo de cabeça — mas não superaria o tempo de debugar algo que parece funcionar e falha em produção.

O ponto é: o overhead de orientação é real, mas o custo de não orientar é maior.

Erros Comuns que devs cometem ao “supervisionar” IA

Depois de observar dezenas de colegas usando ferramentas como Copilot, Cursor e Claude Code, mapeei os erros mais recorrentes:

1. Aceitar o primeiro output como definitivo

O clássico. A IA gera algo que parece correto, o dev cola, commita e segue. Três meses depois, o bug aparece em produção. Regra pessoal: todo código gerado por IA passa por pelo menos uma rodada de testes manuais e leitura crítica antes de entrar em PR.

2. Confiar na sugestão de imports e versões

A IA frequentemente sugere importações de bibliotecas que não existem mais, métodos descontinuados ou versões específicas sem fundamento. Vi um caso recente em que o Copilot sugeriu usar pandas.DataFrame.append — método removido há versões. Quem não valida contra a documentação real entrega código quebrado.

3. Não documentar o que foi gerado por IA

O time precisa saber quais partes do código vieram de IA para entender o raciocínio por trás (ou a falta dele). Estabeleça no seu projeto um comentário padronizado ou use ferramentas como GitHub Copilot com identificação automática de origem.

4. Usar IA para aprender, não para entregar

Tem dev que cola o código gerado e não entende o que fez. Isso é um problema quando a feature precisa ser mantida, debugada ou evoluída seis meses depois. Na minha prática: só uso IA para acelerar o que eu já saberia fazer sozinho, ou para explorar abordagens que vou depois implementar conscientemente.

5. Ignorar o custo cognitivo da revisão

Revisar código gerado por IA é mais cansativo do que escrever do zero, em muitos casos. Você precisa entender a intenção, validar a implementação, conferir edge cases. Estudos de UX em IDEs mostram que code review de IA demanda mais atenção do que code review de humano, justamente porque o estilo é consistente demais e nosso cérebro relaxa.

O custo oculto da supervisão: o que a pesquisa da BCG não mediu

A pesquisa do BCG, conforme reportado pela Abril, é declaratória — mede percepção, não tempo cronometrado. Mas existe um fenômeno que nenhum survey captura: a carga cognitiva adicional. Quando você programa sem IA, o fluxo é contínuo. Quando você programa com IA, há micro-interrupções constantes: ler sugestão, avaliar, aceitar/recusar, ajustar.

Em projetos longos, isso se traduz em:

  • Mais PRs menores (difícil manter contexto entre gerações)
  • Mais refatorações (código gerado raramente segue os padrões do time na primeira tentativa)
  • Mais testes (necessários para cobrir alucinações)
  • Mais reuniões de alinhamento (explicar o que a IA fez e por quê)

Em outras palavras: a IA multiplica a produtividade individual, mas também multiplica a necessidade de supervisão qualificada. O profissional humano não virou dispensável — virou supervisor.

Ferramentas que reduzem o overhead de orientação

Para fechar a parte prática, aqui está minha stack pessoal quando o objetivo é minimizar o tempo de “orientar” e maximizar o de “fazer”:

Ferramenta Uso principal Ganho real
Cursor (Composer) Geração multi-arquivo com contexto do projeto Reduz drasticamente o tempo de prompt iterativo
Claude Code (CLI) Refatoração cirúrgica e leitura de bases grandes Entende contexto de até 200k tokens sem perder fio
Aider Geração com git awareness automático Commits isolados por feature, fácil reverter
Continue.dev Open-source, roda local Privacidade + uso de modelos locais

O segredo não é a ferramenta — é o workflow. Prompt bem escrito economiza dez iterações. Contexto bem estruturado economiza vinte. Não tem atalho: supervisionar bem é uma skill, e essa skill é o que separa o dev júnior do sênior em 2026.

FAQ — Perguntas que devs realmente fazem

A IA vai mesmo substituir programadores?

Não no curto/médio prazo. Vai substituir tarefas específicas (escrever boilerplate, gerar testes básicos, sugerir queries SQL), mas não trabalho de engenharia, que envolve decisões arquiteturais, entendimento de negócio, negociação com stakeholders e responsabilidade técnica. O dado do BCG reforça exatamente isso: a IA virou ferramenta, não colega substituto.

Como medir se estou “orientando IA” demais?

Faça um experimento de uma semana: anote o tempo gasto em três categorias — gerar código com IA, revisar/ajustar código de IA, escrever código manualmente. Se a categoria “revisar/ajustar” ultrapassar 40% do seu tempo de codificação, vale reavaliar a estratégia (prompts melhores, ferramentas mais alinhadas, ou menos uso de IA em tarefas específicas).

Vale a pena usar IA generativa em projetos críticos (financeiro, saúde)?

Sim, mas com camadas extras de revisão. Código gerado por IA em sistemas críticos deve passar por code review humano rigoroso, testes automatizados amplos e, idealmente, análise estática com ferramentas como SonarQube ou Semgrep. A IA pode acelerar a produção, mas a responsabilidade regulatória e de segurança continua sendo humana.

Qual a melhor forma de aprender a “orientar” IA de código?

Prática deliberada. Pegue uma feature que você sabe fazer, peça à IA para fazer, compare com sua solução. Depois, peça à IA para fazer do jeito errado de propósito e analise por que está errado. Esse meta-loop de comparação acelera o reconhecimento de padrões de alucinação. Não tem curso melhor que isso.

O que vai mudar nos próximos 12 meses?

Modelos com janelas de contexto maiores, agentes que mantêm memória persistente entre sessões, e integração mais profunda com IDEs. Mas o padrão “humano supervisiona, IA produz” não vai mudar. O que vai mudar é a qualidade da supervisão necessária — menos revisar bugs triviais, mais validar decisões arquiteturais.


🛒 Ver na Amazon

Gostou? Me segue no GitHub e deixa um comentário se tiver dúvida ou quiser aprofundar algum ponto.

Y

Yuri Sousa

Front-End Developer / Designer

Desenvolvedor apaixonado por criar experiências digitais acessíveis e visualmente perfeitas. Escrevo sobre desenvolvimento web, design e tecnologia.