Realizar busca
test

Você sabe o que é DevOps? Ele tem tudo a ver com a transformação digital

A cultura do DevOps ajuda a remover as barreiras entre os times de desenvolvedores e de administração e suporte de sistemas  

A cultura do DevOps ajuda a remover as barreiras entre os times de desenvolvedores e de administração e suporte de sistemas, que passam a trabalhar de forma integrada

 

Raul Ikeda

 

Até há pouco tempo, os times de desenvolvedores (Dev) e de administração e suporte de sistemas (Ops) trabalhavam em grupos tanto fisicamente como virtualmente separados nas empresas. Frequentemente, devido a interesses antagônicos e, principalmente, à falta de comunicação, os produtos tinham um ciclo de desenvolvimento conturbado. Os desenvolvedores não conseguiam ser mais produtivos por falta de infraestrutura e precisavam cumprir prazos apertados. Já os profissionais de operações, com frequência, recebiam softwares com muitos problemas, o que sobrecarregava o suporte. Tudo isso atrasava bastante o processo de manutenção e atualização de novas funcionalidades nos softwares.

Esse muro que havia entre os times de desenvolvedores e de operações começou a ser derrubado com a disseminação da cultura do DevOps — termo proveniente da junção das palavras development (Dev) e operations (Ops). O marco inicial desse conceito foi a palestra “10+ Deploys per Day: Dev and Ops Cooperation at Flickr”, realizada pelos engenheiros de software John Allspaw e Paul Hammond durante uma conferência chamada Velocity, em 2009. Allspaw e Hammond falaram sobre como a cooperação entre os times era crucial para possibilitar a entrega de mais de 10 implementações diárias no Flickr, um site de hospedagem e compartilhamento de imagens. Logo em seguida, o termo DevOps acabaria sendo cunhado pelo consultor Patrick Debois, criador do evento DevOps Days, uma série mundial de conferências técnicas que abordam temas relacionados a desenvolvimento de software, operações de infraestrutura de TI e a interseção entre eles.

A ideia principal do DevOps é que todos os membros de diversos times (desenvolvimento, operações, garantia de qualidade, gestão, segurança etc.), independentemente da sua área de atuação, precisam colaborar entre si para que o fluxo de trabalho seja o mais funcional e fluido possível. Isso faz com que toda a equipe seja responsável pelo produto, e não apenas por suas tarefas de forma isolada.

A cultura do DevOps, segundo o pesquisador Gene Kim (Puppet Conference, 2012), tem como linha-mestra quatro princípios, que podem ser aplicados em diversas áreas de conhecimento: 1) Entender o fluxo de trabalho (workflow); 2) Sempre procurar melhorar o workflow; 3) Não deixar defeitos seguirem adiante; e 4) Ter um entendimento profundo sobre o produto/sistema. Esses princípios, que seguem a linha de desenvolvimento ágil de projetos, se aplicam a todo o time, sejam devs, sejam ops, e todos os membros da equipe são responsáveis pelo produto como um todo.

Quando aplicada no processo de desenvolvimento de sistemas, a cultura DevOps, embora muito influenciada pelos princípios de lean manufacturing (manufatura enxuta), tem como foco principal realizar a construção do software ou dos sistemas computacionais de forma impecável, desde a concepção até a implantação e a manutenção. As principais técnicas utilizadas nesse processo envolvem testes unitários e de integração, implantação contínua e monitoramento de métricas, para citar algumas.

A cultura do DevOps tem tudo a ver com a transformação digital, que exige agilidade, velocidade e eficiência. Ela é a base da internet escalável moderna e vai ser importante também na implementação da tecnologia 5G. Isso porque sistemas sem falhas, com alta qualidade e com o processo de desenvolvimento extremamente bem ajustado, permitem ampliar o uso massivo da tecnologia e a base de usuários, os quais demandarão o desenvolvimento de novas funcionalidades de forma ágil. Essa escalabilidade se dá por meio da capacidade de infraestrutura (cloud), que depende muito dos meios de comunicação (internet 5G), e da capacidade de os sistemas responderem rapidamente e suportarem essas cargas sem falhas. Como um círculo virtuoso, bons sistemas aumentam a demanda sobre a infraestrutura, que, por sua vez, exige melhores sistemas.

Tecnicamente, não existe um profissional para o “cargo” DevOps, uma vez que se trata de um movimento, e não uma carreira. Contudo, é comum designar vagas como DevOps no sentido de o profissional estar alinhado à cultura e conhecer suas boas práticas e ferramentas, seja de desenvolvimento ou operações, seja de suporte, segurança, gerência ou outras áreas. Um excelente profissional que una todas as características técnicas descritas (desenvolvedor, arquiteto de sistemas e nuvem, administrador de sistemas, analista de qualidade, analista de segurança etc.), porém, é extremamente raro. “Às vezes, é mais fácil achar um unicórnio”, disse o consultor Michael Kavis no livro Architecting the Cloud, de 2014.

Tanto as técnicas quanto as principais ferramentas na área de Engenharia de Software, responsável pela criação, desenvolvimento e manutenção de sistemas, serão abordadas no novo curso de Ciência da Computação do Insper, dentro da trilha de Desenvolvimento de Softwares Complexos, ou como eletivas de disciplinas já existentes no curso de Engenharia de Computação.

 

* Raul Ikeda é coordenador do curso de Engenharia de Computação do Insper

 

Raul Ikeda

* Raul Ikeda é coordenador do curso de Engenharia de Computação do Insper

 

Este website usa Cookies

Saiba como o Insper trata os seus dados pessoais em nosso Aviso de Privacidade, disponível no Portal da Privacidade.

Aviso de Privacidade

Definições Cookies

Uso de Cookies

Saiba como o Insper trata os seus dados pessoais em nosso Aviso de Privacidade, disponível no Portal da Privacidade.

Aviso de Privacidade