
Miguel Baltazar (Foto: Divulgação)
Uma pesquisa recente da Docker revelou que quase dois terços dos desenvolvedores utilizam soluções de codificação com IA generativa. Ao mesmo tempo, a Gartner prevê que 75% dos engenheiros de software corporativos usarão assistentes de codificação por IA até 2028, em comparação com menos de 10% no início de 2023.
Os desenvolvedores devem ser proativos na aquisição das habilidades necessárias para se prepararem para a era da GenAI. Seus empregadores também devem ser igualmente proativos em oferecer assistência, mesmo enquanto aumentam seus investimentos em IA, particularmente na GenAI. Isso leva a questões sobre como a GenAI impactará os papéis dos desenvolvedores a longo prazo.
Economia ou perda de tempo
Embora as ferramentas de GenAI aumentem a produtividade, elas também estão propensas a criar tarefas manuais e demoradas no ciclo de vida do desenvolvimento de software (SDLC), criando incertezas sobre o impacto da GenAI nos papéis dos desenvolvedores.
Sem dúvida, a GenAI está demonstrando seu valor. A maioria (65%) dos desenvolvedores que participaram da pesquisa da Docker concorda que as ferramentas com IA generativa facilitam seu trabalho e permitem que se concentrem em tarefas mais importantes. Os principais casos de uso da GenAI no desenvolvimento de software incluem geração e sugestões de código (47%), explicações sobre o funcionamento do código (40%) e resumos das mudanças no código (36%), segundo uma pesquisa da Omdia.
A integração de ferramentas de GenAI no desenvolvimento de software oferece inúmeras vantagens técnicas, incluindo:
- Tempo de lançamento mais rápido: A integração da IA no SDLC acelera a entrega de software, permitindo lançamentos mais rápidos de produtos e oferecendo uma vantagem competitiva.
- Automação de tarefas: A automação de processos como geração de código, testes e implantação permite que os desenvolvedores se concentrem em resolver problemas complexos e criar aplicações inovadoras.
- Modelagem preditiva: Utilizando algoritmos avançados e aprendizado de máquina, a IA pode fazer previsões baseadas em dados sobre os próximos passos em fluxos lógicos, identificar possíveis problemas em aplicativos e antecipar o comportamento dos usuários e tendências de mercado.
No entanto, as ferramentas de GenAI também podem criar desafios para os desenvolvedores, como a dívida técnica e o código órfão.
A dívida técnica é um risco que pode surgir sempre que os desenvolvedores escolhem uma solução fácil e rápida em vez de uma abordagem melhor, embora mais demorada. No contexto das ferramentas de GenAI, a dívida técnica se acumula quando os desenvolvedores não avaliam ou otimizam adequadamente o código gerado pela IA, o que pode resultar em baixa qualidade de código, falta de escalabilidade, vulnerabilidades de segurança e problemas de integração que exigem mais tempo e esforço do que enfrentá-los desde o início.
Além da dívida técnica, os desenvolvedores também enfrentam o problema do código órfão. Código órfão ocorre quando os desenvolvedores deixam códigos não utilizados ou abandonados na base de código, geralmente ao fazer mudanças ou atualizações sem limpar ou excluir completamente o código antigo. O código órfão pode proliferar à medida que os desenvolvedores experimentam sugestões geradas por IA e deixam fragmentos que não têm mais utilidade. O resultado é uma base de código confusa, difícil de manter, entender e depurar.
Ademais dos desafios da dívida técnica e do código órfão, as ferramentas de GenAI introduzem riscos adicionais para as organizações, como a falta de transparência e explicabilidade, o que dificulta a conformidade com os regulamentos.
A GenAI funciona como uma "caixa preta", reduzindo a capacidade de inspecionar como o código foi gerado e rastrear a causa raiz dos problemas. Além disso, a dependência da GenAI em dados de treinamento aumenta o risco de introduzir vulnerabilidades de segurança cibernética no código gerado. Há também o risco de a IA utilizar código proprietário em suas sugestões geradas, o que pode criar responsabilidades de direitos autorais.
Apesar de sua utilidade clara, as limitações atuais da GenAI sugerem que o futuro não será um em que a IA substituirá os humanos, mas sim os complementarão. Dito isso, os desenvolvedores não podem simplesmente se apoiar em seu conjunto de habilidades existentes. Todos os desenvolvedores devem se perguntar: "Quais habilidades específicas preciso adquirir na era da IA?"
Aprimoramento de habilidades
A GenAI pode ajudar as empresas a criar e lançar aplicações mais rapidamente, mas se essas empresas não investirem também na capacitação de seus desenvolvedores, elas ficarão atrás dos concorrentes.
Os desenvolvedores precisam complementar suas habilidades existentes com áreas técnicas essenciais que formam a base da GenAI – dominar essas habilidades técnicas permitirá que eles implementem soluções baseadas em IA de forma eficaz e permaneçam competitivos no cenário tecnológico em constante evolução.
Aqui estão algumas outras habilidades técnicas que os desenvolvedores devem focar em adquirir e aprimorar para se prepararem para o impacto da GenAI em seu conjunto de habilidades:
- IA Generativa e Multimodal: Entender como os modelos generativos usam dados de treinamento para identificar padrões e fazer previsões para gerar respostas é uma habilidade essencial. Essas respostas podem variar entre canais como texto, imagens e vídeo, ou até mesmo serem multimodais, onde vários tipos de dados e algoritmos são utilizados.
- Bancos de dados vetoriais: Esses bancos de dados otimizados são usados para armazenar informações sobre as relações entre pontos de dados, principalmente para mecanismos de busca, motores de recomendação ou outros casos de uso de aprendizado de máquina. Os desenvolvedores precisam saber como utilizá-los para integrá-los em aplicativos de IA ou expandir modelos de linguagem ampla (LLMs).
- Geração Aumentada por Recuperação (RAG): Esta técnica aumenta os prompts de LLM com dados personalizados para fornecer contexto, como dados sobre o seu negócio, a fim de melhorar a precisão e o detalhamento das respostas.
- Desenvolvimento em low-code: Dominar plataformas de low-code permite um desenvolvimento de aplicativos mais rápido e flexível, permitindo que os desenvolvedores se concentrem na resolução de problemas em um nível mais alto e na inovação.
Além disso, à medida que os desenvolvedores enfrentam esse novo cenário ampliado pela IA, manter suas habilidades interpessoais afiadas será ainda mais importante do que antes para garantir que estejam desempenhando seu melhor trabalho.
Aprimorar essas habilidades interpessoais ajudará os desenvolvedores a criar soluções impulsionadas por IA que se alinhem aos objetivos organizacionais e às necessidades dos usuários, tornando-se um ativo para suas equipes nesta era de GenAI.
Os seres humanos não serão substituídos pela GenAI, mas sim pelos desenvolvedores equipados com as habilidades técnicas e interpessoais necessárias para ter sucesso no ambiente tecnológico em rápida evolução. Os desenvolvedores devem aprender a centralizar a IA em seu conjunto de habilidades técnicas e, à medida que a IA assume mais tarefas técnicas tediosas, desenvolvedores com habilidades interpessoais – como pensamento criativo e consciência de negócios – se destacarão, pois essas habilidades vão além do que é possível com a GenAI.
*Por Miguel Baltazar, vice-presidente de relações com desenvolvedores da OutSystems.