SRE (Site Reliability Engineer) e a importância no DevOps

É a 3ª melhor prática dentro das áreas do DevOps. Inclui disponibilidade, performance, segurança e todos outros fatores que permitem entregar capacidade aos usuários. O SRE (Site Reliability Engineer) foi um termo popularizado pelo Google com esta abordagem. O Google possui times de suporte a seus serviços até atingirem um certo nível de tráfego e maturidade.

SREFonte: IBM

Reliability
É a habilidade de um sistema ou componente funcionar sob condições inadequadas por um período de tempo.

APM (Application Performance Management)
As ferramentas APM analisam toda a arquitetura da aplicação de forma leve. Contribui na análise por períodos, métricas e identificação de gargalos e lentidões.

Feedback loops do ambiente de produção ao time de desenvolvimento. As 6 áreas recomendadas para monitoramento:

SRE-book 1. Service performance e uptime
2. Métricas dos componentes da aplicação
3. Métricas de sistema
4. App metrics
5. Performance
6. Segurança

SRE Operate for design: Logging
Os logs são grandes ferramentas de monitoramento e contribuem para o ciclo de feedback. Alguns bons princípios de Log:

  1. Não coletar dados que você nunca planeja utilizar
  2. Mantenha os dados pelo tempo suficiente para uso
  3. Log tudo que você puder, mas alerte somente o que necessita de ação
  4. Não tente fazer o seu Log mais disponível (ou mais seguro) que seu stack de produção (Lean approach – log deve atender a necessidade do negócio, não excedê-la)
  5. Logs change

Ferramentas: Pingdom, Datadog, Netuitive, New Relic, Librato, AppDynamics, Ruxit, etc.5-w-SRE

Os benefícios do DevOps

Em sua Jornada DevOps, certamente haverá muitos questionamentos sobre os benefícios do DevOps em sua organização. Já abordamos as mudanças na cultura da empresa, os três pilares (pessoas – processos – ferramentas), a estratégia de implementação e a visão 360 para gerar visibilidade de todas as áreas de conhecimento.

E quais são os motivos para adotar práticas DevOps? As empresas buscam maior eficiência nos resultados de TI e de negócio. O Report Puppet Labs indica que times utilizando práticas DevOps:

  • Aumentaram a frequência dos deploys em 30 x
  • Com lead time reduzido em 200 x
  • Qualidade: redução em 60 x de falhas
  • Recuperação de problemas 168 x mais rápido

* Pesquisa considerou empresas de diferentes tamanhos e segmentos

state-of-report-devops

Por que as empresas investem em DevOps? Esta pesquisa da CA Technologies traz alguns estudos de caso, demonstrando os desafios, resultados e as principais razões das empresas investirem em DevOps. Vale a pena ler na integra.

companies-devopsFonte: https://www.techvalidate.com/product-research/ca-devops/case-studies

O livro The Phoenix Project compartilha os principais benefícios de empresas que praticam Continuous Deployment (Implementação Contínua). Veja que empresas High IT performers possuem uma enorme de capacidade de implementação, obtendo assim os benefícios mencionados no quadro à esquerda.

CI-benefits

Percebe-se então que os benefícios do DevOps são quantitativos e qualitativos. Sugiro fortemente manter estes benefícios claros e compartilhados na organização para apoiar a implementação das práticas DevOps e justificar o direcionamento de tempo e custo nesta área. Por fim, um resumo que gostaria de compartilhar sobre todos os benefícios:

  • Velocidade: entrega contínua de novas  funcionalidades (time-tomarket) e resolução rápida de problemas
  • Confiabilidade: baixa taxa de falhas; monitoramento e log das implementações
  • Escalabilidade: a automação de processos e a infra as code possibilitam escalar as aplicações conforme demanda
  • Melhoria na qualidade do código-fonte: não permite subir código ruim para produção
  • Redução de Lead time
  • Mais tempo para inovação (ao invés de corrigir e manutenção)
  • Ambientes operacionais estáveis
  • Integração entre as áreas de desenvolvimento e infra

Adotando o DevOps e CALMS

Já falamos em posts anteriores sobre a Jornada DevOps, os conceitos iniciais e a Cultura DevOps na organização. Dando continuidade a parte teórica, o acrônimo CALMSCulture, Automation, Lean, Measurement and Sharing, criado por Jez Humble, é um framework comumente utilizado para análise da estrutura organizacional e prontidão da organização para adoção de DevOps..

