E se tirássemos o humano do código?
O que acontece quando o humano sai da equação? Boas práticas de software para compensar limitações humanas ainda fazem sentido?
Uma hipótese que venho testando e queria compartilhar.
A maior parte das práticas que consideramos "boas" em engenharia de software, clean code, design patterns, camadas de abstração, frameworks, ORMs, convenções de nomenclatura, existe por uma razão específica: o cérebro humano tem limites.
Limites de memória de trabalho. De contexto simultâneo. De capacidade de rastrear efeitos colaterais em um sistema grande.
Nem todas essas práticas são apenas "conforto humano", interfaces permitem trocar implementações, separação facilita testes, encapsulamento protege invariantes. Isso tem valor técnico real. Mas uma parte significativa dessas camadas existe para organizar o código na cabeça de quem mantém, não para a máquina que executa.
E essa parte tem custo. Cada camada adiciona latência. Cada framework carrega dependências. Cada indireção consome memória. Cada ORM traduz o que o banco já faz nativamente. Cada serialização entre camadas conceituais custa CPU.
Um request que atravessa 7 camadas de abstração, passa por um ORM, serializa e desserializa 3 vezes, e resolve dependências em runtime não é lento porque precisa.
A hipótese é simples:
Se quem escreve, lê, refatora e dá manutenção no código for uma IA, então grande parte dessas abstrações perde a razão de existir.
- Se a IA escreve Rust tão rápido quanto TypeScript, por que escolher a linguagem mais lenta?
- Se a IA opera com menos necessidade de abstrações organizacionais, por que adicionar camadas que existem para a cabeça humana?
- Se a IA gera só o necessário, por que carregar um framework inteiro?
Fiz um exercício, 2 cenários estimados, olhando apenas para o impacto de escolher a linguagem certa para cada componente:
-
Monolito em Node.js (padrão "confortável para humanos")
Custo AWS: ~R$ 1.900/mês | Latência p95: ~80ms -
Linguagem ótima por componente (Rust no hot path, Go no CRUD, TS nas integrações)
Custo AWS: ~R$ 950/mês | Latência p95: ~25ms
Isso só com a troca de linguagem. Ainda sem considerar a remoção de camadas de abstração, frameworks desnecessários, ORMs e indireções que existem para conforto humano. O ganho real provavelmente seria maior.
O que não estou dizendo: que arquitetura deixa de importar. Abstrações com valor técnico real,contratos, isolamento, testabilidade, continuam fazendo sentido.
Microsserviços, por exemplo, continuariam fazendo sentido, não pelo argumento de "times separados" (humano), mas por permitir a linguagem ótima para cada workload (máquina).
O papel do engenheiro nesse cenário muda. O diferencial deixa de ser escrever código bonito e passa a ser entender de performance, custos de infraestrutura, tradeoffs entre linguagens, e como orquestrar uma IA que opera em múltiplas linguagens ao mesmo tempo.
Não sei se esse futuro chega em 2 anos ou em 10. Mas vai ser interessante.