A nova onda da terceirização de TI: microsserviços

A terceirização de TI teve várias ondas de implementação nas organizações. A primeira onda foi com o objetivo de redução de custos, onde as empresas substituíram o pessoal interno de TI por consultores de TI, via empresas de terceirização, conhecido como body shop. A Stefanini começou com body shop para bancos. A segunda onda foi a absorção completa da área de TI por uma empresa, onde todas as responsabilidades de TI eram delegadas para o fornecedor. Um exemplo, foi o contrato global da EDS com General Motors que incluía os datacenters da GM. Uma terceira onda foi o insourcing, quando as empresas retomaram parte de suas atividades de TI. Tivemos uma enorme onda de terceirização com o Y2K, o Bug do Milênio, onde entraram em cena as empresas indianas e israelenses para a conversão de sistemas legados, muitas dentro do conceito de fábricas de software. A SAP, neste período, deu um salto de crescimento implementando seu ERP nas organizações, que de uma certa forma terceirizou o desenvolvimento dos sistemas de gestão das empresas. O sucesso do processamento em nuvem – Cloud Computing – está terceirizando as operações de data centers das organizações. Apesar do Itaú Unibanco possuir um dos maiores data centers do mundo com um investimento de R$3,3 bilhões em 2015, em 2020, contratou a AWS para transferir parte de suas operações. Agora, a nova onda de terceirização é o desenvolvimento de soluções para a transformação digital baseadas em microsserviços, pequenas partes de software que trabalham integradas.

A discussões sobre vantagens e desvantagens da terceirização de TI devem partir das necessidades e estratégia dos negócios. Particularmente, sempre defendi que softwares que implementam processos legais obrigatórios e práticas commodities de um negócio devem ser terceirizados. Meu argumento é que, basicamente, não devemos reinventar a roda e que contratar sai mais barato, se considerarmos o TCO – Total Cost Ownership. Por exemplo, sistemas de RH, fiscal e tributário. Já a experimentação de novos processos e funcionalidades únicas, que geram inovação e competitividade estratégica, devem ser desenvolvidos por pessoal interno. Reforço meu argumento com o crescente emprego de metodologias ágeis para desenvolvimento incremental de novos processos.

Entretanto, assim como no bug do milênio, onde todas as empresas correm, ao mesmo tempo, para desenvolver novos modelos únicos de negócios digitais para ter diferencial no mercado, este desenvolvimento deve ser terceirizado, resolvendo o problema de escassez de mão de obra especializada.

Nestas circunstâncias, diferente dos modelos anteriores, o prestador de serviços deve estar comprometido com a inovação e transformação digital do cliente. Uma coisa é desenvolver uma aplicação a partir de uma especificação do cliente e outra é o fornecedor conceber as ideias de inovação e desenvolvê-las para os clientes. Aqui entra a questão de propriedade intelectual e royalties. Esta situação pode gerar conflitos de interesses e bloquear as negociações entre as empresas.

Uma estratégia para avançar rápido e oferecer alta flexibilidade para novas soluções de transformação digital é optar por uma operação baseada em microssserviços. O que considero a nova de terceirização baseada em microsserviços.

O que são microsserviços?

Microsserviços são uma abordagem de arquitetura para a criação de aplicações formadas por partes menores que funcionam juntas, mas de maneira integrada. Os pequenos serviços independentes se comunicam usando API (Application Program Interface) bem definidas. Os microsserviços podem estar hospedados em diferentes provedores de computação em nuvem, dentro do conceito de multicloud. Desta forma, conseguimos alta escalabilidade e agilidade no desenvolvimento de aplicativos, acelerando o tempo de introdução de novos recursos no mercado, o time-to-market.

Os microsserviços são publicados nos provedores de computação em nuvem e podem ser consumidos por aplicações das empresas, a partir de pagamentos por uso. Existem vários microsserviços já disponíveis, como por exemplo reconhecimento de objetos e características pessoas a partir de fotos de pessoas utilizando inteligência artificial. Ao invés da equipe de desenvolvedores investir longas horas desenvolvendo, coletando informações para treinamento e testes dos algoritmos de IA, basta chamar um microsserviço e a resposta vem em poucos milissegundos.

As startups já trabalham dentro do conceito de microsserviços, ganhando tempo de desenvolvimento e reduzindo custos, diferencial que deve ser buscado por empresas já constituídas.

Desta forma, um dos desafios para as empresas implementarem seus planos de transformação digital, é fundamental transformar a cultura de desenvolvimento monolítico de software para uma cultura baseada em microsserviços.

Trabalhar com microsserviços implica em implementar modelos de governança para orquestrar o uso de microsserviços, incluindo processos de validação, gestão de mudança e monitoração de desempenho. Neste cenário, muitas vezes, você não conhecerá o desenvolver do serviço, transferindo parte da responsabilidade de garantia de qualidade e segurança para o provedor de computação em nuvem.

Como em todos os modelos de terceirização existem desafios a serem vencidos. Aqui, além do desafio técnico temos o que vencer o desafio cultural. Mas, afinal estamos falando de transformação.