Close

O caminho para um gerenciamento de incidentes melhor começa aqui

O guia para gerentes melhorarem o plantão

Assim como salas de emergência exigem cronogramas de plantão para que os médicos lidem com emergências de saúde, as equipes de DevOps precisam deles para responder com eficiência a problemas de software e sistema que afetam o desempenho, a implementação e a disponibilidade.

Mas desenvolver uma prática de plantão é mais fácil na teoria do que na prática. Estar de plantão pode ser uma experiência assustadora e disruptiva para os funcionários. Encontrar o equilíbrio certo entre cobertura, escalabilidade e qualidade de vida para a equipe é um desafio contínuo.

À medida que as práticas recomendadas mudam e as empresas crescem, as equipes mais ágeis e de alta velocidade implementam e obtêm êxito com abordagens novas.

Você cria, você gerencia

Há pouco mais de dez anos, responder a incidentes de TI foi o principal trabalho das equipes de operações. Em geral, as empresas tinham uma estrutura de equipe hierárquica (ou seja, Nível 1, Nível 2, Nível 3, com níveis de habilidade mais altos e níveis de pagamento nos níveis mais altos).

O objetivo da adoção dessa estrutura era reduzir o custo das operações. Em geral, o Nível 1 envolvia funcionários de nível básico. Se o Nível 1 não pudesse resolver um item, este seria escalonado para o Nível 2, o qual era composto por funcionários mais seniores e, portanto, mais caros. E esse processo continuava até que o item fosse resolvido.

Mas, com o aumento de serviços sempre disponíveis, as interdependências entre sistemas e expectativas do cliente quanto à disponibilidade também aumentaram. Hoje em dia, uma resposta lenta pode custar mais à empresa — em reputação, satisfação do cliente e perda de receita — do que envolver desenvolvedores de nível sênior em incidentes com mais antecedência.

O resultado desse cenário tecnológico em mudança é que a estrutura das equipes de resposta precisava mudar. Entra em cena o movimento de DevOps e o conceito de "você cria, você gerencia".

A ideia aqui é simples: o desenvolvedor que está mais familiarizado com o código é a melhor pessoa para solucionar itens relacionados no menor tempo. Graças ao DevOps, essa lógica é a razão de agora ser comum que os desenvolvedores estejam de plantão, garantindo que o código rode bem e diminuindo o MTTA e MTTR de incidentes.

O benefício adicional dessa abordagem é um teste mais rigoroso antes da implementação. Agora que o desenvolvedor responsável pelo código poderia ser alertado fora do horário, há uma sensação de responsabilidade mais profunda, um incentivo adicional para verificar o código duas ou três vezes. Mais e mais empresas estão descobrindo que o resultado é sistemas mais confiáveis e resilientes.

Como construir uma prática de plantão que as equipes vão amar

O plantão tem uma má reputação e às vezes com uma boa razão. Programas de plantão desequilibrados podem ter um efeito negativo no equilíbrio entre vida profissional, saúde e sono. Funcionários com experiências negativas de plantão ou sem experiência de plantão talvez imaginem a vida social e o equilíbrio entre vida profissional e social evaporando diante dos olhos.

Mas a verdade é que o plantão não precisa ser uma marcha sombria para uma qualidade de vida baixa. Ao equilibrar as tarefas de plantão, levar em conta as preferências da equipe e implementar sistemas robustos para prevenir e reduzir incidentes e alertas de plantão sempre que possível, é possível criar uma prática que minimize e compartilhe o fardo entre as equipes.

Para que a gestão seja bem-sucedida, ela precisa ser transparente com as equipes logo de início, oferecendo treinamentos, estabelecendo expectativas justas para tarefas de plantão e de desenvolvimento, elaborando processos robustos e verificando com frequência e fazendo melhorias com perspectivas e adesão das equipes.

Como ser transparente com as equipes

A transparência é a chave para uma comunicação bem-sucedida. Esclarecer as expectativas em relação à disponibilidade é essencial ao implantar um sistema de plantão ou uma alteração em um sistema de plantão existente. Pense e responda com clareza a perguntas comuns dos funcionários, como:

  • Os engenheiros vão estar de plantão durante a noite?
  • Se estiver de plantão durante a noite, há flexibilidade para trabalhar em casa no dia seguinte? Um funcionário de plantão pode começar mais tarde no dia seguinte se precisar dormir?
  • Os desenvolvedores são responsáveis por fazer o trabalho de desenvolvimento durante o horário de plantão?
  • Quantas vezes por mês um desenvolvedor vai estar de plantão? Qual é o número máximo de vezes que uma única pessoa estaria de plantão?
  • Como você vai compensar os funcionários de plantão?

Como oferecer treinamento adequado

As melhores práticas para treinamento de equipes de plantão incluem:

  • Desenvolver um programa de treinamento que aborda problemas comuns e de processo
  • Disponibilizar runbooks atualizados
  • Ter novos funcionários na sombra de engenheiros de plantão experientes
  • Dar aos funcionários acesso a relatórios de incidentes anteriores para que eles possam ver como incidentes passados semelhantes aos que estão lidando foram resolvidos com sucesso