O framework engloba todos os stakeholders em DevOps, incluindo os responsáveis de produto, operações de TI, QA e equipes de desenvolvimento. Também apoia os gestores a avaliarem se a empresa está pronta para o DevOps, e se não, o que precisa ser o que precisa ser mudado.

Algumas leituras associam o CALMS como alternativa ao ITSM (Information Technology Service Management), abordagem estratégica para os processos de TI, mais relacionada ao ITIL, e considerada por alguns muito rígido e incompatível com DevOps. O CALMS vem como uma forma de tratar as diferenças entre as duas abordagens.

Os cinco pilares do CALMS para o DevOps são:

CULTURA
A cultura da responsabilidade compartilhada e colaboração. Começar mudando as pessoas, adequando o mindset para ter foco em objetivos comuns e colaborar independentemente da área de especialização.

responsabilidade-compartilhada

AUTOMATION
O ideal é automatizar tudo que for possível. O trabalho manual cria processos repetitivos e não confiáveis.

automated-devops

LEAN
Relacionado a melhoria no desempenho dos processos da empresa, eliminando desperdícios. O foco é no valor, redução de custos e no cliente.

  • Foco no valor e no cliente
  • Eliminar desperdício
  • Entregas menores e contínuas
  • Aumentar a aprendizagem

Lean-casa

MEASUREMENT
O monitoramento das aplicações e de infra podem eliminar o finger-pointing. As métricas são fundamentais para direcionar as equipes. Entre as principais estão: Throughput (capacidade de vazão do time) com indicadores de frequência de deployment e lead timeStability (estabilidade destas implementações) com MTTR e taxa de falha em mudanças.

  • Medir tudo que for possível
  • Apresentar melhorias
  • Monitoração e controle

Continuous Delivery (livro de Jez Humble e David Farley): “Feedback is at the heart of any software delivery process. The best way to improve feedback is to make the feedback cycles short and the results visible. Measure what really matters… Once you know the cycle time for your application, you can work out how best to reduce it. You can use the Theory of Constraints to do this“.

SHARING
Compartilhar é essencial para melhorar o fluxo de comunicação e o trabalho em equipe. O feedback loop deve ser estabelecido em todos os estágios de fluxo de valor.

  • Compartilhar
  • Colaborar
  • Transparência
  • Feedback

feedback-loop

Aprendizagem contínua, cultura livre de culpa e Blameless Postmortems

A aprendizagem contínua e a cultura livre de culpa são dois aspectos culturais que as organizações devem compreender melhor na adoção do DevOps. E como fazer acontecer? Como construir respeito e confiança, eliminando a culpa e hostilidade? Para que as pessoas sintam-se confortáveis para trabalhar juntas.

Trust Blockers:

  • Falta de contexto
  • Objetivos conflitantes

responsabilidade-compartilhada

As organizações precisam evoluir com o auto diagnóstico e aperfeiçoamento. E assim, falhas ou problemas significa resolver e compartilhar os efeitos, tornando a resolução disponível para todos na empresa. Este sistema dinâmico nos permite assumir e aprender com os erros para evitar recorrências.

“Quando as respostas a incidentes e acidentes são consideradas injustas (buscando culpados), isso pode impedir investigações de segurança, causando medo, tornando as organizações mais burocráticas ao invés de mais cuidadosas, e criando segredos e autoproteção”.

Blameless Postmortens
É uma reunião que acontece (se possível) em até 48 horas após o incidente, visando identificar as falhas no processo para corrigi-las. Deixe um terceiro para executá-la. Blameless é não culpar as pessoas pessoas pelas falhas, sabendo das responsabilidades inerentes da função.

Algumas recomendações para a comunicação Postmortem:

  1. Admita a falha
  2. Soa como humano
  3. Tenha um canal de comunicação
  4. Seja autêntico

E um roteiro recomendado para a reunião é o seguinte:

  1. A descrição do incidente
  2. A causa raiz
  3. Como o incidente foi estabilizado ou corrigido
  4. Um timeline dos eventos, incluindo todas as ações realizadas
  5. Como o incidente afetou os usuários
  6. Remediações e ações corretivas

As técnicas do 5 Porquês (5 Whys) e o Diagrama de Ishikawa ajudam na análise da causa raiz e efeito dos problemas.

5-porques5 Porquês

fishbone-tiDiagrama de Ishikawa

