Até há pouco tempo, um programador que usava IA escrevia uma pergunta num chatbot, copiava o fragmento de código gerado e colava-o no projeto. Hoje, este modelo de trabalho parece cada vez mais diferente.
O programador pode passar uma tarefa a um agente, dar-lhe acesso ao repositório, permitir que analise o código existente, execute testes, modifique vários ficheiros, corrija erros e depois prepare a alteração para revisão. O ser humano não desaparece do processo. O que muda é o lugar onde o seu trabalho tem maior valor.
Segundo o estudo JetBrains Developer Ecosystem Survey 2026, que envolveu mais de 15 mil programadores profissionais de todo o mundo, no período de maio a julho de 2026, 90% dos inquiridos usavam AI coding agents no trabalho pelo menos uma vez por semana, e 68% faziam-no diariamente.
Isto já não é um experimento de alguns entusiastas. É uma mudança no modelo de trabalho.
A IA já não é apenas um “assistente de código”
Vale a pena distinguir duas coisas.
Um AI assistant ajuda o programador.
Um AI coding agent executa a tarefa.
É uma diferença aparentemente pequena, mas do ponto de vista da organização do trabalho é enorme.
O assistente pode sugerir uma função, explicar um erro, gerar um fragmento de SQL ou escrever um teste. No entanto, continua a ser o ser humano a fazer a maior parte das operações.
O agente pode receber uma instrução muito mais genérica:
“Adiciona a possibilidade de filtrar encomendas por estado. Analisa a arquitetura existente. Implementa o backend e o frontend. Adiciona testes. Executa a test suite e corrige os erros.”
E começa a trabalhar.
Revê a estrutura do projeto. Procura os ficheiros adequados. Analisa dependências. Modifica código. Executa testes. Recebe uma mensagem de erro. Tenta corrigi-la. Executa novamente os testes.
Isto já não é autocomplete com esteroides.
É um executor de tarefas a operar dentro do ambiente de desenvolvimento.
E é aqui que começa a verdadeira mudança no papel do programador
Se a IA consegue gerar algumas centenas de linhas de código em poucos segundos, o valor do programador já não pode ser medido apenas pelo número de linhas escritas.
Começam a contar outras competências.
Será que o programador consegue definir bem o problema?
Será que entende a arquitetura do sistema?
Será que sabe que informações deve dar ao agente?
Será que consegue avaliar se a solução realmente se encaixa no sistema existente?
Será que consegue desenhar testes?
Será que percebe que o agente resolveu o problema localmente, mas criou um problema três camadas acima?
Será que sabe quando parar o agente?
Isto significa uma mudança no foco do trabalho.
Menos: “Vamos escrever este código do zero.”
Mais: “Vamos desenhar a solução, definir as restrições, fornecer o contexto adequado, verificar o resultado e decidir se pode ser implementado.”
O programador começa a parecer o líder de uma pequena equipa
Imaginemos um projeto em que trabalham vários agentes.
Um analisa o código existente.
Outro prepara o backend.
Um terceiro trabalha na interface.
Um quarto gera testes.
Um quinto analisa a segurança.
O ser humano pode coordenar o trabalho deles, transmitir contexto e tomar decisões.
Parece uma equipa de desenvolvimento?
Em certo sentido, sim.
A diferença é que os “colaboradores” não são pessoas.
E é precisamente por isso que surge uma nova competência: gestão de agentic development.
Não se trata aqui de gerir pessoas, calendário ou orçamento. Trata-se de gerir o fluxo de trabalho executado por sistemas de IA.
O programador tem de saber dividir um grande problema em tarefas, definir dependências, transmitir o contexto certo e criar um mecanismo de controlo dos resultados.
Isto está muito mais perto do trabalho de um arquiteto do que da simples reescrita de código.
A ferramenta mais importante do programador pode ser hoje o contexto
Um agente é tão bom quanto a informação que receber.
Pode dizer-se: “Adiciona autenticação de utilizadores.”
E pode dizer-se: “Adiciona autenticação de utilizadores. O sistema usa o mecanismo OAuth atual. Não alteres a estrutura da tabela de utilizadores. As sessões são guardadas do lado do servidor. Não introduzas uma nova biblioteca sem justificação. Mantém a compatibilidade com a aplicação móvel. Adiciona testes para login, logout, sessão expirada e token inválido.”
A segunda instrução não é apenas mais longa.
É uma especificação melhor.
O agente recebe restrições, contexto de negócio e técnico, bem como critérios de aceitação.
É precisamente por isso que, no mundo dos agentes, a capacidade de trabalhar com contexto ganha cada vez mais importância. O programador não diz apenas à IA, o que fazer. Também tem de dizer, em que ambiente o deve fazer, o que não pode ser alterado e como saberemos que a tarefa foi executada corretamente.
O maior erro? Confundir velocidade de geração com velocidade de criação de software
Isto é muito importante.
Um agente pode gerar uma função em 30 segundos.
Isso não significa que a função esteja pronta para produção em 30 segundos.
O código tem de ser compreendido. Testado. Integrado. Verificado em termos de segurança. Avaliado em termos de desempenho. Verificada a conformidade com a arquitetura. Analisado o impacto nos restantes elementos do sistema.
A IA pode encurtar drasticamente a fase de produção de código, mas não elimina a necessidade de engenharia.
Muito pelo contrário.
Quanto mais fácil for gerar código, mais fácil será também gerar mau código.
E o problema começa quando o ser humano já não consegue compreender aquilo que aprovou.
Por isso, o ser humano continua na loop
Os dados do Stack Overflow de abril de 2026 mostram um quadro muito interessante. O uso de agentes no trabalho subiu para 59%, mas 63% dos profissionais de tecnologia inquiridos declaravam que raramente ou nunca permitem que os agentes atuem de forma totalmente autónoma. 60% dos participantes bloqueiam a possibilidade de os agentes efetuarem alterações não aprovadas nos sistemas.
Isto mostra uma coisa importante.
O mercado não está simplesmente a caminhar para: “A IA faz tudo, o ser humano apenas observa.”
O modelo muito mais realista é: “A IA executa cada vez mais trabalho, mas o ser humano continua a controlar a direção, as restrições e o resultado.”
Essa é uma diferença fundamental.
O programador não precisa de escrever manualmente cada função. Mas precisa de saber por que razão uma determinada função foi criada, como funciona e se deve mesmo fazer parte do sistema.
O novo programador terá de ser bom em vários mundos diferentes ao mesmo tempo
As competências clássicas de programação continuam a ser importantes.
O conhecimento de linguagens de programação, bases de dados, arquitetura, protocolos, segurança, testes ou infraestrutura não desaparece só porque o código pode ser gerado pela IA.
Muito pelo contrário.
Se alguém não entende o sistema, dificilmente conseguirá avaliar se a solução gerada é boa.
Além disso, surgem novas competências.
O programador precisa entender as limitações dos modelos. Precisa saber preparar o contexto. Precisa saber como dividir tarefas entre agentes. Precisa saber projetar o processo de verificação. Precisa entender os custos das chamadas, as permissões dos agentes, o acesso aos dados e o risco de executar operações automáticas.
E, acima de tudo, precisa aprender a dizer à IA não apenas: „faça”.
Mas também: „faça desta forma, porque...”.
Isso também pode mudar a forma de construir equipes de TI
Durante anos, escalar uma equipe de desenvolvimento significava adicionar pessoas.
Mais recursos? - Mais programadores.
Projeto maior? - Equipe maior.
Mais clientes? - Mais pessoas.
O desenvolvimento agentic pode mudar essa relação.
Isso não significa automaticamente que um programador substitua dez outros. Seria uma suposição simplista demais.
Mas pode significar que um programador experiente será capaz de supervisionar um escopo muito maior de trabalho executado automaticamente.
Na prática, isso significa deslocar o gargalo.
Hoje, a limitação pode ser o número de pessoas que sabem escrever código.
Amanhã, a limitação pode ser o número de pessoas que sabem projetar bem, delegar e verificar o trabalho executado pela IA.
E o júnior?
Aqui a situação fica especialmente interessante.
A IA pode gerar muito rapidamente uma solução que antes um júnior escreveria durante várias horas.
Mas o júnior pode não saber se a solução é adequada.
Isso cria um paradoxo.
A IA pode acelerar o aprendizado de programação, porque permite experimentar, fazer perguntas e analisar soluções com mais rapidez.
Ao mesmo tempo, pode dificultar o desenvolvimento da compreensão fundamental do sistema, se o jovem programador aceitar código pronto sem tentar entender seu funcionamento.
Por isso, o futuro dos juniores não precisa significar: „a IA vai tirar o emprego deles”.
Pode significar algo mais prático: o júnior que só sabe escrever código terá muito mais dificuldade. O júnior que sabe entender código, testar soluções, analisar problemas e trabalhar com agentes construirá um perfil de competências totalmente diferente.
É a diferença entre operador de ferramenta e engenheiro.
O erro mais caro continua sendo cometido por humanos
Um agente pode gerar código incorreto.
Mas a decisão de colocá-lo em produção ainda pode ser tomada por uma pessoa.
E é justamente por isso que a responsabilidade pelo software não passa magicamente para a IA.
Se um agente criar uma função que funciona corretamente em um cenário de teste, mas viola regras de negócio, o problema não é que a IA „não entendeu a empresa”.
O problema é o processo que permitiu que essa mudança avançasse.
Isso leva a uma mudança muito importante na forma de pensar sobre qualidade.
Não basta mais perguntar: „O programador escreveu um bom código?”
Cada vez mais é preciso perguntar: „A equipe criou um bom processo de desenvolvimento de código com participação da IA?”
Essa é uma pergunta muito mais ampla.
O agente não substitui o arquiteto. Ele aumenta a importância da arquitetura
Quanto mais código pode ser gerado automaticamente, maior é a importância da estrutura do sistema.
Uma arquitetura bem projetada permite que o agente trabalhe dentro de limites definidos.
Já uma aplicação mal projetada pode fazer com que o agente comece a contornar problemas em vez de resolvê-los.
Por isso, arquitetura, documentação, testes, padrões de codificação, CI/CD, monitoramento e controle de acesso tornam-se não menos importantes, mas potencialmente ainda mais importantes.
A IA pode acelerar o trabalho em um ambiente bem preparado.
Ela não corrige automaticamente todo o caos organizacional e arquitetônico.
Mas pode aumentá-lo muito rapidamente.
O futuro não pertence ao programador que escrever mais código
Esse é provavelmente o insight mais importante de toda a mudança.
Durante muito tempo, programação foi associada à escrita de código.
Agora, o código está se tornando cada vez mais barato e rápido de produzir.
Isso desloca o valor para cima.
Na direção da compreensão do problema.
Do projeto da solução.
Da tomada de decisão.
Do controle de qualidade.
Da arquitetura.
Da segurança.
Da integração.
Da compreensão do negócio.
E do uso habilidoso de agentes.
O programador do futuro pode passar menos tempo no teclado, mas isso não significa necessariamente menos trabalho.
Seu trabalho pode simplesmente parecer diferente.
Em vez de escrever cada função manualmente, ele projetará a forma como as funções são criadas.
Em vez de corrigir cada erro sozinho, ele construirá um processo que permitirá aos agentes encontrar e corrigir falhas.
Em vez de ser o único executor, ele se tornará a pessoa que define a direção do trabalho de vários executores digitais.
E talvez justamente por isso a pergunta mais importante do futuro não será: „A IA consegue programar?”
Mas sim: „Conseguimos construir software de forma que a IA possa trabalhar rapidamente e o ser humano ainda saiba o que está acontecendo?”
Porque, no mundo dos agentes, a maior vantagem não será apenas ter IA.
Será a capacidade de controlá-la.



