Tendências de DevOps 2024: 5 coisas que deve saber

Discover how to deliver better software and systems in rapidly scaling environments. Join our Community

O DevOps é agora uma prática comum, mas está em constante evolução. Explore as razões pelas quais o DevOps surgiu e como mudou ao longo da última década. Que tendências estão a transformar o DevOps atualmente?

Black background featuring purple circle, representing DevOps trends featured image

Key Takeaways

Tendência ou tradição?: O DevOps já não é uma tendência de vanguarda, mas uma forma estabelecida de fazer negócios, integrada nas práticas tanto dos programadores como dos profissionais de TI, assinalando a sua evolução de uma ideia radical para uma metodologia generalizada.

A filosofia DevOps: O DevOps representa a fusão do desenvolvimento e das operações para acelerar a entrega e melhorar a qualidade do software. Baseia-se numa cultura de colaboração e evolução contínua, com o objetivo de eliminar os silos tradicionais.

A evolução tecnológica apoia o DevOps: A ascensão da conteinerização, dos ecossistemas nativos da nuvem e da Infraestrutura como Código (IaC) impulsionou o movimento DevOps, trazendo mais agilidade e eficiência aos processos de desenvolvimento e implementação de software.

A segurança ganha um lugar à mesa: O surgimento do DevSecOps integra a segurança nas primeiras fases do desenvolvimento de software, sublinhando a mudança no sentido de dar prioridade à deteção precoce de vulnerabilidades para minimizar os riscos.

A cultura e as ferramentas andam de mãos dadas: Embora o DevOps beneficie significativamente de avanços tecnológicos como a inteligência artificial e a aprendizagem automática, a sua essência centra-se na promoção de uma cultura positiva que dá prioridade às pessoas, à colaboração e à melhoria contínua.

Quando é que uma tendência tecnológica deixa de ser uma tendência e passa simplesmente a fazer parte do funcionamento normal das empresas?

Podíamos passar algum tempo a debater esse ponto de viragem específico – não existe uma resposta “correta” para a pergunta. Basta dizer que, quando uma “tendência” já vai bem na sua segunda década – como é o caso da cultura e das práticas DevOps –, passa simplesmente a ser a forma como as coisas são feitas. (Segundo a maioria das fontes, o DevOps começou a assumir a sua forma atual por volta de 2007.)

No nosso Guia definitivo de DevOps, definimos o termo da seguinte forma: “DevOps é um conjunto de práticas e filosofias que combina o desenvolvimento de software (Dev) e as operações de TI (Ops), com o objetivo de encurtar o ciclo de vida do desenvolvimento de sistemas e proporcionar uma entrega contínua com elevada qualidade de software. É uma abordagem que dá ênfase à colaboração, à comunicação e à integração entre os programadores e os profissionais de TI.”

Nas suas primeiras fases, isto parecia estranho e assustador – até radical – para alguns profissionais de TI. Agora, é tão comum que se tornou banal. No relatório Estado da CI/CD da CD Foundation, 83% dos programadores afirmaram estar envolvidos em atividades relacionadas com DevOps. Isso não representa literalmente toda a gente, mas está certamente perto disso.

Dito isto, o DevOps – que é tanto uma cultura como qualquer conjunto específico de ferramentas ou processos – está, pela sua própria natureza, em constante evolução.

Neste artigo, veremos como chegámos a este ponto – e como o DevOps continua a evoluir atualmente. Primeiro, é importante compreender por que motivo o DevOps existe.

Porque é importante o DevOps?

DevOps combina os termos “desenvolvimento” e “operações” – dois domínios tecnológicos com uma longa história.  O principal objetivo do DevOps é promover um elevado grau de integração entre estes dois componentes importantes de um sistema de TI, concentrando-se sobretudo na entrega contínua e nos testes de qualidade do software. Tradicionalmente, estas funções eram separadas e funcionavam em silos – o que provocava estrangulamentos, atrasos na entrega, problemas de qualidade, atribuição de culpas (quando algo corria mal), fragilidades de segurança e outros problemas.

O DevOps – enquanto termo, mas, mais importante ainda, enquanto cultura e prática – reflete a necessidade de as organizações de software criarem e disponibilizarem código mais rapidamente e com maior frequência, sem sacrificarem a qualidade, a fiabilidade ou a segurança.

O enorme crescimento do DevOps ao longo da última década, aproximadamente, cruzou-se com várias tendências tecnológicas relacionadas que permitiram a adoção de práticas DevOps e resultaram dos princípios e da cultura DevOps. Entre os fatores mais importantes que nos conduziram até este ponto estão:

