O que é DevOps?
Lá no ensino médio (quando nem ouvíamos falar em DevOps), aprendemos sobre a revolução industrial, o fordismo e diversas lógicas industriais. Nossos professores nos mostraram como o mundo era diferente, pois a demanda por manufaturados era gigantesca. Nesse universo, era muito importante ter uma linha de produção na qual os funcionários faziam trabalhos repetitivos para produzir produtos iguais e em larga escala,
Essa mesma ideia foi trazida para o universo de desenvolvimento com o modelo em cascata. Nele, uma rotina engessada era seguida: busca de requisitos, concepção do projeto, implementação da ferramenta, testes iniciais, implantação na empresa e manutenção com ajustes finos. E aqui, a maior dificuldade não era nem o engessamento, mas, sim, os constantes problemas.
Podemos citar o avanço da tecnologia e a falta de conhecimento da necessidade como as principais questões. A primeira delas porque a evolução tecnológica é muito rápida, logo, é preciso fazer constantes alterações no projeto (o que pode irritar muitos gestores, colaboradores e clientes).
Enquanto isso, não conhecer a necessidade impacta negativamente, pois, muitas vezes, o cliente não sabe qual é a sua real dor. Nesses casos, o projeto precisa ser alterado diversas vezes até que o usuário final esteja plenamente satisfeito com o resultado.
Mas como acabar com todos esses problemas advindos de métodos antiquados? Simples: com metodologias ágeis que trazem novas práticas e ferramentas para reorganizar a rotina empresarial. O DevOps é uma evolução dessas metodologias e é exatamente sobre ele que iremos falar neste artigo para que você possa otimizar os seus processos e os dos seus clientes!
O que é o DevOps?
Normalmente, os setores de desenvolvimento e de operações precisam trabalhar em conjunto, mas nem sempre se dão muito bem. Embora ambos façam parte da área de TI, eles são "pássaros que não se bicam" - digamos assim -, por ter culturas de trabalho muito diferentes.
Isso porque, numa equipe de TI tradicional, basicamente, o time de desenvolvimento precisa criar soluções criativas, sempre pensando em novas funcionalidades para as aplicações. Enquanto isso, o operacional é mais focado na resolução de problemas e na manutenção do pleno funcionamento das plataformas.
Nesse cenário, o DevOps aparece como uma solução para que os dois setores que se sentem tão opostos consigam trabalhar em conjunto, gerando bons frutos ao negócio. Afinal, a partir dele, as noções de comunicação, direitos e deveres são completamente modificadas, o que faz com que o processo seja facilitado e otimizado para ambos os lados.
Qual é a importância do DevOps?
A principal importância do DevOps recai, justamente, sobre o que vimos. Com ele, os dois setores deixam de atuar como equipes separadas para pensar como colaboradores em conjunto. Agora, desenvolvedores e operadores podem entender a importância do outro lado e colaborar para que todos produzam com muito mais eficiência e qualidade.
Entrando um pouco mais a fundo nesse assunto, podemos dizer que essa falta de alinhamento gera diversos problemas, como atrasos, falhas e retrabalhos, que geram um resultado final de baixa (ou até baixíssima) qualidade para o cliente. Com o DevOps, a ideia de integrar continuamente padroniza o ambiente de trabalho, além de facilitar a gerência e a documentação do que foi feito.
Isso faz com que o operacional entenda um pouco mais sobre o software em si, e que o desenvolvimento entenda sobre a infraestrutura operacional. Além disso, a comunicação também é muito importante para que nenhum lado se sinta sobrecarregado, desestimulado etc.
Algumas ações são incentivadas para que isso aconteça, baseadas em três pilares:
- Integração contínua ao inserir desenvolvimento e operacional no mesmo ambiente, fazendo com que ambos se relacionem ao trocar experiências e conhecimento;
- Implementação contínua com a liberação rápida de novas versões das aplicações feitas;
- Feedback contínuo de ambas as equipes em quaisquer fases de um determinado projeto.
O simples fato de inserir alguém de uma equipe nas reuniões da outra pode ajudar nesse sentido. Afinal, nesses encontros, todos conseguem trocar informações, entender sobre o andamento do projeto e opinar sobre o que está sendo feito para promover melhorias. Logo, todos se integram e colaboram com visões de "fora do círculo".
E começar não é tão difícil. Basta criar diretrizes que guiem o caminho das duas equipes, desenvolvê-las e testá-las com um pequeno grupo, implementar o que funcionar para a sua empresa e, claro, fazer ajustes finos com o feedback contínuo. Afinal, nem tudo pode ser previsto, não é?
Benefícios do DevOps
Além da integração, que fica bem clara enquanto conhecemos a metodologia, as empresas que fazem uso dessa metodologia têm algumas outras vantagens:
Rotinas automatizadas
Nessa nova cultura, muitas tarefas são automatizadas para otimizar o trabalho de toda a equipe de TI. Dessa maneira, algumas, que antes eram mecânicas, não são mais feitas por pessoas. Com o DevOps, todos os colaboradores estão envolvidos em um processo mais ativo, propondo melhorias contínuas ao projeto.
Processos simplificados
O DevOps busca otimizar processos, desburocratizando algo que, antes, poderia parecer uma enorme pedra no sapato. Reutilizar módulos de software, por exemplo, flexibiliza os projetos, fazendo com que estes sejam adaptáveis às mudanças. Isso evita refações complexas e reduz o tempo de entrega.
Revisão dos processos de TI
Com a automatização de alguns processos e a simplificação de outros, é inevitável reorganizar tudo que diz respeito à equipe, não é mesmo? Sendo assim, o que era feito antigamente é revisado, fazendo com que as empresas adotem novos paradigmas favoráveis à cultura DevOps.
Minha empresa precisa de um time de DevOps?
Antes de fazer essa pergunta, você deve pensar em outra: sua empresa tem uma cultura muito engessada? Essa pergunta é crucial para responder a anterior, pois o DevOps é bem diferente do que temos hoje em dia. Sendo assim, mudar toda uma ideia empresarial em pouco tempo pode ser complicado.
Depois disso, você deve fazer um exercício de detecção de dificuldades para entender os pontos fracos da equipe e concluir se o DevOps será realmente relevante pra ela. Afinal, existem metodologias ágeis e diversas outras táticas que podem ser muito melhores para o seu cenário.
Por exemplo, se a resposta para a primeira pergunta for positiva, será que o Scrum não seria algo mais simples de ser implementado? Ou será que vale a pena ir testando uma nova ideia aos poucos para que o DevOps seja facilmente aceito depois de alguns meses de testes? Ou até mesmo buscar quaisquer outras metodologias?!
Lembre-se: o DevOps trata bastante de comunicação e empatia. DevOps é saber o que é o trabalho do outro e ajudar ao monitorar problemas, tratá-los e solucioná-los, acabando com o abandono de responsabilidades de algum setor por determinada tarefa. Todos estão envolvidos!
Conclusão
É esse senso de coletividade que faz uma empresa crescer, não é mesmo? Nenhum lado é menos importante que o outro e todos os colaboradores devem saber disso. É a partir deste pensamento que novas rotinas podem ser criadas, gerando uma cultura empresarial muito mais alinhada com as tendências do século XXI.
A cultura DevOps está aí para ajudar nesse sentido! Com ela, a sua equipe de TI funcionará sem ficar a mercê de egos, velhos hábitos ou rotinas e problemas corriqueiros! Então, que tal começar a estudar mais sobre o assunto para talvez até mesmo implementar na sua empresa? O que acha?!