O que é Devops? Unindo desenvolvimento e operações para criar software program melhor



O que é Devops? Unindo desenvolvimento e operações para criar software program melhor

Uma mala de viagem de “desenvolvimento” e “operações”, o devops surgiu como uma forma de reunir dois grupos anteriormente separados responsáveis ​​pela construção e implantação de software program.

No velho mundo, os desenvolvedores (desenvolvedores) normalmente escreviam o código antes de entregá-lo aos administradores do sistema (operações ou operações) para implantar e integrar esse código. Mas à medida que a indústria se deslocava para desenvolvimento ágil e computação nativa em nuvemmuitas organizações se reorientaram em torno de práticas modernas e nativas da nuvem na busca por lançamentos melhores e mais rápidos.

Isso exigia uma nova maneira de executar essas funções-chave de uma forma mais simplificada, eficiente e coesa, onde as antigas frustrações das funções desconectadas de desenvolvimento e operações fossem eliminadas. Com dois grupos trabalhando juntos, os desenvolvedores podem implementar rapidamente pequenas melhorias no código por meio de integração e entrega contínuas em vez de gastar anos em lançamentos de produtos “massive bang”.

O Devops nasceu em empresas nativas da nuvem como Fb, Netflix, Spotify e Amazon; mas tornou-se uma das tendências definidoras da indústria de tecnologia da última década, principalmente porque preenche muitas das mudanças que moldaram o desenvolvimento de software program moderno.

À medida que o desenvolvimento ágil e a computação nativa em nuvem se tornaram onipresentes, o devops permitiu que toda a indústria acelerasse seus ciclos de desenvolvimento de software program. Assim, o Devops já se infiltrou completamente nas empresas, especialmente em organizações que dependem de software program para gerir os seus negócios, como bancos, companhias aéreas e retalhistas. E gerou uma série de outras práticas de “operações”, algumas das quais abordaremos aqui.(JF1)

Práticas Devops

Devops requer uma mudança de mentalidade de ambos os lados da divisão de desenvolvimento e operações. As equipes de desenvolvimento devem se concentrar em aprender e adotar processos ágeis, padronizar plataformas e ajudar a impulsionar a eficiência operacional. As equipes de operações agora devem se concentrar em melhorar a estabilidade e a velocidade, ao mesmo tempo em que reduzem custos trabalhando lado a lado com a equipe de desenvolvedores.

Em termos gerais, todas essas equipes precisam falar uma linguagem comum e é necessário que haja um objetivo compartilhado e uma compreensão das principais habilidades de cada um para que o Devops prospere.

Mais especificamente, os engenheiros Damon Edwards e John Willis criou o modelo CALMS para reunir o que é comumente entendido como os princípios-chave do devops:

  • Cultura: Aquela que abraça metodologias ágeis e está aberto a mudanças, melhorias constantes e responsabilidade pela qualidade ponta a ponta do software program.
  • Automação: automatizar o trabalho remoto é um objetivo basic para qualquer equipe Devops.
  • Lean: Garantir o fluxo suave do software program através das principais etapas o mais rápido possível.
  • Medição: Você não pode melhorar o que não mede. O Devops busca uma cultura de medição e suggestions constantes que podem ser usados ​​para melhorar e dinamizar conforme necessário, em tempo actual.
  • Compartilhamento: O compartilhamento de conhecimento em uma organização é um princípio basic do Devops.

“Quem poderia voltar à maneira antiga de tentar descobrir como fazer com que o ambiente do seu laptop computer tenha a mesma aparência do ambiente de produção? Todas essas coisas deixam tão claro que existe uma maneira melhor de trabalhar. Acho que é muito difícil voltar atrás depois de fazer coisas como integração contínua, como entrega contínua. Depois de experimentar isso, é realmente difícil voltar à maneira antiga de fazer as coisas”, Kim disse ao InfoWorld.

O que é um engenheiro devops?

Naturalmente, o surgimento do Devops gerou todo um novo conjunto de cargos, o mais proeminente dos quais é o genérico engenheiro devops.

De modo geral, essa função é a evolução pure do administrador de sistema — mas em um mundo onde desenvolvedores e operações trabalham em estreita colaboração para fornecer software program melhor. Essa pessoa deve ter uma combinação de habilidades de programação e administrador de sistema para que possa unir efetivamente esses dois lados da equipe.

