Explore a cultura do DevOps

Concluído

A cultura é uma base essencial para o DevOps porque requer uma mentalidade de crescimento e aprendizagem contínua para ter sucesso. O apoio à liderança é um dos elementos críticos para o seu sucesso.

Antes de discutirmos como é a cultura de DevOps, vamos considerar o papel da cultura na capacidade de uma organização de adotar DevOps. De acordo com o Gartner:

A resistência cultural e os baixos níveis de disciplina do processo criarão taxas de falha significativas para as iniciativas de DevOps.

Gene Kim, autor do Phoenix Project e do DevOps Handbook, diz:

DevOps é uma jornada cheia de desafios, e raramente esses desafios são simplesmente por causa da tecnologia errada ou dos processos errados. De facto, os maiores e mais difíceis obstáculos tendem a ser culturais. E, se você errar na cultura, mesmo que acerte tudo o resto, estará caminhando para a frustração, custo extra e provável fracasso.

O que é cultura?

Para os nossos propósitos, a cultura é o património social de um grupo. É um padrão de respostas descoberto, desenvolvido ou inventado durante a história do grupo de lidar com problemas que surgem das interações entre seus membros e entre eles e seu ambiente.

A cultura determina:

  • O que é aceitável ou inaceitável.
  • O que é importante ou não importante.
  • O que é certo ou errado.
  • O que é viável ou inexequível.
  • Quem você contrata, demite e promove.

Por que as iniciativas de DevOps falham?

Uma pesquisa do Gartner mostra que, até 2023, 90% das iniciativas de DevOps falharão devido às limitações das abordagens de gerenciamento usadas pela liderança.

Importante

A principal responsabilidade da liderança é a criação de um ambiente que permita uma cultura de DevOps bem-sucedida.

As pessoas que trabalham em empreendimentos criativos não precisam de "cerveja na sala de intervalo" para motivá-las. Em vez disso, as pessoas criativas precisam de domínio, autonomia e propósito.

Quando as pessoas perguntaram qual é a parte mais importante do sucesso da Microsoft – é visão, estratégia ou execução? – O CEO da Microsoft, Satya Nadella, disse que todos eles são importantes, mas, no final, foi seu propósito e mentalidade de crescimento.

Os 12 exemplos de uma mentalidade de DevOps

Aqui estão 12 exemplos de uma mentalidade de DevOps: mentalidade de liderança, foco no cliente, pensamento lean, pensamento sistêmico, remoção de desperdícios, teoria das restrições, alinhamento e autonomia, testes à esquerda, mentalidade de segurança, desenvolvimento orientado por hipóteses, live-site e medir resultados, não mentalidade de atividade.

Mentalidade de liderança

A Gartner faz as seguintes recomendações:

  • Identificar líderes transformacionais priorizando características comportamentais específicas necessárias para liderar uma iniciativa de DevOps, dando menos ênfase aos conjuntos de habilidades técnicas.
  • Desenvolver líderes transformacionais, abraçando o fracasso como uma oportunidade de aprendizagem.
  • Gerencie líderes transformacionais, capacitando-os a tomar decisões livres de adivinhações e fornecendo metas claras e métricas-chave.

Como o DevOps é transformador, os líderes de Infraestrutura & Operações (I&O) devem identificar candidatos que sejam visionários, adaptativos, motivadores, capacitadores e responsáveis.

Mentalidade focada no cliente

O que significa ser focada no cliente?

  • Ouvir e comunicar com os nossos clientes
  • Meça o que é importante
  • Abrace o vermelho na Produção
  • Construa, meça e aprenda
  • Use a alternância de recursos para uma implantação normal
  • Recolha dados de forma ampla, mas cuidadosa

Mentalidade de pensamento enxuto

Valor: A mentalidade de pensamento enxuto começa com uma compreensão detalhada do valor que o cliente atribui aos produtos e serviços. A organização se concentra na eliminação de desperdícios para que possam entregar o valor que o cliente espera no mais alto nível de rentabilidade.

O fluxo de valor engloba todo o ciclo de vida do produto, desde as matérias-primas, passando pelo uso do cliente e eventual descarte do produto. Para eliminar o desperdício, o objetivo final do Lean, deve haver uma compreensão precisa e completa do fluxo de valor.

Fluxo: Entender o fluxo é essencial para eliminar o desperdício. Se o fluxo de valor parar de avançar em qualquer ponto, o desperdício é o subproduto inevitável. O princípio de fluxo de manufatura enxuta é sobre a criação de uma cadeia de valor sem interrupção no processo de produção e onde cada atividade está em sintonia com a outra.

