Antes de ser fundador e CEO, eu sou um Cientista de Computação e tenho um amor enorme pela profissão. Não só devo muito à ela, mas foi o espaço de trabalho onde pude conhecer algumas das pessoas mais inteligentes que passaram e/ou ainda fazem parte da minha vida e dos meus projetos.
Quando os CEOs dos laboratórios de fronteira praticamente decretaram o fim da profissão alguns anos atrás, eu precisei parar para pensar a respeito e chegar às minhas próprias conclusões. Normal, eu sou mineiro, naturalmente desconfiado, e claro, nutro grande afeto pela minha profissão e eu precisava ter certeza de o quanto disso era marketing e o quanto de verdade havia nesse discurso.
O resultado é que ainda em 2023 eu acabei me tornando um dos poucos tecnologistas defendendo que a profissão, ainda que mudasse, seria uma área com demanda por muitos e muitos anos, enquanto muitos dos meus colegas abraçaram o discurso de que ninguém mais precisaria de engenheiros de software.
Mas o que de fato aconteceu, então?
Aconteceu que a IA generativa se tornou uma ferramenta extraordinária de geração de código, muito melhor que as anteriores. Sim, sempre existiu um mundo de ferramentas de geração de código, mesmo na era pré-IA.
Quem é o programador GenX ou Millenial mais antigo que nunca usou um softwarezinho da Borland pra gerar código? Programou com drag and drop de componentes? Não precisa ir muito longe, qualquer IDE de programação possuía geradores de código para inúmeras partes da construção, há muitos anos. A diferença é que os LLMs levaram a geração de código para patamares muito longe do que tínhamos à disposição até aqui.
Quando as pessoas começaram a ver código rodando sendo criado por leigos, o discurso do fim dos engenheiros de software foi anabolizado. Eu vi o nível de tensão subir entre os devs mais próximos. A quantidade de caixinhas de perguntas que colegas programadores me enviavam sobre o tema, explodiu. Toda vez que abria uma caixinha, as perguntas estavam lá.
E enquanto os devs receavam pelo fim de suas carreiras, OpenAI e Anthropic mantinham centenas de vagas abertas para contratar mais... devs.
A minha conclusão óbvia, que sustentou a minha defesa da engenharia de software como profissão nos últimos anos foi a seguinte: se agora alguém que consegue pensar e entender software (Engenheiro de Software) consegue produzir um impacto MUITO maior com MUITO menos esforço, então haverá mais software no mundo. Se somado a isso, até mesmo leigos conseguirão colocar software no ar, então haverá AINDA MAIS software do que podemos imaginar. E quanto mais software existir, mais oportunidade existirá para quem entende de software.
Por mais que a forma de produzir software mude, entender de software em um mundo ENTUPIDO de software, continua me parecendo um vantagem. Um potencial real de gerar bastante valor.
E parece que as coisas estão se desdobrando mesmo por esse caminho.
O "boom" das vagas de Engenharia de Software

As vagas de emprego em desenvolvimento de software explodiram. Mesmo as empresas que estão construindo as melhores IA's geradoras de codigo, seguem contratando engenheiros de software.
Mas talvez você esteja se perguntando, por que então tantas empresas que reduziram seus quadros nos últimos anos, incluíram nesse enxugamento também os engenheiros... Bom, existem inúmeros motivos para uma empresa reduzir seu quadro: foco, estímulos do mercado, necessidade de capital e, também, aumentar a eficiência. Se a produtividade aumenta demais, o ritmo de criação de novos projetos/demandas dentro da empresa precisa acompanhar isso, caso contrário esse fenômeno irá criar ineficiência. No entanto, o fato de não haver tanta demanda extra dentro de uma empresa para acomodar tamanho ganho de produtividade, não significa que esta demanda não exista em outras empresas... inclusive de forma reprimida.
É por isso que logo no início deste boom eu passei a acreditar também em um boom de empreendedorismo. O boom de uma quantidade absurda de novas empresas sendo criadas. Eu realmente acredito que existe uma demanda reprimida de software gigantesca.
Há uma quantidade enorme de coisas que poderiam ser feitas ou melhoradas com software que antes não faziam sentido, simplesmente porque era caro e lento construir software. Agora que é barato e rápido, todo esse tsunami de demanda reprimida vai precisar de oferta de profissionais para atender.
Antes, criar um software para atender uma necessidade interna ou externa (de cliente) levava tanto tempo, e tanto dinheiro, que isso inviabilizava uma enorme quantidade de pequenas e médias empresas de construírem estes softwares. Isso mudou.
O impacto desta mudança se dá na forma de desconcetração de engenheiros das grandes empresas e a distribuição de engenheiros por uma quantidade muito maior de empresas, de portes e ambições muito diferentes.
Em outras palavras: agora que o impacto de um dev é muito maior, muito mais empresas conseguirão justificar a contratação de um. Mesmo se o produto final da empresa não for software em si.
A primeira "nova" profissão em Engenharia de Software
Nem sei se daria pra usar o termo "nova" profissão aqui, pois a Palantir começou a aplicar esse modelo ainda nos anos 2000. Porém, definitivamente será uma função crescente e uma opção de carreira cada vez mais comum para o engenheiro de software. Estou me referindo ao FDE: forward deployed engineer.
O FDE basicamente é um mix de consultor e dev, capaz de atuar dentro do cliente implementando soluções específicas para ele. À medida que os softwares passam a ser muito mais customizáveis e os as empresas de prestação de serviço passam a fazê-lo com muito mais uso de software, a demanda por FDE's tende a escalar rapidamente e puxar o número de vagas ainda mais para cima.
O que são as implicações para um "dev tradicional"
Eu acredito que os diferenciais principais aqui estarão na capacidade de julgamento dos devs (quando usar qual ferramenta/modelo, quando é o momento de limpar o código, como gerenciar o "dark code" sendo produzido por AI, o quanto de risco você quer colocar em possível trade off de velocidade/qualidade/requisito do cliente, etc), na experiência dentro da área de atuação da empresa (ex: payments, banking, cyber, travel, media,... em cada segmento o dev acumula conhecimento de valor específico daquela área) e nas soft skills, que é uma frente que muitos devs ignoram. Sobretudo no modelo de FDE, onde os devs estão mais diretamente ligados à stakeholders importantes do lado do cliente, as soft skills ganham um peso maior.
De toda forma, sigo acreditando que estamos diante de uma enorme mudança no modo de trabalho dos profissionais de engenharia de software, mas muito distante do fim dessa carreira. A demanda por software que está surgindo (seja software comercial, seja software para uso próprio) é algo que incomparável ao que vimos até aqui.