Essa ponte entre os dois lados requer fortes habilidades sociais, mais do que técnicas. Como disse Kim, “uma das habilidades, habilidades e traços mais importantes necessários nessas rebeliões pioneiras – usando devops para derrubar a antiga e poderosa ordem, que está muito feliz em fazer as coisas da maneira que têm feito por 30 a 40 anos – são as habilidades multifuncionais para serem capazes de alcançar seus colegas de negócios e ajudar a resolver problemas”.

Essa pessoa, ou equipe de pessoas, também terá que ser um otimizador nato, com a tarefa de melhorar continuamente a velocidade e a qualidade da entrega de software program da equipe, seja por meio de melhores práticas, remoção de gargalos ou aplicação de automação para facilitar a entrega de software program.

A boa notícia é que essas habilidades são valiosas para a empresa. Os salários para este conjunto de cargos aumentaram constantemente ao longo dos anoscom 95% dos profissionais de Devops ganhando mais de US$ 75.000 por ano em salário em 2020 nos Estados Unidos. Na Europa e no Reino Unido, onde os salários são mais baixos em todos os níveis, 71% ganharam mais de 50.000 dólares por ano em 2020, contra 67% em 2019.

Principais ferramentas devops

Embora o devops seja, em sua essência, uma mudança cultural, surgiu um conjunto de ferramentas para ajudar as organizações a adotarem práticas de devops.

Essa pilha normalmente inclui infraestrutura como códigogerenciamento de configuração, colaboração, controle de versão, integração e entrega contínuas (CI/CD)ferramentas de automação de implantação, testes e monitoramento.

Aqui estão algumas das ferramentas/categorias que serão cada vez mais relevantes em 2025 e o que está mudando:

  • CI/CD e automação de entrega: ferramentas tradicionais como Jenkins permanecem em muitas pilhas, mas ferramentas de orquestração mais recentes e plataformas orientadas por CLI ou centradas em GitOps estão ganhando importância (por exemplo, ArgoCD, Flux, Tekton). Além disso, as plataformas que se integram mais estreitamente com monitoramento, gerenciamento de segredos, detecção de desvios e aplicação de políticas estão ganhando força.
  • Ferramentas de segurança, conformidade e devsecops: As ferramentas de segurança estão cada vez mais integradas aos pipelines Devops. Espere ver mais uso de análise estática (SAST), testes dinâmicos (DAST), varredura de dependência e cadeia de suprimentos (SCA), gerenciamento de segredos e política como código. O impulso é no sentido de incorporar a segurança mais cedo e preenchendo lacunas entre equipes de desenvolvimento, segurança e aprendizado de máquina. (InfoMundo:)
  • Aumento de IA e automação: As ferramentas assistidas por IA fazem cada vez mais parte das pilhas de ferramentas: sugestões automáticas em CI/CD, detecção de anomalias, escalabilidade preditiva, seleção inteligente de conjuntos de testes e muito mais. A esperança é que estas ferramentas reduzam as intervenções manuais e melhorem a fiabilidade. Ferramentas que estão “prontas para IA” – isto é, que se integram bem com a IA ou possuem automação ou assistência integrada madura – cada vez mais destacar-se do pacote.

Desafios Devops

Mesmo à medida que o Devops se torna mais amplamente adotado, ainda existem obstáculos reais que podem retardar o progresso ou limitar o impacto. Um grande desafio é a persistência lacuna de competências. Espera-se que o engenheiro (ou equipe) de devops moderno domine não apenas o controle de origem, CI/CD e scripts, mas também a arquitetura de nuvem, infraestrutura como código, melhores práticas de segurança, observabilidade e forte comunicação entre equipes. Em muitas organizações, essas capacidades são desiguais: algumas equipes se destacam, outras ficam para trás. Uma pesquisa de 2024 mostrou que embora 83% dos desenvolvedores relatem participar de atividades Devops, o uso de múltiplas ferramentas de CI/CD foi correlacionado com pior desempenho – um sinal de que a complexidade sem conhecimento profundo pode sair pela culatra.

