A era da codificação manual acabou
Você não está sendo substituído — está sendo aprimorado
Esta palestra vai mudar como você constrói software para sempre
Não significa que eu parei de pensar
Não significa que eu aceito cegamente o resultado
Não significa que habilidades de engenharia não importam
Significa que eu descrevo comportamentos em vez de digitar sintaxe
Significa que eu reviso resultados em vez de revisar cada linha
Significa que o que costumava levar uma equipe de devs 3 semanas, a IA agora faz em 15 minutos
Pensar na implementação
Escrever código linha por linha
Depurar erros de sintaxe
Pesquisar no Stack Overflow
Copiar, colar, adaptar, testar
Horas por funcionalidade
Pensar no comportamento
Descrever o que você quer
A IA escreve a implementação
Testar o comportamento
Iterar com feedback
Minutos por funcionalidade
Em dezembro de 2025, modelos de IA ficaram em 2º lugar nas maiores competições de programação competitiva do mundo.
Melhor que 99,99% dos programadores humanos
Resolve problemas algorítmicos complexos em segundos
Entende todas as linguagens, frameworks e padrões
Tem memória perfeita — nunca esquece um único detalhe
Disponível 24/7, infinitamente paciente, nunca se cansa
Cunhado por Andrej Karpathy (cofundador da OpenAI, ex-líder de IA da Tesla) em fevereiro de 2025. Eleito Palavra do Ano 2025 pelo Collins Dictionary.
Em 2026, isso evoluiu para Engenharia Agêntica:
Escrever especificações em linguagem natural
A IA gera código sob supervisão humana estruturada
Orquestração multi-modelo com contexto persistente do projeto
O desenvolvedor especifica, revisa e direciona — a IA implementa
Comece aqui. Agente open source para terminal, desktop e IDE.
Agente para repo, revisão, debug, testes e planejamento.
Lê o código, edita arquivos e ajuda em refatorações longas.
Para fluxos do Google e gestão visual de agentes.
Sugere a próxima linha
Funciona dentro de um arquivo
Sem entendimento do seu projeto
Você ainda escreve 95% do código
Lê todo o seu código-fonte
Entende a arquitetura
Cria e edita múltiplos arquivos
Executa comandos, testes, deploys
Você escreve 0% do código
Vamos fazer a conta com números reais:
Atribuir tarefa à equipe de devs
Equipe trabalha 2–3 semanas
Revisar, dar feedback
Equipe resolve feedback: 2–4 semanas
Próxima rodada de revisão
Total: 4–7 semanas por funcionalidade
Descrever funcionalidade para a IA
IA constrói: 5 minutos
Testar, dar feedback
IA corrige: 30 segundos
Testar novamente, publicar
Total: 15 minutos por funcionalidade
3.300+ linhas de HTML/CSS/JS artesanal
10 traduções de idiomas, sistema de palestras, sistema de blog
Construído e publicado em uma tarde
Hospedado na Vercel, domínio personalizado, SSL — tudo configurado pela IA
Sem IA: 2–3 semanas. Com IA: 4 horas.
LLMs têm memória perfeita e conhecimento infinito.
Foram treinados em praticamente todo código público já escrito — e memorizaram tudo
Janelas de contexto agora têm 1M+ tokens — lembram toda a sua conversa
Leem todo o seu projeto antes de escrever uma única linha
Entendem suas convenções de nomenclatura, arquitetura e estilo
Conhecem todos os frameworks, bibliotecas e melhores práticas já publicados
Isso não é um motor de busca. É um engenheiro de classe mundial com memória perfeita que leu todos os repositórios do GitHub e nunca esquece um único detalhe.
Digitador
Especialista em sintaxe
Navegador do Stack Overflow
Caçador de bugs
Arquiteto de produto
Especificador de comportamento
Garantidor de qualidade
Tomador de decisões
Para controle direto: instale a CLI, abra o repo, rode o agente e revise diffs.
Para editor visual: use app ou extensão; mantenha o fluxo de repo.
Rode localmente, inspecione a tela, leia o diff e mantenha rollback simples.
Use Homebrew quando possível. Mantenha Git, Node e agentes atualizados.
$ brew install git node $ git --version $ node --version
Use o gerenciador de pacotes da distro e adicione as CLIs oficiais.
$ sudo apt install git nodejs npm $ git --version $ npm --version
Use PowerShell ou WSL. Para começar, WSL facilita muito o terminal.
PS> winget install Git.Git PS> winget install OpenJS.NodeJS PS> git --version
$ curl -fsSL https://opencode.ai/install | bash $ npm i -g opencode-ai $ opencode
Baixe o app OpenCode para macOS, Windows ou Linux pela página oficial.
$ open https://opencode.ai/downloadUse OpenCode no VS Code, Cursor ou qualquer editor com terminal. O fluxo continua centrado no repo.
$ cd my-project $ opencode
# macOS / Linux $ curl -fsSL https://chatgpt.com/codex/install.sh | sh # Windows PowerShell PS> powershell -ExecutionPolicy ByPass -c "irm https://chatgpt.com/codex/install.ps1 | iex"
# npm install $ npm install -g @anthropic-ai/claude-code $ claude
Use CLI para terminal ou IDE para o gerenciador visual de agentes do Google.
$ open https://antigravity.googleAntes de adicionar sistemas de memória, aprenda o ciclo básico: abra o repo, dê contexto, peça uma mudança, revise o diff e rode.
$ mkdir my-portfolio $ cd my-portfolio $ git init $ opencode > Aqui está meu CV. Construa um portfólio pessoal polido no estilo de emrevarol.com. Inclua hero, sobre, experiência, habilidades, educação e contato. Precisa ser responsivo.
A mudança importante não é qual editor você abre. É quem entende o repositório e consegue agir nele.
Quem ama terminal: roda agentes dentro do repo e revisa diffs com Git
Quem prefere IDE: usa apps ou extensões e mantém commits pequenos
Equipes: padronizam memória de repo, comandos e pontos de verificação
Todos: contexto, plano, edição, execução, revisão, commit
Git: commits, branches e histórico revisável
Vercel / Netlify: deploys rápidos e previews
Verificação: execução local, logs, capturas, plano de rollback
Logs: o que aconteceu, falhou, mudou
Esqueça tudo o que você sabe sobre escrever código. Agora você é um arquiteto de comportamento.
“Preciso de um useState hook aqui”
“Preciso fazer um map neste array”
“Devo criar uma função auxiliar”
“Deixa eu importar esta biblioteca”
“Quando o usuário clicar em Comprar, deduzir do saldo”
“Mostrar uma notificação de sucesso”
“Se o saldo for insuficiente, mostrar um erro”
“Registrar a transação para auditoria”
Este é o seu novo fluxo de trabalho. Memorize.
Comece com a versão mais simples possível.
> Construa uma plataforma completa
de aprendizado de inglês com tutor
IA, avaliações, módulos de escrita/
fala/audição, vocabulário, gramática,
ranking, amigos, 18 idiomas e auth.
> Crie um app Next.js com uma
página inicial para uma plataforma
de aprendizado de inglês. Mostre 4
módulos (Escrita, Fala, Audição,
Vocabulário) como cards. Dados
fixos por enquanto.
Uma vez que a base funcione, adicione exatamente uma funcionalidade.
# Iteração 2: Adicionar um banco de dados > Substitua os dados fixos por um banco PostgreSQL usando Prisma. Crie modelos Lesson, Module e Progress. Semeie lições de exemplo para cada módulo. # Iteração 3: Adicionar autenticação > Adicione NextAuth com email/senha. Usuários devem poder se cadastrar e fazer login. Mostre o nome deles na navbar quando logados. # Iteração 4: Adicionar tutor IA > Adicione uma página /tutor com uma interface de conversa. Usuários digitam uma mensagem, a API do Claude responde com correções e dicas de inglês. Rastreie o histórico da conversa.
Após cada funcionalidade, teste o comportamento, não o código.
Abra o app no navegador
Clique pela funcionalidade como um usuário faria
Tente casos extremos: inputs vazios, dados errados, cliques duplos
Verifique a versão mobile
Você NÃO precisa:
Ler cada linha do código gerado
Entender cada função auxiliar
Revisar os nomes das classes CSS
Algo não está certo? Diga à IA o que mudar — em termos de comportamento.
# Não: "mude o onClick handler para usar outra variável de estado" # Em vez disso: > Quando eu termino uma lição, a barra de progresso não atualiza até eu recarregar a página. Corrija para que o progresso atualize imediatamente. # Não: "adicione um try-catch na chamada da API" # Em vez disso: > Quando a chamada da API do tutor IA falha, o chat simplesmente trava. Mostre uma mensagem de erro vermelha dizendo "Conexão perdida, tente novamente" e reative o botão de enviar.
Uma funcionalidade está “pronta” quando:
Funciona como esperado em todos os casos que você consegue imaginar
Lida com erros de forma elegante
Fica bonita no desktop e no mobile
Você tentou quebrar e não conseguiu
Uma vez pronta: faça commit e passe para a próxima funcionalidade.
> Faça commit de todas as alterações com a mensagem "Add AI tutor with conversation history"
Essa é a mudança de mentalidade mais difícil para engenheiros experientes.
Ler cada arquivo que a IA alterou
Verificar nomes de variáveis
Se preocupar com ordem de imports
Reescrever código “do seu jeito”
Gastar 30 min revisando
Testar a funcionalidade no navegador
Testar casos extremos
Verificar responsividade mobile
Verificar integridade dos dados
Gastar 2 min testando
Uma verdade difícil da minha experiência:
Nunca esquece de tratar casos extremos
Segue convenções perfeitamente
Escreve padrões consistentes entre arquivos
Nunca fica preguiçoso ou pega atalhos
Conhece todas as melhores práticas de todos os frameworks
Isso não significa que está sempre certo. Significa que seu padrão deve ser confiar e depois verificar — não desconfiar e depois reescrever.
Agora você exerce três papéis em um:
Um bom prompt é uma boa spec. Um prompt ruim é uma spec ruim.
> Adicione um dashboard
O que vai nele?
Para quem?
Quais dados?
> Adicione uma página de dashboard em
/dashboard. Mostre a sequência de
estudos do usuário, lições concluídas,
% de domínio do vocabulário e
atividade recente (últimas 10 sessões).
Inclua um gráfico mostrando o
progresso ao longo do tempo.
Um prompt gigante
Tudo de uma vez
Difícil de depurar
Impossível testar individualmente
Se falhar, você perde tudo
Muitos prompts pequenos
Uma funcionalidade por vez
Fácil de testar cada passo
Fácil de desfazer se errar
Git commit após cada sucesso
Quatro exemplos fortes. Produtos reais, fluxos reais, telas reais.

