Recentemente tenho refletido sobre o futuro da profissão na qual estou há mais de 20 anos. Por mais que tenha ocupado cargos de gestão, essencialmente sou um programador. Isso me faz pensar: qual é realmente minha função? Gosto de acreditar que resolvo problemas, mas, parando para pensar, percebo que gosto mesmo é de reinventar a roda ou melhorar coisas que já existem. Não sei se isso se define necessariamente como inovação ou se realmente é resolver problemas. Muitas vezes, estamos resolvendo problemas que não existem e que talvez nunca existam. É quase como um câncer que se alojou no nosso cérebro, nos fazendo acreditar que tudo o que foi construído antes de você é ruim, e que você, o ser iluminado da vez, vai resolver o problema que milhares de programadores no mundo ainda não conseguiram.
Na prática, isso é meia-verdade. Porque as soluções que existem não foram construídas para você especificamente. Qualquer linguagem ou framework que você utiliza é o mais puro generalismo, feito para atender uma gama gigantesca de possibilidades e necessidades específicas. Logo, nenhum software vai de fato atender suas necessidades por completo. Os melhores e mais utilizados são aqueles que, fundamentalmente, possuem modularização extrema ou já contam com uma grande quantidade de pessoas trabalhando em seus quartos para criar “soluções” para problemas simples que alguém no mundo eventualmente vai ter.
Se você olhar o código-fonte de grande parte das soluções de módulos de um NPM da vida, vai perceber que boa parte resolve problemas ridiculamente simples, facilmente substituíveis por meia dúzia de linhas nativas da própria linguagem. Mas, de alguma forma, usar uma infinidade de soluções terceiras virou prática da área.
No final, somos tradutores. Traduzimos problemas alheios e abstraímos a comunicação entre humanos e máquinas. Inflamos nosso ego por fazer parte de um grupo seleto que tem paciência para viver estudando as novidades do mercado — mas que, na maior parte do tempo, só escreve mais do mesmo, com uma nova cara, um slogan bonito e uma roupagem “material design” para parecer mais cool.
Tecnicamente, boa parte do que usamos hoje vai contra todos os design patterns possíveis. Um exemplo: comecei a usar Node.js por volta de 2012. Naquela época, Express já era a solução ideal pra criar servidores. Simples, intuitivo, direto. E ainda hoje, mais de uma década depois, segue como padrão. Pouca coisa mudou. O código continua cheio de práticas antigas de JavaScript vanilla, mantendo compatibilidade com versões obsoletas, mas ainda amplamente usadas. E quando você testa... perde em performance para quase todas as opções modernas.
Mas isso não é negligência. É o preço da estabilidade. Em algum ponto, você precisa escolher entre inovar ou manter o que funciona. A mesma coisa que acontece com a vida depois dos 30: casamento, filhos, rotina. Você troca liberdade por estabilidade, e faz isso conscientemente. Afinal, nenhuma família dura com um pai alcoólatra que aposta o dinheiro do leite no tigrinho, não é mesmo?
O mercado web tenta alcançar maturidade importando práticas dos anos 80 e 90 — SOLID, TDD, Agile, e todas as outras siglas. Mistura tudo no liquidificador e torce pra sair algo bom. Mas ninguém contava com a "vizinha gostosa" aparecendo no meio da história: a IA. Ela te seduziu. Você nunca se sentiu tão bem. Aquele código chato, que levava horas pra sair, agora é resolvido com um prompt. Os coach quânticos estão a mil, vendendo o sonho de virar programador em poucas horas com vibe code. É o sonho molhado dos gestores de TI — e, sendo honesto, talvez o meu também: não depender mais da boa vontade alheia.
No fim, isso diz mais sobre pessoas do que sobre código. A verdade é que a gente não quer se livrar da programação, nem das linguagens ou frameworks. A gente quer se livrar de pessoas que não entendem o quão privilegiadas são por estar nesse universo incrível. A IA é uma boa amiga. Ela agiliza, tem paciência pra responder, sempre tem uma resposta. E é rápida. O completo oposto da humanidade, que na sua maioria é preguiçosa, incompetente, e não dá o devido valor à realidade que tem.
O que isso diz sobre você?
Na minha análise, hoje existem dois tipos de programadores.
O primeiro grupo é aquele que está preocupado em perder o emprego porque sua função será substituída pela IA. E, sendo sincero, é simples entender o porquê: a IA não reclama, faz tudo rápido, e com o mesmo nível de código lixo que você entrega. Quando a empresa não se importa com qualidade e só quer velocidade de entrega, a IA é, de longe, a melhor opção. Honestamente, eu não sei se sua existência no mercado é tão relevante quanto você pensa. Mais cedo ou mais tarde, as IAs vão ser melhores do que a maioria dos programadores. Isso é um fato. Não enxergar isso é burrice.
Nossa capacidade humana é limitada. Precisamos dormir, precisamos ter vida social. Somos uma espécie que, no fundo, não é boa em nada. E, obviamente, nos assusta ver uma tecnologia sendo melhor que a gente justamente naquilo que, aparentemente, acreditávamos ser únicos no planeta. Mas não é por aí que caminha a humanidade.
O segundo grupo — um grupo seleto — sabe de suas próprias capacidades e usa a IA para potencializar suas competências. Para criar códigos mais rápidos, mais precisos. Mas, principalmente, possui o conhecimento para direcionar a IA da forma certa. Como um maestro que rege sua orquestra com maestria, sabendo exatamente o que quer ouvir.
Hoje, é mais eficiente e barato pagar 10 IAs do que ter 10 funcionários te causando problemas. A IA não fica doente. Não pede licença-maternidade. Não tira férias. Não te processa. Não chega de mau humor. Não fica procrastinando no café. Para os poucos que realmente entendem isso, a IA está proporcionando algo que nunca tivemos antes na história: a possibilidade de criar aplicações incríveis, em pouco tempo, com poucas pessoas, e barato.
O que antes demorava anos para ser desenvolvido, com a ajuda da IA, agora pode ser feito em meses. E, ainda por cima, seguindo todas as melhores práticas exigidas pelo mercado.
Mas tem mais: a IA não substitui o programador que pensa. Ela substitui o programador que executa sem pensar. Aqueles que só seguem tutorial, que só implementam o CRUD básico, que não entendem o porquê das coisas serem como são.
A IA, no fundo, não é sua concorrente. Ela é sua equipe. Mas só vai funcionar para quem sabe o que quer construir. Quem entende o sistema, a arquitetura, o domínio do problema. Porque, sem direção, a IA não passa de um papagaio repetindo coisas que já viu.
O programador do futuro não é quem escreve o código mais rápido, nem quem domina o framework mais hypado. O programador do futuro é o estrategista. O arquiteto. O que usa a máquina como uma extensão da sua própria mente, para construir mais e melhor, com menos.
E, ironicamente, talvez finalmente possamos parar de reinventar a roda… porque agora temos alguém que faz isso por nós em segundos.
E agora ?
Não fique com raiva das minhas palavras. Elas não são para você. Provavelmente você não me conhece, e eu também não te conheço. Sua raiva é só um reflexo da sua própria reflexão. A irritação nasce quando essas palavras encontram alguma verdade escondida aí dentro, quando de alguma forma elas se encaixam na sua realidade atual.
E aqui você tem dois caminhos.
Você pode ser completamente obliterado desse caminho, pode aceitar que talvez esse nunca foi o seu lugar, que programação não era sua missão, que no fundo você só estava seguindo uma onda — e voltar a ser mais uma pessoa comum no mundo, fazendo qualquer uma das milhares de atividades dignas e válidas que existem por aí. E tudo bem. Nem todo mundo precisa carregar o peso de transformar o mundo com código.
Ou… você pode escolher o outro caminho.
O caminho mais difícil. O de ser o melhor de você mesmo. De, a cada dia, se tornar uma versão mais afiada, mais crítica, mais estratégica, mais consciente de si. Porque, assim, nenhuma IA será capaz de te substituir. Nenhum algoritmo, por mais avançado, conseguirá copiar aquilo que só a sua experiência, sua visão, sua intuição humana pode oferecer.
Porque no final, tecnologia sempre vai evoluir. Frameworks vão nascer e morrer. Linguagens vão se transformar. Mas ser relevante — isso é uma construção pessoal, diária, intransferível.
A IA pode escrever código, mas não pode escrever você.
Ela pode te ajudar a resolver problemas, mas não pode escolher os problemas certos a serem resolvidos.
Ela pode entregar um resultado, mas não pode assumir a responsabilidade do que foi entregue.
No fundo, a IA é só mais uma ferramenta. Uma ferramenta poderosa, sem dúvida. Mas ainda assim, uma ferramenta nas mãos de quem sabe o que está fazendo.
E, se você realmente souber o que está fazendo, o mercado sempre vai ter um espaço para você. Porque o mercado precisa de quem pensa, de quem enxerga além do código, de quem entende o contexto, o impacto, as pessoas.
E é nesse lugar que, independentemente da tecnologia, você sempre será insubstituível.