Fragmentação e complexidade do conjunto de ferramentas é uma questão relacionada. As cadeias de ferramentas Devops surgiram em uma variedade às vezes desconcertante de pacotes e técnicas para dominar: controle de versão, construção/teste de CI, verificação de segurança, gerenciamento de artefatos, monitoramento, observabilidade, implantação, gerenciamento de segredos e muito mais.

Quanto mais ferramentas você tiver, mais difícil será integrá-las de forma limpa, gerenciar suas versões, garantir compatibilidade e evitar esforços duplicados. As organizações muitas vezes ficam presas à “expansão de ferramentas” – ferramentas escolhidas por diferentes equipes, sistemas legados ou funcionalidades sobrepostas – que introduzem atritos, carga de manutenção e, às vezes, vulnerabilidades.

Finalmente, embora o devops tenha se espalhado por toda parte, ainda há resistência cultural e alinhamento. Devops não envolve apenas ferramentas e processos; trata-se de colaboração, responsabilidade compartilhada e suggestions contínuo. Equipes enraizadas em silos tradicionais (desenvolvimento versus operações ou segurança separada) podem resistir a mudanças em funções e fluxos de trabalho. Apoio de liderança, comunicação de objetivos compartilhados, confiança e permissão para aprendizado contínuo são todos necessários.

Muitos CIOs concentre-se muito nas ferramentas ou na implementação primeiroem vez da cultura e dos comportamentos organizacionais; mas sem abordar a cultura, mesmo as melhores ferramentas ou processos podem não produzir a velocidade, a qualidade ou a fiabilidade esperadas. As organizações que têm sucesso aqui tendem a ter estratégias proativas: programas de formação dedicados, orientação, “guildas” internas, emparelhamento de engenheiros juniores e seniores e garantia de que a liderança apoia a aprendizagem contínua, em vez de bootcamps únicos.

Por que devops?

Quem quer que você pergunte lhe dirá que o devops é uma grande mudança cultural para as organizações, então por que passar por essa dor?

O Devops visa combinar os objetivos anteriormente conflitantes de desenvolvedores e administradores de sistema. De acordo com seus princípios, todo desenvolvimento de software program visa atender às demandas de negócios, adicionar funcionalidades e melhorar a usabilidade dos aplicativos, ao mesmo tempo que garante que esses aplicativos sejam estáveis, seguros e confiáveis. Feito da maneira certa, isso melhora a velocidade e a qualidade de sua produção, ao mesmo tempo que melhora a vida daqueles que trabalham nesses resultados.

O Devops economiza dinheiro – ou aumenta custos?

As equipes Devops estão reconhecendo que a velocidade e a agilidade são apenas parte do sucesso – contas de nuvem não controladas e desperdícios prejudicam a sustentabilidade a longo prazo. O desperdício em devops geralmente vem na forma de “devops dívida” – capacidade ociosa da nuvem, código morto ou alertas de segurança falso-positivos – que foi chamada de “imposto oculto sobre inovação” em estudos recentes sobre ambiente Java.

Incorporação finops práticas podem ajudar a combater esses custos. As equipes devem mudança para a esquerda no custo: estimar custos ao criar novos ambientes, redimensionar instâncias e reduzir recursos não utilizados antes que se tornem despesas excessivas.

Como começar com devops

Existem muitos recursos para ajudar a começar com devops, incluindo o próprio Kim Handbook Devopsou você pode contar com a ajuda de consultores externos. Mas você precisa ser metódico e se concentrar mais em seu pessoal do que nas ferramentas e na tecnologia que eventualmente usará. se você deseja garantir uma adesão duradoura em toda a empresa.

Um caminho comprovado para alcançar isso é uma estratégia de “aterrar e expandir”, onde um pequeno grupo começa mapeando os principais fluxos de valor e identificando uma única equipe de produto ou carga de trabalho para testar práticas de DevOps. Se esta equipe conseguir provar o valor da mudança, você provavelmente começará a despertar o interesse de outras equipes e da liderança sênior.

No entanto, se você está no início de sua jornada Devops, certifique-se de estar preparado para a interrupção que uma mudança como essa pode causar em sua organização e fique de olho no prêmio de construir um software program melhor, mais rápido e mais forte.


Mais sobre devops:

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *