Empresas estão ganhando maturidade com a prática DevOps e, com isso, novas funções vão surgindo. Confira algumas tendências para os próximos anos.
A prática DevOps tem o objetivo de entregar melhorias contínuas de um produto. Por isso, os times estão sempre trabalhando para aprimorar a forma como desenvolvem, testam e entregam um código.
Porém, como cita a jornalista de tecnologia Lisa Morgan, para o InformationWeek, cada empresa tem seu entendimento sobre a função da prática DevOps. Por exemplo, uma companhia pode ter um time para implantar códigos, enquanto em outra, apenas para melhorar a velocidade de uma entrega.
Apesar disso, as empresas já estão ganhando certa maturidade com a prática, o que faz surgir novas funções dentro do DevOps. Kirill Semenov, chefe de DevOps da DataArt, consultoria de TI, contou à jornalista quais são algumas demandas que DevOps vai exigir no futuro:
- Automação de construção de software e integração contínua.
- Testes automatizados.
- Automação da implantação.
- Gerenciamento de configuração.
- Monitoramento das entregas.
- DevSecOps.
- AIOps e MLOps.
- Engenheiro de confiabilidade.
Como destaca Morgan, os três últimos itens desta lista já estão no radar de muitas empresas que investem em DevOps. Abaixo, confira um resumo de algumas tendências de evolução desta prática.
1. DevSecOps é a próxima fase de DevOps
Já falamos aqui no Mundo + Tech sobre a importância de pensar na segurança de projetos de software em todas as etapas. Neste cenário, é preciso investir na integração entre as equipes de DevOps e segurança.
Quando isso não acontece, há chances de um projeto ser entregue em um tempo maior e de ter um risco mais alto de falhas do que se todos trabalhassem de forma coesa.
2. AIOps e MLOps
A missão dos times de DevOps é reduzir o tempo de entrega de um projeto, agregando valor, mas sem sacrificar a qualidade. AIOps e MLOps (saiba mais aqui) são duas metodologias que se espelham na integração entre desenvolvedores e operações.
Como muitos aplicativos que o pessoal de DevOps tem construído fazem uso de Inteligência Artificial e Machine Learning, a tendência é que aconteça uma integração com essas tecnologias para desobstruir obstáculos — como por exemplo identificar dados fragmentados de uma empresa.
3. Arquitetura e estratégia de microsserviços
Desenvolver a partir de microsserviços fornece agilidade na entrega, a possibilidade de reutilização do código escrito e ainda facilita a portabilidade do aplicativo para um ambiente em nuvem. Não à toa, empresas com aplicações monolíticas têm adotado essa prática.
Aplicativos monolíticos possuem uma única camada, em que a interface do usuário e o código de acesso aos dados estão integrados a uma única plataforma. Com microsserviços, empresas conseguem lidar com os gargalos que impedem a entrega contínua desse modelo de software.
4. Gerenciamento do fluxo de valor
O gerenciamento do fluxo de valor é um termo novo e vez ou outra é chamado de “ValueOps”. A metodologia tem o objetivo de entender qual é o fluxo de valor de uma aplicação, quão bem ela se alinha com aquilo que a empresa deseja alcançar, quais os obstáculos e o ROI.
Ferramentas de gerenciamento têm se tornado integrante da prática DevOps, pois conseguem mostrar ao time o ROI e os benefícios de um projeto. Isso acontece porque todas as etapas de um aplicativo são compreendidas pelas equipes, identificando qual fase pode gerar perdas.
5. Low-Code ou baixo código
Uma plataforma de desenvolvimento de baixo código (LCDP na sigla em inglês) vai fornecer um ambiente de desenvolvimento usado para criar aplicativos por meio de interfaces gráficas de usuário e configuração, ao invés da tradicional programação, que é codificada de forma manual.
Segundo a autora do artigo, os desenvolvedores têm demorado a aceitar a ideia de utilizar low-code por saberem exatamente o quão difícil é escrever um bom código. Porém, com os ciclos de entrega diminuindo, eles podem fazer uso do software para construir projetos rapidamente com ferramentas de baixo código, ao mesmo tempo que conseguem personalizá-lo.
No entanto, Megan destaca que é preciso diferenciar low-code de no-code. Este segundo é voltado para profissionais de negócios que não possuem experiência em codificação e desenvolvimento de software.
6. Colaboração com o trabalho remoto
Assim como as mais diferentes áreas de uma empresa precisaram trabalhar de forma remota por causa da pandemia do novo coronavírus, o mesmo aconteceu com os times de DevOps.
Como destaca Megan, o bom desempenho durante o tempo forçado fora do escritório foi atribuído a três fatores: quão virtuais as equipes para trabalhar neste novo esquema, a visibilidade que tiveram do status dos códigos e como eles foram colaborativos mesmo sem as reuniões presenciais.
“Estamos vendo as ferramentas DevOps evoluindo do estágio. Elas deixam de servir às necessidades funcionais de uma equipe ou indivíduo para incluir recursos que suportam o funcionamento de uma equipe”, disse Jean Hsu, vice-presidente de engenharia da Range, empresa norte-americana fornecedora de softwares para o trabalho remoto.
7. Engenharia de confiabilidade do site
A engenharia de confiabilidade de site é uma disciplina que vai incorporar aspectos da engenharia de software para aplicá-los em problemas de infraestrutura e operações de um sistema ou aplicativo.
Neste caso, os engenheiros de confiabilidade vão aplicar essa metodologia para melhorar a resiliência das empresas enquanto elas buscam agilidade na transformação digital. Isso acontece a partir da entrega de aplicações que conseguem ser escaláveis e altamente confiáveis.
Esses profissionais trabalham lado a lado com o time de DevOps e vão auxiliar na automação de um aplicativo e garantir que ele tenha um bom índice de desempenho e confiabilidade quando colocado em produção.
8. Testes automatizados
Um erro comum da prática DevOps é não considerar o teste contínuo com a integração contínua (CI) e a entrega contínua (CD)— você pode saber mais sobre esses conceitos aqui. E por isso, indica a jornalista, a fase de testes acaba se tornando um gargalo.
Ainda que leve mais tempo desenvolver um script de automação do que realizar uma rápida varredura pelo código, o número e tipos de testes automatizados têm aumentado como forma de construir um pipeline CI/CD (ou seja, uma série de etapas que devem ser realizadas para a disponibilizar a versão mais atualizada de um software).
Para algumas organizações, o teste se tornou tão crítico quanto a segurança, avançando no conceito de DevTestOps. Ou seja, teste em todas as etapas do projeto.
9. Monitoramento e observabilidade
Monitorar aplicações na produção é essencial, especialmente porque a experiência do cliente agora é sinônimo de imagem de marca de uma empresa. Daí o uso de ferramentas de monitoramento de aplicativos para identificar o que afeta ou não o desempenho deles.
O objetivo é conseguir corrigir qualquer problema antes que ele os usuários identifiquem. Essas ferramentas coletam e geram bastante dados, podendo ser integradas a outras utilizadas por DevOps. A vantagem é que esses profissionais conseguem otimizar as correções.
10. Automação da implantação
Automatizar a implantação do código pode gerar velocidade e qualidade ao projeto. Uma certeza existente é que muitos profissionais não querem ter o trabalho de implantar códigos, às vezes os mesmos, centenas ou milhares de vezes ao dia.
Essa automação pode ser mais prática quando o desenvolvimento acontece em microsserviços, já que um código terá de 3mb a 5mb, o que leva segundos para ser implantado.
11. Modernizar os sistemas legados
Modernizar os sistemas legados não é um conceito novo. Porém, ainda recebe destaque, porque as empresas não conseguem substituir aplicações legadas de missão crítica por versões mais recentes e baseadas em computação em nuvem.
Neste sentido, as empresas começam a ser mais estratégicas sobre o que deve ir ou não para um ambiente cloud. Assim, enquanto elas adotam ou desenvolvem aplicativos já nativos na nuvem, os legados são usados para dar suporte a dispositivos, por exemplo, como forma de fornecer funcionalidades incrementais, mas sem comprometer a produção e uso.
Principais destaques desta matéria
- Empresas começam a ganhar maturidade com DevOps.
- Isso abre espaço para novas funções dentro da metodologia.
- Confira uma lista de 11 tendências em DevOps para as empresas ficarem de olho.