Contentorização: Assistimos a uma maior adoção do Docker e de outras ferramentas de contentorização de software, o que ajudou a tornar as aplicações portáteis entre diferentes plataformas, como várias plataformas de nuvem públicas e privadas (incluindo a Amazon Web Services, o Microsoft Azure e a Google Cloud Platform), bem como infraestruturas locais.

Ecossistema nativo da nuvem: Observámos um forte crescimento do desenvolvimento de aplicações nativas da nuvem, que assegura a escalabilidade da infraestrutura e dos serviços. Para representar todo o panorama nativo da nuvem num único local, é necessário um quadro branco do tamanho de um painel publicitário – mesmo num navegador web, é provável que tenha de percorrer a página para ver tudo!

Cibersegurança: Embora o DevOps possa ter-se concentrado inicialmente num alinhamento mais estreito entre o trabalho de desenvolvimento e o trabalho de operações, também evidenciou a necessidade de dar prioridade à segurança numa fase inicial do ciclo de vida do desenvolvimento de software (SDLC). O DevSecOps surgiu como uma tendência importante, integrando a segurança no pipeline DevOps em vez de a tratar como uma entidade separada. Isto melhorou, entre outros aspetos, a deteção precoce de vulnerabilidades, minimizando os riscos e os impactos em produção.

Infraestrutura como código (IaC): O DevOps tornou a automatização uma prioridade nos ambientes de TI, e essa tendência foi especialmente evidente no domínio da infraestrutura; a gestão da infraestrutura era, normalmente, uma tarefa muito manual e repetitiva, mas a introdução da Infraestrutura como código (IaC) proporcionou mecanismos eficientes, fiáveis e repetíveis para gerir a infraestrutura onde são executadas as aplicações de software.

Cultura: O DevOps nunca se centrou exclusivamente na tecnologia. Pelo contrário, procurou dar prioridade às pessoas e libertá-las de encargos ou dores de cabeça desnecessários no seu trabalho. Como resultado, o DevOps ajudou a renovar a atenção dada à importância de uma cultura profissional saudável e não tóxica, com ênfase em aspetos como a segurança psicológica, as análises pós-incidente sem atribuição de culpas, os incentivos partilhados, a melhoria contínua e muito mais.

Inteligência artificial e aprendizagem automática: Embora os modelos de linguagem de grande dimensão (LLMs) e a IA generativa estejam atualmente na ordem do dia, a IA/ML não é certamente algo novo. A aprendizagem automática, em particular, já é utilizada para tarefas como a análise preditiva, a deteção de erros e a automatização de processos em vários contextos DevOps. 

Get Free Access
Get regular tech leadership wisdom for delivering better software and systems.
Get Free Access

Have an account? Log In

Embora a maioria dos padrões acima esteja implementada há bastante tempo, isso não significa que o DevOps tenha estagnado. Parece tão popular como sempre — e tão procurado como sempre do ponto de vista do recrutamento. Uma pesquisa recente, realizada em todo o território dos EUA, por posições de engenheiro de DevOps no LinkedIn — um único título profissional entre uma vasta quantidade de funções potencialmente relevantes — encontrou quase 5 000 vagas.

À medida que amadureceu, o DevOps continuou a evoluir. Vamos analisar cinco das formas mais visíveis como o DevOps continua a mudar.

1. Adoção generalizada do Kubernetes

À medida que a adoção de contentores aumentava rapidamente, tornou-se evidente que as equipas de DevOps precisavam de uma forma melhor de gerir tudo. Foi então que surgiu o Kubernetes, que se tornou a referência na orquestração de contentores e uma plataforma comum (disponível em muitas distribuições ou variantes) para as equipas gerirem as suas aplicações e infraestruturas.

“O Kubernetes e os contentores tornaram possível às equipas empacotar todos os ambientes necessários e executar o respetivo código numa plataforma padrão, para que as equipas de operações tenham de se preocupar apenas com o estado da plataforma Kubernetes”, diz-nos Vitor Avancini, CTO da consultora de IA e dados Indicium.

O Kubernetes disponibiliza uma infraestrutura robusta de automatização, redes e armazenamento para cargas de trabalho nativas da nuvem. É também o que tornou mais realista uma das promessas iniciais da conteinerização — a capacidade de mover cargas de trabalho entre ambientes sem ter de as reconstruir essencialmente: “Facilitou o trabalho da equipa de operações de copiar e colar muitos ambientes, uma vez que não são necessários ambientes diferentes para diferentes pilhas de aplicações.”