Puxar: O princípio lean de puxar ajuda a garantir o fluxo, assegurando que nada seja produzido antecipadamente, evitando assim a acumulação de inventário em processo e interrompendo o fluxo sincronizado. Em vez de usar a abordagem tradicional de fabricação americana de empurrar o trabalho com base em uma previsão e cronograma, a abordagem pull dita que nada é feito até que o cliente o encomende.

Perfeição: Os profissionais Lean se esforçam para alcançar a perfeição. A marcha em direção ao processo perfeito acontece à medida que as melhorias contínuas abordam as causas profundas dos problemas de qualidade e desperdício de produção. A busca incessante pela perfeição é o que leva os usuários da abordagem a cavar mais fundo, medir mais e mudar com mais frequência do que seus concorrentes.

Mentalidade sistémica

Uma mentalidade de pensamento sistêmico enfatiza o desempenho de todo o sistema, não o desempenho de um silo específico de trabalho ou departamento.

Concentre-se em todos os fluxos de valor de negócios habilitados pela TI. Em outras palavras, ele começa quando os requisitos são identificados pela empresa ou TI, incorporados em Desenvolvimento e, em seguida, transferidos para Operações de TI, onde o valor é entregue ao cliente como um serviço.

Eliminar a mentalidade de desperdício

Uma mentalidade enxuta concentra-se em identificar e remover os sete tipos de desperdício que não acrescentam valor ao cliente:

  • Trabalho Parcialmente Realizado
  • Processo Extra
  • Funcionalidades Extra
  • Alternância de tarefas
  • À espera
  • Movimento
  • Defeitos

Teoria do pensamento das restrições

A teoria das restrições é uma metodologia para identificar e remover restrições (também referidas como gargalos) que limitam a taxa de transferência. Na prática, comece por identificar o fator mais importante que impede a consecução de um objetivo. Trabalhe para minimizar esse fator até que não seja mais um fator limitante.

Diagrama retrata a Teoria das restrições: identificar a restrição, explorá-la, subordinar ou sincronizar com ela, elevar o desempenho da restrição, repetir o processo

Equilibrar mentalidades de alinhamento e autonomia

É necessário alcançar um equilíbrio entre alinhamento e autonomia. O excesso de alinhamento leva a menos inovação, menos motivação e menos colaboração. O excesso de autonomia leva a mais caos, confusão e conflito, ao mesmo tempo que leva a menos consistência.

O diagrama explica a autonomia alinhada: se você alinhar a organização, os papéis, as equipes, a cadência e a arquitetura, os planos e as práticas podem funcionar de forma autônoma.

Mentalidade de teste de mudança para a esquerda

Shift-left testing é uma abordagem usada para acelerar o teste de software e facilitar o desenvolvimento, movendo o processo de teste para um ponto anterior no início do ciclo de desenvolvimento. Deslocar para a esquerda é uma referência a mover o teste para a esquerda em uma linha do tempo. Ele ajuda a construir a qualidade e identificar problemas mais cedo para reduzir o desperdício de retrabalho.

O teste shift-left foi projetado para ser um modelo melhor para o desenvolvimento rápido, porque os modelos de teste tradicionais que esperam até mais tarde no ciclo de desenvolvimento podem afunilar o desenvolvimento.

Mentalidade de segurança

Para alcançar uma mentalidade de segurança , as equipes precisam:

  • Promover a consciencialização.
  • Definir os seus princípios.
  • Viver de acordo com os seus princípios.

Mentalidade de desenvolvimento orientada por hipóteses

Usar uma abordagem de Produto Enxuto para desenvolver em ciclos mais curtos e usar de desenvolvimento orientado por hipóteses ajuda a criar pequenos experimentos para obter feedback de nossos clientes e decisões baseadas em dados.

A abordagem de desenvolvimento orientada por hipóteses:

  • Parte de uma suposição – algo aceito como verdadeiro sem prova
  • Articula o pressuposto a ser testado
  • Realiza experimentação e testes
  • Examina evidências – um indicador do resultado

Mentalidade de site ao vivo

Para uma equipe de DevOps, não há lugar como a produção. Tudo o que fazem tem a ver com melhorar a experiência dos clientes.

Para criar um site estável e de alto desempenho, aplique as práticas recomendadas de Operações Contínuas de forma disciplinada e contínua para manter o site íntegro.

Os principais fatores de nossa cultura ao vivo incluem:

  • Detete antes que os clientes sintam a dor
  • Conduza com dados
  • A causa raiz é a chave
  • Configurar como código
  • Automatize para sobreviver
  • Seja aberto e aprenda

Meça o resultado, não a mentalidade de atividade

A maneira como você mede as pessoas vai liderar como as pessoas se comportam. Você deve medir o uso, a velocidade e a integridade do site ao vivo, não linhas de código, burndown da equipe e número de bugs encontrados.

Sugestão

Tenha cuidado com a sua medição para levar a um resultado ideal!