A história sobre DevOps iniciou em 2008, quando Patrick Debois, servindo o papel de agilista/coordenação de projetos, apresentou uma palestra no Agile Conference 2008 sobre fomentar discussões e métodos de resolução de conflitos entre áreas de Desenvolvimento e Operações (Suporte) com intuito de aumentar a maturidade e gestão da entrega de softwares. Desde então, o assunto foi tomando popularidade e ganhando proporções globais, sendo adotado por empresas em estágios iniciais como Twitter e Netflix, a fim de agilizar a entrega de software e infraestrutura.
O que é DevOps?
DevOps nasce da abordagem ágil para a gestão de desenvolvimento de software e infraestrutura de sistemas, focado principalmente em comunicação, colaboração e integração entre áreas. Seu nome deriva da junção de Development and Operations. Embora o termo seja bem difundido no mercado, ainda há muita confusão sobre “DevOps é cargo ou cultura?”. A resposta correta é: CULTURA, mas, assim como tweetar, xerocar e googlar viraram verbos, DevOps também virou descritivo para posições de cargos em empresas de tecnologia, e está tudo bem! Desde que no final do dia todos os passos desse framework sejam implementados, o mundo dos negócios agradece!
O que é Cultura DevOps?
É um termo que passou a ser utilizado a partir de 2008, creditado a Jez Humble, um dos co-autores do livro “O Manual DevOps”. A cultura DevOps é a espinha dorsal para implantar essa metodologia. Diferente dos métodos tradicionais, onde as equipes muitas vezes trabalham em silos, a cultura DevOps promove um ambiente colaborativo entre diferentes áreas.
Quando criada, a ideia principal era direcionar e preencher lacunas entre o setor de desenvolvimento e operações, tentando criar um “caminho-do-meio” a fim de racionalizar e aproximar áreas tão distintas para atingirem o objetivo em comum. Foi justamente dentro desse contexto que nasceu o CALMS, que é o acrônimo para Culture (Cultura), Automation (Automação), LeanIT (Metodologia Lean), Measurement (Mensuração) e Sharing (Compartilhamento).
Implementando na prática
Talvez não seja coincidência que o framework começar pela Cultura, principalmente evidenciando que DevOps é sobre cultura e não uma posição, e sendo provavelmente a parte mais importante parte da implementação dentro de uma empresa. A cultura passa por questões pessoais, como as áreas se organizam e se relacionam e quais canais que elas usam para se comunicar. Não haverá sucesso na implementação se não houver uma mudança de pensamento e modelo de trabalho das pessoas, por isso temos algumas etapas primordiais nesse pilar:
- Foco em pessoas e como elas pensam
- Liderança forte e sempre mentoreando pessoas
- Adesão da cultura por fases e não de forma radical
- Responsabilidades e conquistas partilhada entre equipes
- Adesão da cultura livre de culpas e que adota o erro como uma forma de aprendizado.
Automação é ,de fato, um ponto fundamental da implantação. O foco nessa questão é automatizar e documentar o máximo de processos existentes dentro de um time, por exemplo:
- O time executa deploy manual e leva 10 minutos para concluir o processo
- O time de teste necessita parar por 2 horas por dia para gerar massa de dados para os testes
- Toda sexta-feira, o arquiteto faz uma cópia manual do ambiente de produção
Atividades como essas são comuns no dia a dia de uma empresa, e o papel da cultura DevOps é tornar o ambiente de todos mais produtivo, reduzindo a quantidade de atividades que tomem muito tempo e sem valor criativo.
Desenhar processos com eficiência, analisar, identificar, coletar feedback de clientes internos e externos e propor melhorias são os pontos principais do pilar de LeanIT. Lembre-se sempre que as pessoas ou times envolvidos nesse processo deverão coletar benefícios de todo o processo.
A única forma de entender se há benefícios ou malefícios em qualquer implementação seria o uso de técnicas de Medição/Mensuração. Coletar métricas permite que a organização entenda realmente o cenário dos seus sistemas, a qualidade de suas releases, performance da aplicação e direcione as tomadas de decisões para serem sempre baseadas em dados e nunca em opinião. Alguns exemplos de medição que podemos tomar por base, são:
- Medir performance de aplicações, como queries de banco de dados, requests em servidor
- Uso de métricas MTTx para entender o quão estável é uma release
- Análise de performance de servidores
Por último, toda estrutura da empresa deve comportar o Compartilhamento de todo conhecimento, documentação e aprendizados que as áreas tem. Nenhuma informação deverá estar centralizada em pessoas e nenhum processo deverá depender diretamente de alguém. Os gestores da organização deverão em conjunto fomentar um ambiente de troca de conhecimento, integração entre áreas, feedback constante e transparência.
Acelere sua Carreira Conosco
A Mentoria DevOps é um programa de mentoria de 12 meses com encontros semanais ao vivo, com um grupo seleto e restrito, onde estaremos do seu lado para mantê-lo relevante e atualizado no mercado de tecnologia, aprendendo e implementando as melhores práticas e ferramentas de DevOps.
Clique aqui para entrar na prioridade pela melhor oferta de lançamento
Para adotar DevOps, é crucial começar pequeno e expandir gradualmente. Iniciar com projetos piloto que utilizam práticas de DevOps pode ajudar a demonstrar seu valor sem comprometer a empresa. Importante também é a formação e o desenvolvimento de todas as equipes envolvidas, para garantir que entendam e possam implementar adequadamente os princípios dessa cultura.