Isso ajuda a explicar por que motivo cerca de dois terços das organizações executam o Kubernetes em produção, de acordo com o inquérito de 2023 da Cloud Native Computing Foundation, enquanto outros 18 por cento estão a avaliá-lo ativamente para utilização em produção.

Ferramentas de DevOps úteis: Kubernetes (a distribuição de código aberto original), além de uma vasta gama de software de gestão de contentores comercial e gerido.

2. A automatização está presente em todo o DevOps

O Kubernetes é o principal exemplo de uma tendência mais ampla que se consolidou nos primeiros tempos do DevOps: Automatizar tudo. 

O que começou como um meme está cada vez mais próximo da realidade, no sentido em que a automatização parece estar presente em todo o lado nas cadeias de DevOps, CI/CD e GitOps — desde análises de segurança a revisões de QA, passando por tarefas de compilação e implementação, aplicação de políticas e muito mais. Isso também é evidente numa desconcertante variedade de ferramentas de automatização. Algumas delas — nomeadamente, as ferramentas de baixo código e sem código — nem sequer exigem conhecimentos de programação.

“As coisas podem tornar-se confusas com toda a liberdade que o [DevOps] proporciona às equipas, pelo que as ferramentas de [automatização] podem desempenhar um papel importante para manter tudo organizado e sob controlo”, afirma Avancini, observando que as ferramentas IaC, como o Terraform, continuam a desempenhar um papel significativo neste âmbito.

Ferramentas de DevOps úteis: Terraform, Ansible

A priorização é um desafio muito comum, com as empresas a adiarem frequentemente tarefas críticas relacionadas com a cloud, como a otimização de bases de dados e o desenvolvimento de infraestruturas, para os últimos trimestres ou até para o ano seguinte. As equipas de DevOps estão ansiosas por resolver estas questões, mas, quando se sentam para o fazer, o enorme volume de tarefas torna frequentemente difícil perceber quais são os problemas de maior valor e que devem ter prioridade.

 

É precisamente por isso que a Zesty expandiu a sua oferta para uma plataforma que inclui informações acionáveis, ajudando as empresas a dar prioridade e a implementar de forma eficiente as correções mais valiosas primeiro. Para priorizarem estas tarefas de forma eficaz, as empresas precisam de informações claras sobre os investimentos de tempo e financeiros envolvidos. As plataformas que automatizam estes processos são inestimáveis, pois permitem uma melhor tomada de decisões e uma melhor alocação de recursos. As equipas de DevOps estão cada vez mais conscientes do valor que as plataformas proporcionam através da automação, da visibilidade e de recomendações acionáveis.

Share This Quote on:

3. A arquitetura de microsserviços também está em todo o lado

A arquitetura de microsserviços – que consiste essencialmente em dividir aplicações maiores em componentes mais pequenos e distintos, que funcionam de forma independente, mas continuam a trabalhar em conjunto para formar o sistema maior – não é nova. No entanto, durante muitos anos, esta abordagem nem sempre foi realista para muitas organizações.

Atualmente, três quartos (74%) das empresas utilizam microsserviços, de acordo com a Gartner, e quase todas as restantes (23%) planeiam fazê-lo num futuro próximo.

“Os microsserviços proporcionaram às equipas a oportunidade de escolherem as suas próprias pilhas de ferramentas, algo que anteriormente exigia que as equipas centrais de operações disponibilizassem diferentes ambientes de teste e implementação às equipas de desenvolvimento”, afirma Avancini.

Aqui pode surgir uma discussão sobre o ovo e a galinha, porque a arquitetura de microsserviços se adapta naturalmente aos contentores e ao Kubernetes – pelo que a maturidade da primeira provavelmente impulsionou a adoção do segundo, tal como aconteceu com a maturação geral das tecnologias nativas da cloud e do desenvolvimento. (As aplicações novas ou “desenvolvidas de raiz” atualmente têm maior probabilidade de ser desenvolvidas para ambientes nativos da cloud, tendo os microsserviços como uma opção arquitetural de destaque.)

A arquitetura de microsserviços também evoluiu lado a lado com a computação sem servidor (ou arquitetura sem servidor). São conceitos distintos, mas frequentemente relacionados – uma forma simples de os distinguir é considerar que os microsserviços constituem uma abordagem arquitetural à conceção de software, enquanto a computação sem servidor é uma abordagem arquitetural à forma como esse software é efetivamente executado.

Ferramentas DevOps úteis: Prometheus, Compass, AWS Fargate