Portfólio, aulas e marca para ferramentas AI úteis.

Memória de longo prazo para agentes AI e conhecimento de equipe.

Busca imobiliária com AI e apoio à decisão na Turquia.

Aprendizado de inglês com AI, prático, pessoal e acessível.
Domínios diferentes, mesmo modelo de trabalho:
1. Comece com uma necessidade humana real
2. Descreva o comportamento com clareza
3. Prototipe rápido com AI
4. Teste o produto pelo comportamento
5. Melhore com logs, commits pequenos e memória
Semanas viraram horas. Meses viraram dias.
Gosto + conteúdo
UX de busca
Ciclos de aprendizagem
Sistema de memória
Técnicas práticas para tirar o máximo das ferramentas de codificação com IA.
Precisa traduzir para 9 idiomas? Não faça um por um.
# Claude Code pode criar sub-agentes que trabalham em paralelo > Traduza a página da palestra para todos os 9 idiomas suportados (TR, FR, DE, ES, AR, PT, RW, SW, AM). Use agentes paralelos para cada idioma. # Resultado: 9 agentes trabalham simultaneamente # 36 arquivos traduzidos em ~5 minutos em vez de ~45 minutos
A IA é tão boa quanto o contexto que você dá a ela.
CLAUDE.md — instruções do projeto, stack, regras
Arquivos de memória — conhecimento persistente entre conversas
Prompts claros — descrições específicas, focadas em comportamento
Código existente — a IA lê seu código e segue seus padrões
# Contexto ruim: começar do zero toda vez > faça uma página # Contexto bom: a IA conhece seu projeto por dentro e por fora > Adicione uma página /friends similar a /leaderboard. Mostre amigos mútuos no topo, depois amigos sugeridos com base em trilhas de aprendizado semelhantes. Use o modelo FriendRequest existente.
Acontece. Aqui está o que fazer:
Simplifique o prompt — divida em partes menores
Dê exemplos — mostre o que você quer, não apenas descreva
Compartilhe mensagens de erro — cole o erro exato, a IA é ótima em depuração
Tente uma abordagem diferente — “em vez de X, tente Y”
Comece do zero — às vezes uma nova conversa com contexto claro funciona melhor
A IA é uma depuradora incrível.
# Basta colar o erro e descrever o contexto > Estou recebendo este erro quando clico no botão Comprar: "TypeError: Cannot read properties of undefined (reading 'price')" Isso acontece apenas quando o mercado não tem negociações ainda. # A IA vai: # 1. Encontrar o arquivo relevante # 2. Identificar o bug # 3. Corrigi-lo # 4. Explicar o que deu errado
Uma das maiores vantagens da IA: ela edita muitos arquivos atomicamente.
> Adicione uma funcionalidade de "favoritos". Usuários podem salvar anúncios. Mostre um ícone de coração em cada card de anúncio, uma página /favorites com anúncios salvos, e um contador na navbar. # A IA vai modificar de uma vez: # - schema.prisma (novo modelo Favorite) # - Rota de API (CRUD para favoritos) # - Componente ListingCard (botão de coração) # - Navbar (contador de favoritos) # - Nova página /favorites # - Migração do banco de dados
Não cole código gerado por IA em respostas do Stack Overflow (não é seu)
Não pule testes porque “a IA escreveu”
Não use IA para código crítico de segurança sem revisão especializada
Não pare de aprender fundamentos — você precisa entender o que está construindo
Não desista após uma tentativa fracassada — reformule e tente novamente
Não tente construir tudo em um prompt gigante
Incidentes reais ao construir estes projetos com IA.
git push --force destruiu um site ao vivo (página de Impacto, página de Imprensa, palestra GenAI — tudo perdido)
A recuperação só foi possível porque a Vercel manteve deploys antigos e um segundo clone existia
Regra: Nunca faça force push. Nunca faça rebase em branches compartilhados. Sempre tenha uma estratégia de rollback.
Modelos de IA podem usar chaves de API de forma autônoma e acumular milhares de dólares sem você perceber
Regra: Defina limites de gasto. Use chaves separadas por projeto. Monitore o uso diariamente.
Você precisa de relatórios diários de atividade e relatórios financeiros — saiba o que seus agentes IA fizeram e o que gastaram
Use serviços como Resend para enviar resumos diários automatizados por email
Regra: Se você não consegue ver o que aconteceu ontem, está voando às cegas.
A IA não pode substituí-lo nestas áreas:
Visão — O que devemos construir? Por quê? (por enquanto)
Empatia — O que os usuários realmente precisam? (por enquanto)
Julgamento — Esta é a abordagem certa? (por enquanto)
Bom gosto — Isso parece certo? Está bom o suficiente? (por enquanto)
Antes de qualquer deploy, rode o projeto localmente e verifique a tela ou fluxo alterado.
Não aceite “pronto” do agente. Leia o diff, veja a UI e rode a checagem relevante.
Chaves de provedores ficam em env vars e rotas serverless, nunca em JavaScript do navegador.
Key parity não basta. Verifique copy visível, overflow, emoji/ícones e mobile.
Se todo projeto precisa de bot contextual, padronize rotação de provedores, limites, prompts e UI uma vez.
1. O gargalo não é mais digitar código; é julgamento de produto claro.
2. Descreva comportamento, não implementação.
3. Faça uma pequena mudança, rode e continue.
4. Revise resultados com capturas, testes, logs e estado local real.
5. Mantenha segredos no servidor e custos visíveis.
6. Localização e mobile layout são trabalho de produto.
7. Use padrões reutilizáveis para chatbot, provedores e memória de agente.
8. Adicione Engram quando houver decisões a lembrar.
9. Proteja suas chaves API.
10. Tenha rollback e backups sempre.
Construa algo real esta semana.
Instale OpenCode e teste Codex e Claude Code no mesmo projeto pequeno.
Escolha uma ideia simples. Construa com AI. Siga o ciclo de iteração.
Adicione 3 funções incrementalmente. Teste cada uma.
Faça deploy na Vercel ou Netlify. Compartilhe a URL.
OpenCode: opencode.ai/download
Codex: github.com/openai/codex
Claude Code: code.claude.com/docs
Antigravity: antigravity.google
Bônus: Engram: Engram é uma camada de memória para agentes AI. Ele mantém regras do repo, decisões, armadilhas e erros resolvidos entre sessões.
Adicione quando o primeiro projeto virar real.
Regra: AGENTS.md / CLAUDE.md
emrevarol.com
engram.tools
evimibul.org
english.cash
emrevarol.com/lecture/coding-with-genai.html
Use o chat dos slides para perguntas com contexto.
O futuro pertence a quem descreve ferramentas úteis, verifica resultados e mantém humanos no centro.
OpenCode primeiro. Codex para repo. Claude Code para sessões profundas. Antigravity para Google. Engram para memória.
Use AI para ampliar a capacidade humana.