- As ferramentas de IA estão criando apenas competência superficial em desenvolvedores juniores, gerando código rapidamente, mas com frequência sem conseguir explicar por que aquela abordagem foi escolhida
- O verdadeiro valor de desenvolvedores seniores não está na velocidade de escrever código, mas no reconhecimento de padrões de falha acumulado ao longo de anos de fracassos
- Mesmo usando IA, o processo de luta deliberada — analisar erros por conta própria, rastrear o código e formular hipóteses — continua sendo essencial
- Para todo código enviado em um commit, é preciso conseguir explicar pessoalmente por que aquela biblioteca foi escolhida, qual padrão foi usado e quais são os trade-offs; caso contrário, ele não está pronto para produção
- Em vez de usar a IA como um simples gerador de respostas, é preciso usá-la como tutora, aprendendo os prós e contras de diferentes abordagens
A essência do problema: a competência superficial criada pela IA
- O uso de LLMs tornou possível implementar e publicar funcionalidades rapidamente, mas vem gerando situações em que a pessoa não consegue explicar por que escolheu determinado código
- Em revisões de código, está se espalhando o fenômeno da competência superficial (shallow competence), em que a pessoa não consegue responder a perguntas sobre a abordagem adotada
- Repete-se o padrão de aceitar o código sugerido pela IA como está
- Na superfície, a produtividade parece alta, mas falta compreensão sobre a intenção do design e os trade-offs
- Com o tempo, esse problema pode levar à perda de confiança
Por que desenvolvedores seniores têm valor
- O motivo de desenvolvedores experientes custarem mais não é porque escrevem código rápido, mas porque aprenderam ao longo de muito tempo o que não fazer
- O que as empresas realmente pagam é pelo reconhecimento de padrões de falha que vem de experiências como tomar decisões arquiteturais erradas e conviver com as consequências, ou receber alertas de incidentes às 2 da manhã
- Hoje, muitos desenvolvedores juniores estão pulando esse processo ao usar IA
5 estratégias
-
1. Aprenda corretamente os fundamentos
- É preciso saber o que é um bom código para avaliar o que a IA produz; caso contrário, você passará a aceitar cegamente a saída da IA
- Livros recomendados: Head First Design Patterns (para entender padrões de código e por que escolhê-los) e Designing Data-Intensive Applications (para princípios de projeto de sistemas intensivos em dados)
-
2. Estude casos de falha
- Recomenda-se ler documentos detalhados de post-mortem publicados após grandes incidentes em serviços como Cloudflare, AWS, Azure e Google
- Eles incluem causa, análise da causa raiz, forma de correção e medidas para evitar recorrência
- Na Amazon, isso aparece como COE (Correction of Errors), e a maioria das grandes empresas de tecnologia, como o Facebook, também tem documentos internos semelhantes
- Entender como sistemas complexos quebraram fica muito mais marcado na memória do que apenas ler documentação
-
3. Crie deliberadamente momentos de dificuldade
- Antes da IA, resolver problemas por conta própria não era opcional, era o padrão; agora existe uma saída disponível 24 horas por dia
- Antes de colar um erro na IA, primeiro leia o stack trace, rastreie o código, verifique os logs e formule uma hipótese sobre o que deu errado
- É assim que se constrói a verdadeira intuição de debugging
- A IA pode ser usada depois
- Participar de plantão e assumir tickets que ninguém quer pegar é a forma mais eficaz de aprender como o sistema realmente funciona
-
4. Nunca coloque em produção código que você não entende
- Se, em uma revisão de código, você responder "foi a IA que sugeriu" quando perguntarem por que escolheu certa abordagem, perderá a confiança imediatamente
- O problema não é ter usado IA, e sim não ter se esforçado para entender o código que está submetendo
- Você deve conseguir explicar, para cada linha enviada em um commit, por que essa biblioteca, por que esse padrão e quais são os trade-offs
- Mesmo que isso reduza a velocidade, a compreensão precisa vir primeiro; ganhar reputação de alguém que só copia e cola é muito difícil de reverter
-
5. Prompte o "por quê", não a resposta
- Em vez de pedir apenas a solução para um problema, peça à IA uma explicação de várias abordagens e dos prós e contras de cada uma
- Isso produz dois efeitos:
- você realmente aprende sobre trade-offs
- ao passar por um processo de raciocínio, a IA pode mudar a própria recomendação, o que às vezes leva a uma resposta melhor
Um conselho realista sobre a pressão por velocidade: equilibrar produtividade e aprendizado
- A preocupação de ficar para trás ao desacelerar é real, mas não é necessário parar completamente o trabalho
- Faça esse aprendizado deliberado e desconfortável em momentos livres, projetos paralelos ou tickets menos concorridos
- É preciso distinguir conscientemente o tempo gasto desenvolvendo habilidade real do tempo gasto apenas produzindo saída
Use a IA como tutora
- Hoje você tem algo que gerações anteriores de desenvolvedores não tiveram: uma tutora de IA capaz de explicar qualquer coisa na profundidade que você quiser
- Não use a IA apenas para executar tarefas; use-a de modo que explique e ensine
- O valor de um desenvolvedor não está na capacidade de produzir código, mas na capacidade de olhar para qualquer código e julgar se ele é bom
- Independentemente de o código ter sido gerado por IA ou não, a habilidade central é distinguir o que é bom do que é ruim
- Somente o aprendizado deliberado e o acúmulo de experiências de falha podem formar competitividade de longo prazo
20 comentários
Se tivessem ao menos lido o texto que a IA gera, não teria dado nisso.
O problema não é simplesmente ser júnior, e sim o júnior que só fica no copiar e colar e no clique automático.
Na verdade, isso já existia antes da IA.
Só que o Stack Overflow virou IA.
Ainda não sabemos quando a IA realmente substituirá os desenvolvedores, nem se isso de fato será possível, então não me parece necessário elogiá-la indiscriminadamente. Na prática, até no Reddit há vários posts de gente que criou alguma coisa, começou a receber usuários, mas nem sabe o que é arriscado no próprio serviço e vem pedir ajuda.
Antigamente, quando os objetos eram feitos de forma artesanal, as pessoas eram formadas no sistema de aprendizagem com mestres, mas depois da Revolução Industrial isso virou trabalho simples.
Agora as pessoas só ficam encarando o código que sai em massa da linha 4, como se fossem peças passando por uma esteira.
Se você perguntar para alguém que só faz inspeção de peças “por que isso foi projetado assim?”, mesmo depois de 10 anos de trabalho a única resposta que vai ter é “foi assim que a máquina fez”.
???: "Pense com cuidado sobre o que você não deve fazer"
kkkkkk isso é verdade kkk
kkk
kkkkkkkk
No fim, quando a capacidade de raciocínio e de memória da IA aumentar, toda essa discussão vai perder o sentido. De qualquer forma, até os seniores vão deixar de ser necessários.
No fim das contas, acho que o importante é como a pessoa que usa pensa sobre isso e faz uso da ferramenta.
Embora tenha aumentado o risco de surgir um ambiente em que se delega tudo sem pensar e se acaba sendo levado por isso sem perceber, se for bem utilizado, vi que é possível aprender e desenvolver de forma muito mais rápida e precisa do que antes.
Mas espero que em breve se consolide algum novo modelo e método exemplar de aprendizado, diferente das formas tradicionais de estudo e experiência, que seja bom para orientar quem está começando a aprender.
Acho que o que os sêniores vivenciaram até agora provavelmente será aprendido pelos juniores em um ritmo mais rápido. De qualquer forma, os desenvolvedores juniores que o autor descreve, que só fazem copiar e colar de forma mecânica, já eram inúteis na era do Stack Overflow.
No fim das contas, o hábito de copiar e colar código do Stack Overflow na era anterior só foi transferido para as respostas da IA.
De qualquer forma, se for um desenvolvedor júnior que estudava de verdade no passado, na era da IA ele vai crescer em um ritmo ainda mais rápido até se tornar um desenvolvedor de nível sênior.
Agora, se nem precisa mais olhar para low-level e, supondo que com IA também dê para aprender mais rápido, quem vai contratar caro um desenvolvedor júnior coreano formado em um curso superior de 4 anos?
Com esse agente de IA milagroso que serve para tudo, vão contratar, fazer onboarding com IA e traduzir com IA, enquanto acabam contratando mais barato aquele Rahul Singh (24, mestre pelo IIT) ou aquele Zhang Wei (26, primeiro da turma na Tsinghua) ali.
Principalmente no caso dos homens, considerando que a entrada na vida profissional acaba atrasando +2 anos por causa do serviço militar, fico muito preocupado com os juniores de agora.
Se você passar a depender principalmente de IA, não terá a chance de fracassar e, por isso, não vai absorver as lições de engenharia. Aquilo que não foi expresso em livros ou textos também não pode ser coberto pela IA.
Como a IA também falha, talvez a pessoa ideal seja aquela que "falha junto com a IA e supera isso junto com ela".
Pelo teor da sua resposta, se a IA falhar, quem vai superar isso? Um júnior recém-formado?
Deixo um comentário educado e cortês.
Concordo. É algo que se pesquisa junto e se vai resolvendo junto. Acho que você talvez não tenha tentado fazer dessa forma e esteja querendo apresentar isso com força demais como se fosse a resposta certa. Eu também vou tentar deixar um comentário o mais gentil e educado possível~^^
No fim das contas, daqui a 10 anos isso vai virar um júnior com 10 anos de experiência (powered by AI).
Pela velocidade de evolução dos modelos de IA, parece que, quando os desenvolvedores júnior de hoje virarem sêniors,
até os sêniors já estarão sendo substituídos.
Então quer dizer que a IA está substituindo os juniores que se tornariam sêniors. Viva a IA, viva, viva, vivaaa
Essa é a resposta certa.
Opiniões do Hacker News
Acho que, daqui para frente, um período de aprendizado sem AI será essencial
Em qualquer aquisição de habilidade, o ponto central é a ‘prática repetida com as próprias mãos’
A etapa de aprendizado deve evoluir como “formar intuição sem AI → usar AI gradualmente para entender os limites → especialista nativo em AI”
Mas ainda não está claro como implementar isso em larga escala
Ironicamente, a AI é útil como tutora personalizada, mas ao mesmo tempo é uma tentação que leva a evitar a prática
O sistema educacional atual, centrado em provas, acaba reforçando ainda mais a dependência de AI
Por isso eu previ que o modelo de aprendizagem/apadrinhamento profissional voltaria, e vejo a proposta de preceptorship da Microsoft como um sinal disso
É animador ver uma grande empresa reconhecer o problema e apresentar uma solução
Essas ferramentas me ajudavam a entender onde eu estava errando, mas no fim a prática manual era o essencial
Mas o uso atual de AI não é simplesmente aprender teoria; é mais como mandar um escravo fazer o trabalho
Historicamente, esse tipo de abordagem não produz domínio real
Já existem muitas pessoas incapazes de controlar o vício em redes sociais
A palestra Simple Made Easy, de Rich Hickey, teve grande impacto na minha carreira
A AI não tem ‘senso de gosto’ e opera na direção de aumentar a quantidade de código
Engenharia de verdade é a arte de criar, com pouco código, a funcionalidade de maior impacto
Antigamente, o desenvolvedor júnior já existia mais para aprender do que para produzir
Era por isso que tarefas que um sênior terminaria em algumas horas eram deliberadamente transformadas em trabalhos de uma semana
Agora as empresas estão tentando evitar esse ‘custo de treinamento’
Todo mundo olha só para o ganho de curto prazo e provoca um colapso de longo prazo
Sem juniores, os sêniors também desaparecem e, no fim, a própria indústria entra em colapso
Juniores também são necessários para reduzir custos e manter o equilíbrio da estrutura de promoções
Mas com a chegada da AI, agora até desenvolvedores de nível pleno podem acabar sendo substituídos
Do ponto de vista de metas de curto prazo, “júnior é produtividade negativa”
A lentidão não vem da capacidade, mas de processos organizacionais ineficientes
Eu sempre digo aos estudantes — “juniores precisam escrever código com as próprias mãos”
Como no texto do htmx, sêniors precisam permitir que juniores escrevam código
Afinal, sêniors surgem a partir de juniores
A lógica virou algo como: “se precisar de um sênior, contrate um sênior”
Isso pode acabar repetindo o caso da geração COBOL
A distância entre sênior e júnior aumentou, e a experiência de aprender na marra, mexendo com as próprias mãos, está desaparecendo
Eu, como desenvolvedor com 30 anos de carreira, hoje recebo contratos com valores altos
Se programar é uma arte, talvez no fim seja preciso competir pela sobrevivência como artistas
Se todo mundo desistir de formar juniores, isso acaba levando a um colapso na oferta de sêniors
Mas o incentivo para quebrar essa regra por lucro de curto prazo é grande
Na verdade, muitos desenvolvedores sêniors também não são tão bons assim
A qualidade dos projetos sempre cai depois de certo ponto no tempo
A maioria era sênior só no cargo, e eu mesmo também era mais um sênior de nome, mas de nível intermediário na prática
Gerentes, recrutadores e desenvolvedores todos apenas ‘fingem trabalhar’, e o valor real vem de um pequeno número de pessoas realmente competentes
O cenário que me assusta é acabarmos reduzidos a gerentes de prompt
Um futuro em que passamos a confiar apenas no código corrigido pela AI sem entender de verdade a base de código
A satisfação de resolver problemas de forma profunda ainda existe
Só fico feliz por não precisar usar diretamente stacks como React ou NextJS
Quem construiu uma base sólida antes da AI realmente teve muita sorte
É só a próxima fase da ‘cultura do left-pad’
Assim a AI também funciona melhor, e o conhecimento de domínio humano ganha destaque
Eu sinto a mesma ansiedade
Quase não há revisão, e a consideração de arquitetura de longo prazo desapareceu
Parece que a sociedade como um todo está aceitando a queda de qualidade
Hoje em dia sinto que juniores são mais úteis do que sêniors
Quando pergunto algo a um sênior, ele só responde “a AI disse isso”
Já o júnior tem vontade de aprender, e pessoas de nível staff ainda continuam sendo ótimos mentores
Já alguns de nível pleno não conseguem fazer nada sem AI
Não entendem o problema e, como a AI resolve por eles, acabam ficando até insensíveis à própria incompetência
O abuso de LLM vai provocar deterioração cognitiva
Eu tento contratar apenas pessoas que ainda não foram contaminadas por LLM
O próprio texto parece ter sido escrito por LLM
Um estilo do tipo “It’s not X, but Y” é típico demais
Fico deprimido ao pensar que a maior parte do conteúdo da web agora provavelmente é gerada por AI
No fim, estamos indo para um mundo em que a distinção entre o real e o falso desaparece
Por isso estou até pensando em ir aprender soldagem
Este texto também segue a mesma linha
A raiz do problema está nos sêniors
Eles só dão aos juniores tarefas inúteis e não oferecem oportunidades para usar novas ferramentas
Agora, em vez de “corrigir template de e-mail”, deveriam passar tarefas como “criar um serviço para automatizar processos internos”
Fica difícil para o júnior aprender sem nem saber o que não sabe, e o sênior também tem dificuldade para ensinar
Graças à AI, consegui contratar um júnior que nem sabia HTML
Antes isso seria impossível, mas agora, com um pouco de persistência, já dá para entrar na área
No fim, se você escolhe o caminho fácil, terá resultados equivalentes
Fico curioso para saber como um júnior assim foi contratado
Se você só escolhe o caminho fácil, a profundidade da vida desaparece
Eu também nunca fiz um curso assim
No fim, a AI pode acabar esgotando a fonte da criatividade
Se os humanos não tiverem ideias novas, a AI só vai se autocopiar
Esse ciclo vai produzir estagnação e dependência tecnológica
O aprendizado não supervisionado pode superar esse limite
Se bons desenvolvedores desaparecerem, até uma AI ruim passa a ser útil