Também é uma boa ideia ter vários canais de escalonamento. A prática recomendada típica é ter engenheiros juniores na rotação primária de plantão e programar engenheiros seniores como backup ou rotação secundária. Assim, os engenheiros juniores podem desenvolver as habilidades de plantão necessárias, evitando o pânico quando há um item além de sua experiência.

Mantenha as tarefas de plantão e de desenvolvimento separadas

Em geral, ter tarefas de desenvolvimento durante o plantão acarreta muita mudança de contexto e interrupções, em especial para empresas com incidentes frequentes e requisitos de plantão.

Muitas vezes, o resultado é menos eficiência de desenvolvimento e mais estresse para os engenheiros de plantão, o que pode levar ao esgotamento, fadiga de alertas e insatisfação no trabalho. Também pode ter um efeito negativo nos sprints de desenvolvimento, uma vez que é difícil estimar o quanto um funcionário de plantão pode e vai contribuir para qualquer sprint.

É por essa razão que, como prática recomendada, a gente sugere manter as tarefas de plantão e de desenvolvimento separadas. Quando os funcionários de plantão tiverem tempo livre, eles podem trabalhar para melhorar a documentação e a automação relacionadas ao plantão para, por fim, melhorar a sustentabilidade de sistemas e serviços.

Ajuste o processo de plantão

Um sistema de plantão saudável só pode existir se for aprimorado com frequência por processos e sistemas de ajuste fino. Para esse objetivo, recomendamos:

  • Avaliar a prioridade de alerta e urgência e configuração de sistemas com base nisso. Alertas de baixa urgência podem esperar até a manhã, permitindo que os funcionários de plantão tenham um sono muito necessário.
  • Reduzir falsos positivos classificando alertas com base em fatores como causa raiz, sistema de origem, mensagem, limites etc. Assim, você pode diferenciar alertas acionáveis do resto.
  • Eliminação de duplicação de alertas relacionados para evitar fadiga de alertas.
  • Projetar alertas avançados que descrevem com clareza um item e capacitam os engenheiros de plantão a tomar decisões eficazes e aplicar o conhecimento registrado em runbooks.
  • Disponibilizar relatórios e métricas de alerta para equipes de plantão para que áreas fracas nos sistemas possam ser identificadas e aprimoradas. (Em outras palavras: não deixe as equipes de plantão ficarem atoladas com os mesmos problemas repetidas vezes.)

Revise relatórios de plantão e ajuste conforme necessário

Para manter as coisas justas e evitar o esgotamento dos funcionários, os gerentes devem analisar os relatórios relacionados à chamada para ver:

  • Com que frequência cada membro da equipe é paginado ou acordado
  • Há quanto tempo cada membro da equipe está de plantão
  • As distribuições por hora e diárias do serviço de plantão para cada pessoa
  • Ajuste as programações conforme necessário para fazer uma distribuição justa do trabalho.

Ouça os funcionários

A gestão deve organizar reuniões frequentes com os engenheiros de plantão para discutir problemas, reclamações e áreas de fraquezas e tomar medidas para resolver os itens.

Sistemas de plantão, ferramentas, processos, pessoas, documentação e treinamento não são itens estáticos que você configura e esquece. À medida que a empresa cresce, as equipes aprendem e mudam e os incidentes mudam ao longo do tempo. A gestão deve sempre reavaliar e melhorar os programas de plantão.

As pessoas mais bem capacitadas para falar o que está e não está funcionando são os engenheiros de plantão. Ouça o que eles têm a dizer. Implemente alterações. E, o mais importante, observe se a gestão não é o único tomador de decisões quando se trata de organização e protocolo de plantão. Quanto mais você capacitar as equipes para melhorar os próprios processos e práticas, mais elas vão se acostumar ao plantão.

Como criar uma cultura de plantão amigável

Os engenheiros de plantão têm uma enorme responsabilidade pelo sucesso das empresas. Portanto, não é surpresa que o estresse e a tensão sejam problemas comuns, em especial durante itens graves com causas desconhecidas.

A cultura de plantão definida por engenheiros seniores de plantão e equipes de gerenciamento define como as pessoas lidam com esse estresse e tensão e como elas se sentem sobre estar de plantão.

Tanto para o bem dos engenheiros de plantão quanto para a cultura de plantão da empresa, as equipes de gestão devem prestar atenção ao desenvolvimento de uma cultura de plantão e deixar claro que o objetivo deve ser sempre encontrar os problemas, riscos e fraquezas nos sistemas e achar uma solução para eles.

Na Atlassian, é importante não apenas implementar melhorias contínuas nos sistemas de plantão, mas também realizar análises retrospectivas sem apontar culpados onde o foco está na melhoria e não em encontrar alguém para culpar.

a seguir
IT alerting