
Há alguns anos, surgiu uma nova profissão na área de TI: o engenheiro DevOps. Ela rapidamente se tornou uma das mais populares e requisitadas no mercado. Mas aqui está o paradoxo — em parte, a popularidade do DevOps se deve ao fato de que as empresas que contratam esses profissionais frequentemente os confundem com representantes de outras profissões.
Este artigo é dedicado à análise das nuances da profissão de DevOps, da situação atual no mercado e das perspectivas. Nós exploramos essa questão complexa com a ajuda do decano na universidade online GeekUniversity, Dmitry Burkovsky.
Então, o que é DevOps?
O próprio termo é uma abreviação para Development Operations. Não é tanto uma profissão, mas sim uma abordagem para a organização do trabalho em uma empresa média ou grande durante a preparação de um produto ou serviço. O fato é que, no processo de preparação, diferentes departamentos de uma mesma empresa participam, e suas ações nem sempre estão bem coordenadas.
Por exemplo, os desenvolvedores nem sempre sabem quais problemas surgem para os usuários que trabalham com o software ou serviço lançado. O suporte técnico conhece tudo muito bem, mas pode não estar ciente do que acontece 'dentro' do software. E aqui entra o engenheiro DevOps, que ajuda a coordenar o processo de desenvolvimento, facilita a automação dos processos e melhora sua transparência.
O conceito de DevOps une pessoas, processos e ferramentas.
O que um engenheiro DevOps deve saber e ser capaz de fazer?
Na opinião de um dos mais conhecidos defensores do conceito DevOps, Joe Sanchez, o profissional deve entender bem as nuances do próprio conceito, ter experiência em administração tanto de sistemas Windows quanto Linux, entender o código-fonte escrito em diferentes linguagens de programação, trabalhar com Chef, Puppet e Ansible. É claro que, para analisar o código, é necessário conhecer várias linguagens de programação, e não apenas conhecer, mas também ter experiência em desenvolvimento. Além disso, é muito desejável ter experiência em testar produtos de software e serviços prontos.
Mas isso, em um ideal, um nível de experiência e conhecimento que não é comum entre todos os representantes da área de TI. Aqui está um conjunto de conhecimentos e experiências mínimos necessários para um bom DevOps:
- Sistemas operacionais GNU/Linux, Windows.
- Pelo menos uma linguagem de programação (Python, Go, Ruby).
- Linguagem de scripts de shell — bash ao trabalhar com Linux e powershell no caso do Windows.
- Sistema de controle de versões — Git.
- Sistemas de gerenciamento de configuração (Ansible, Puppet, Chef).
- Pelo menos uma das plataformas de orquestração de contêineres (Kubernetes, Docker Swarm, Apache Mesos, Amazon EC2 Container Service, Microsoft Azure Container Service).
- Capacidade de trabalhar com provedores de nuvem (por exemplo: AWS, GCP, Azure, etc.) usando Terraform, saber como implementar aplicativos na nuvem.
- Habilidade para configurar pipelines de CI/CD (Jenkins, GitLab), stack ELK, sistemas de monitoramento (Zabbix, Prometheus).
Aqui está uma lista de habilidades que os especialistas em DevOps costumam mencionar no Habr Carreira.

Além disso, o especialista em DevOps deve entender as necessidades e requisitos do negócio, ver seu papel no processo de desenvolvimento e saber como construir o processo levando em consideração os interesses do cliente.
E quanto à barreira de entrada?
A lista de conhecimentos e experiências não foi apresentada à toa. Agora fica mais fácil entender quem pode se tornar um especialista em DevOps. Parece que é mais fácil fazer essa transição para representantes de outras especialidades de TI, especialmente administradores de sistemas e desenvolvedores. Ambos podem rapidamente adquirir a experiência e o conhecimento faltantes. Metade do conjunto necessário eles já têm, e muitas vezes — mais da metade.
E também ótimos engenheiros DevOps podem surgir de testadores. Eles sabem como funciona e estão a par das deficiências e dos problemas do software e do hardware. Pode-se dizer que um testador que conhece linguagens de programação e sabe escrever programas está a poucos passos de se tornar um DevOps.
Por outro lado, para um representante de uma especialidade não técnica, que nunca lidou com desenvolvimento ou administração de sistemas, será difícil. Claro, nada é impossível, mas mesmo assim os novatos precisam avaliar adequadamente suas capacidades. Levará um tempo considerável para adquirir a bagagem necessária.
Onde um DevOps pode se empregar?
Em uma grande empresa cuja atividade esteja diretamente ou indiretamente relacionada ao desenvolvimento de aplicativos e à administração de hardware. O maior déficit de engenheiros DevOps é em empresas que oferecem um grande número de serviços ao consumidor final. Isso inclui bancos, operadoras de telecomunicações, os maiores provedores de internet, entre outros. Entre as empresas que contratam ativamente engenheiros DevOps estão Google, Facebook, Amazon, Adobe.
As empresas de pequeno porte estão adotando DevOps e startups, mas para muitas delas, a contratação de engenheiros DevOps é mais uma tendência do que uma necessidade real. Claro, existem exceções, mas elas não são muitas. Empresas pequenas precisam, na verdade, de alguém que possa desempenhar várias funções, ou seja, uma pessoa capaz de trabalhar em diversas áreas. Um bom CTO pode lidar com tudo isso. O fato é que para pequenas empresas, a agilidade é fundamental, e a otimização dos processos de trabalho é crítica para empresas médias e grandes.
Aqui estão algumas vagas (é possível acompanhar novas no Habr Carreira em ):
Salário de DevOps na Rússia e no mundo
Na Rússia, o salário médio de um engenheiro DevOps é de cerca de 132 mil rublos por mês. Esses dados são do calculador de salários do serviço Habr Carreira, com base em 170 questionários do segundo semestre de 2020. Sim, a amostra não é muito grande, mas como 'temperatura média do hospital', é bastante adequada.
Existem salários de até 250 mil rublos e também em torno de 80 mil ou um pouco menos. Tudo depende da empresa, da qualificação e do próprio especialista, é claro.
Quanto a outros países, a estatística de salários também é conhecida. Um bom trabalho foi feito pelos especialistas do Stack Overflow, analisando questionários de cerca de 90 mil pessoas — não apenas DevOps, mas também de diversas áreas técnicas. Descobriu-se que os Gerentes de Engenharia e os DevOps são os que recebem os maiores salários.
Um engenheiro DevOps ganha cerca de $71 mil por ano. De acordo com o site Ziprecruiter.com, o salário de um profissional nesta área varia de $86 mil por ano. O serviço Payscale.com apresenta números ainda mais agradáveis — o salário médio de um especialista em DevOps, segundo o serviço, supera $91 mil. E isso é o salário de um especialista júnior; um sênior pode ganhar até $135 mil.
Para concluir, vale a pena dizer que a demanda por DevOps está crescendo progressivamente, e a procura por especialistas de todos os níveis supera a oferta. Portanto, se houver interesse, vale a pena tentar atuar nesta área. No entanto, é importante lembrar que apenas o desejo não é suficiente. É necessário desenvolver-se constantemente, aprender e trabalhar.
Fonte: habr.com