Resumo do livro Hit Refresh – Satya Nadella

Aperte o F5: A transformação da Microsoft e a busca de um futuro melhor para todos

Acabei de ler o livro Hit Refresh do Satya Nadella, atual CEO da Microsoft e recomendo a leitura, pois é uma ótima oportunidade para conhecer um pouco mais sobre a empresa, as decisões e mudanças ocorridas desde que ele substituiu Steve Ballmer em 2014. Nadella é indiano, trabalha na Microsoft desde 1992 e revela no livro sua paixão pelo críquete.

“Este é um livro sobre transformação, uma transformação que está se desenrolando dentro de mim e dentro da nossa empresa, impulsionada pela empatia e pelo desejo de empoderar as pessoas”, escreve Nadella. “Mas, ainda mais importante, é uma transformação que ocorrerá na vida de todos, à medida que vivemos a onda de tecnologia mais transformadora da história da humanidade”.

O livro está dividido em três momentos:

  1. Descreve a infância na Índia, suas lembranças pessoais, a mudança para a América  e sua carreira e ascensão na Microsoft.
  2. O início da transformação sem precedentes da Microsoft, da cultura ao cenário altamente competitivo e às parcerias do setor.
  3. O futuro além da Microsoft, chamada de a próxima onda de tecnologia e seus impactos na sociedade.

satya-nadella.jpg

Ao assumir como CEO da Microsoft, a empresa passava por dois grandes desafios: de um lado, a disputa pelo poder e a inovação que perdia espaço para a burocracia; de outro lado, o mercado de computadores que vinha perdendo espaço para os smartphones. Nadella revela posteriormente a ambiguidade na relação das empresas, por serem rivais e parceiras em negócios diferentes.

Com uma visão inovadora, Nadella vem produzindo mudanças significativas na Microsoft. As prioridades iniciais foram Cloud mobilidade, mantendo as pessoas constantemente conectadas de qualquer lugar. O Windows seguiu a mesma direção, mudando de um sistema operacional tradicional para um tipo de serviço. A empresa não podia mais estar associada apenas ao Windows.

microsoft-mobile-first-cloud-first

O livro compartilha projetos importantes e os executivos que trabalharam neles, destacando as negociações bilionárias para a aquisição das empresas Nokia e Linkedin. Algumas frases são marcantes em sua gestão, tais como “conectar a empresa com a missão de empoderar pessoas”, “criar uma cultura de crescimento”,  e “redescobrir a alma da Microsoft”.

Em alguns trechos, Nadella comenta sobre a privacidade de dados de usuários e defende a criação de leis para controlar solicitações a este tipo de informação. Também coloca o impacto positivo que a tecnologia podem gerar as pessoas, em especial as com limitações físicas.

Algumas reflexões do CEO que fizeram a diferença:

  • É impossível ser um líder empático sentado em atrás de uma tela de computador o tempo todo. Um líder empático deve estar no mundo, conhecer as pessoas onde vivem e ver como a tecnologia que criamos afeta suas atividades diárias.

  • Em um mundo onde a inovação é contínua e rápida, ninguém tem tempo a perder em ciclos desnecessários de trabalho e esforço. Ser direto com o outro é a melhor maneira de alcançar um acordo satisfatório da forma mais rápida possível.
  • Afinal, nossos produtos podem ir e vir, mas nossos valores são atemporais.
  • É insuficiente focar-se exclusivamente em si. Os líderes precisam inspirar otimismo, criatividade, compromisso compartilhado e crescimento em tempos bons e ruins. Eles criam um ambiente onde todos podem fazer seu melhor trabalho.
  • A liderança pode ser um negócio solitário ou um lugar ruidoso. Quando um líder entra na arena, especialmente na barulhenta câmara das mídias sociais, ele ou ela pode se sentir tentado a tomar decisões que resultam em uma gratificação instantânea. Mas é preciso olhar além do temporal, dando um desconto ao que alguém escreve em um tweet ou nas notícias de amanhã. O julgamento fundamentado e a convicção interior são o que espero de mim e dos líderes que me rodeiam.

Além da Microsoft, Nadella também compartilha a visão do futuro, inovação e o renascimento de uma sociedade estratificada. E como devemos ser impactados em breve  na forma como nos relacionamos entre as pessoas e empresas pela inteligência artificial, realidade mista e computação quântica.

microsoft-iot-investment