4. A engenharia de plataformas é o novo DevOps (mais ou menos)

Está bem, o título é um pouco exagerado – a engenharia de plataformas e o DevOps são disciplinas diferentes, mas a sua relação continua a desenvolver-se. Uma prova anedótica disso é o facto de o relatório Estado do DevOps, publicado há vários anos pela Puppet, ter incluído no seu subtítulo de 2024: “A evolução da engenharia de plataformas”.

A engenharia de plataformas é a disciplina de criar plataformas internas – com uma forte ênfase no autoatendimento – para fornecer aos programadores e a outros profissionais de tecnologia tudo o que precisam para criar aplicações e serviços. Tal como acontece com o DevOps, existe uma forte ênfase na automação de infraestruturas, em cadeias de ferramentas e fluxos de trabalho normalizados, e assim por diante. O aprovisionamento de um ambiente de desenvolvimento ou de teste, por exemplo, não deveria exigir o envio de um pedido para uma equipa de gestão de infraestruturas completamente separada.

“Uma grande tendência é a engenharia de plataformas, que fornecerá as ferramentas e as práticas necessárias para que as equipas de desenvolvimento possam não só desenvolver, mas também testar, monitorizar e reverter aplicações” de forma unificada e consistente, afirma Avancini, sem terem de pedir regularmente aos profissionais de operações as infraestruturas e os serviços de que necessitam para o fazer.

Avancini observa que também existe uma mudança geral no DevOps no sentido de processos centralizados – o que, à primeira vista, pode parecer contraintuitivo, tendo em conta o desenvolvimento orgânico de muitas culturas DevOps. No entanto, a engenharia de plataformas pode ser vista através desta perspetiva: DevOps não significa anarquia. Os programadores e outros profissionais de TI continuam a precisar de ferramentas, infraestruturas e – sim – limites de segurança.

Neste contexto, também verá por vezes os termos Plataforma Interna de Desenvolvimento (IDP) e Ambiente Integrado de Desenvolvimento (IDE).

Ferramentas DevOps úteis: Kubernetes, Humanitec

More Articles

5. A IA terá um papel cada vez mais importante no DevOps

As aplicações emergentes de IA – representadas mais recentemente pela nova classe de aplicações de IA generativa baseadas em LLM, que têm despertado a atenção ultimamente – irão provavelmente integrar-se também nos processos e nas cadeias de ferramentas de DevOps. Existe até um termo para esta união: AIOps.

Talvez a forma mais simples de pensar onde a IA será útil seja a partir da perspetiva mais abrangente da automatização: se algo puder ser automatizado, ou se a inteligência e o esforço humanos puderem ser aproveitados de alguma forma, a IA poderá (e provavelmente irá) desempenhar um papel.

«A assistência da IA terá um papel importante no DevOps, principalmente no apoio à revisão de código, na análise da qualidade e da segurança do código e na descrição automática de todos os efeitos que o novo código poderá ter quando for implementado», afirma Avancini.

Com efeito, existe uma longa lista de potenciais casos de utilização, muitos dos quais ainda estão a surgir. É de esperar que a produtividade dos programadores e a automatização da segurança sejam duas das principais áreas de foco num futuro próximo.

Ferramentas de DevOps úteis: GitHub Copilot 

Em suma

A cultura e as práticas de DevOps resistiram ao teste do tempo – mas isso não significa que sejam estáticas. Quais são as tendências mais recentes de DevOps na sua organização? Para onde acha que o DevOps está a evoluir nos próximos anos? Subscreva a newsletter do The CTO Club para receber mais notícias e participar em mais discussões sobre o setor!

Kevin Casey
Kevin Casey is an award-winning technology and business writer with deep expertise in digital media. He covers all things IT, with a particular interest in cloud computing, software development, security, careers, leadership, and culture. Kevin's stories have been mentioned in The New York Times, The Wall Street Journal, CIO Journal, and other publications. His InformationWeek.com on ageism in the tech industry, "Are You Too Old For IT?," won an Azbee Award from the American Society of Business Publication Editors (ASBPE), and he's a former Community Choice honoree in the Small Business Influencer Awards. In the corporate world, he's worked for startups and Fortune 500 firms – as well as with their partners and customers – to develop content driven by business goals and customer needs. He can turn almost any subject matter into stories that connect with their intended audience, and has done so for companies like Red Hat, Verizon, New Relic, Puppet Labs, Intuit, American Express, HPE, Dell, and others. Kevin teaches writing at Duke University, where he is a Lecturing Fellow in the nationally recognized Thompson Writing Program.
Follow the author: