Uma das atividades profissionais mais demandadas nos últimos tempos é a de desenvolvedor de sistemas, ou dev. Já não é de hoje que a quantidade de pessoas que se capacitam nessa atividade é menor que o número de vagas abertas nas empresas.
A pandemia acelerou drasticamente esse cenário, aumentando a demanda por esses profissionais, uma vez que forçou a grande maioria das empresas a se adaptar abrupta e compulsoriamente ao universo digital e ao home office, além de ter sido o empurrão que faltava para que essas empresas iniciassem a já atrasada Transformação Digital em seus processos e serviços.
De acordo com uma pesquisa da Forrester, publicada em 2020, em 65% das organizações, a área de TI não consegue concluir tudo aquilo que é pedido pelas áreas de negócios, por conta da grande demanda de projetos.
Com isso, os profissionais dessa área estão sendo amplamente disputados pelas empresas, gerando uma competição predatória por talentos. Descobrir, contratar e reter os melhores talentos em desenvolvimento de software é um dos maiores desafios das empresas hoje.
Um estudo de Evans Data Corporation apontou que existem atualmente 26,9 milhões de desenvolvedores em todo o mundo. O estudo também prevê que a população global de desenvolvedores, se nada mudar, aumentará para surpreendentes 45 milhões até 2030, significando um crescimento de 75% no número de desenvolvedores nessa década.
Por que essa demanda? Hoje, as empresas precisam não apenas ser excelentes no seu setor ou setores de atuação, mas também em desenvolvimento de software.
Um estudo da McKinsey, “Developer Velocity: How software excellence fuels business performance”, mostra claramente que as empresas que se destacam na velocidade (e qualidade) do desenvolvimento dos softwares, que são essenciais para seu negócio, apresentam diferenças substanciais em termos de resultados financeiros, comparadas com as que não estão dando a devida atenção a essa questão.
O Gartner estima que o low-code será responsável por mais de 65% do desenvolvimento de aplicativos até 2024
Assim, o contexto atual, de escassez de talentos, é insustentável. Começam a surgir alternativas que visam a aumentar a produtividade e, eventualmente, diminuir a pressão que gera essa escassez. Vemos então o aumento na busca por soluções que automatizem parte da tarefa de desenvolvimento, bem como reduzam a demanda por profissionais.
Um exemplo é o crescimento das tecnologias denominadas low-code. O Gartner estima que o low-code será responsável por mais de 65% do desenvolvimento de aplicativos até 2024. Muitas das maiores empresas de tecnologia do mundo já dispõem de soluções para o mercado e estão sendo investidos centenas de milhões de dólares em startups do setor.
Uma plataforma de desenvolvimento de low-code (LCDP – Low-code Development Platform) é um software que fornece o ambiente, que os programadores usam para criar software aplicativo, por meio de interfaces gráficas intuitivas e fáceis de usar, em vez da tradicional atividade de programação.
A adoção e o interesse por plataformas low-code está crescendo de forma massiva, porque a demanda por mais e mais software está crescendo exponencialmente, ao mesmo tempo em que as organizações precisam aumentar sua agilidade digital, sem depender de novas contratações. Com plataformas low-code é possível construir softwares, em menor tempo, demandando pouca atividade de programação.
A tecnologia é de fácil absorção, porque não exige conhecimentos aprofundados em linguagens de programação, já que o trabalho de codificação em si, passa a ser secundário durante o processo de desenvolvimento. Como o desenvolvimento usando plataformas low-code é muito rápido, ele incentiva uma abordagem mais ágil.
O desenvolvimento pode, portanto, progredir de forma incremental e iterativa, permitindo que os usuários finais visualizem e moldem a solução à medida que ela se desenvolve, com isso ajudando a garantir que esteja bem alinhada com as suas necessidades.
As tecnologias de Inteligência Artificial poderão contribuir em muito para automatizar determinadas tarefas que os desenvolvedores executam hoje
Impulsionando mais ainda as mudanças, vemos sinais claros que as tecnologias de Inteligência Artificial poderão contribuir em muito para automatizar determinadas tarefas que os desenvolvedores executam hoje. Uma das tarefas mais desagradáveis que os desenvolvedores têm que executar é depurar código. Principalmente código que foi escrito por outros.
Essa tarefa chata pode chegar a 50% ou mais do tempo do trabalho de um dev e tomar tempo precioso e escasso para o cumprimento dos prazos cada vez mais curtos. Um sistema de machine learning (ML) desenvolvido pela Intel, o ControlFlag, se propõe a detectar anomalias de codificação por conta própria e aprender com exemplos anteriores.
O sistema, segundo a Intel, foi treinado em mais de 1 bilhão de linhas de código-fonte não rotulado, para aprender padrões de codificação, com alta precisão. O artigo “Intel’s ControlFlag taps AI to automatically detect errors in code” mostra um pouco mais de sua atuação.
Existem também sistemas de ML que ajudam no próprio desenvolvimento do código, como o desenvolvido pela startup Cordota, que automaticamente complementa código escrito em diversas linguagens, como Python, C, HTML, Java, Scala, Kotlin, e JavaScript.
Todas essas iniciativas sinalizariam no futuro o fim dos devs? Não creio. Vejo muito mais como uma evolução do seu ferramental
As big techs estão também investindo pesado nesse contexto, como a Microsoft usando o GPT-3 para complementar código (uma lida no artigo “Microsoft has built an AI-powered autocomplete for code using GPT-3” mostra que embora ainda incipiente, tem grande potencial a ser explorado) e o Facebook com o Transcoder, para traduzir código de uma linguagem para outra, como de Cobol para Java.
A Amazon recentemente liberou para uso uma ferramenta baseada em ML que gera recomendações para melhoria da qualidade do código. A ferramenta CodeGuru pode ser melhor entendida no artigo “Amazon launches AI-powered code review service CodeGuru in general availability”.
Todas essas iniciativas, ainda no início, mas evoluindo rápido, sinalizariam no futuro o fim dos devs? Não creio. Vejo muito mais como uma evolução do seu ferramental, que vai tirar muito do trabalho robotizado que os devs fazem e deixar isso com as máquinas.
Na verdade, as novas tecnologias vão provocar uma mudança no perfil e qualificação profissional. Os devs vão se concentrar onde sua expertise humana é muito mais importante: pensar e criar as soluções de software demandadas pelo negócio. Mais um passo na direção de transformar a sigla RH em Robôs e Humanos.
Cezar Taurion é VP de Inovação da CiaTécnica Consulting, e Partner/Head de Digital Transformation da Kick Corporate Ventures. Membro do conselho de inovação de diversas empresas e mentor e investidor em startups de IA. É autor de nove livros que abordam assuntos como Transformação Digital, Inovação, Big Data e Tecnologias Emergentes. Professor convidado da Fundação Dom Cabral, PUC-RJ e PUC-RS