Quem é um engenheiro de DevOps, o que ele faz, quanto ganha e como se tornar um

Os engenheiros do DevOps são especialistas multidisciplinares que sabem como automatizar processos e sabem como desenvolvedores, controle de qualidade e gerentes trabalham. Eles sabem como programar, dominam rapidamente ferramentas complexas e não se perdem em uma tarefa desconhecida. Os engenheiros do DevOps são poucos - eles estão dispostos a pagar de 200 a 300 mil rublos, mas ainda existem muitas vagas.

Dmitry Kuzmin conta o que exatamente o DevOps está fazendo e o que precisa ser estudado para se candidatar a essa posição. Bônus - links importantes para livros, vídeos, canais e comunidade profissional.

O que o engenheiro do DevOps faz?


Em uma situação com o DevOps, é importante não confundir os termos. O fato é que o DevOps não é uma área específica de atividade, mas uma filosofia profissional. Essa é uma metodologia que ajuda desenvolvedores, testadores e administradores de sistemas a trabalharem com mais rapidez e eficiência devido à automação e perfeição.

Dessa forma, o engenheiro do DevOps é um especialista que implementa essa metodologia no processo de trabalho:

  • No estágio de planejamento, o engenheiro do DevOps ajuda a decidir qual arquitetura o aplicativo usará, como será dimensionado e escolher um sistema de orquestração.
  • Em seguida, configura o servidor, a verificação automática e o upload de código e a verificação do ambiente.
  • Em seguida, automatiza os testes e resolve as tarefas de implantação.
  • . DevOps , , .
  • , , QA, .

, , . , , , , . , , — DevOps-.

Há confusão no mercado de pessoal. Às vezes, uma empresa procura engenheiros de DevOps para o cargo de engenheiro de sistema, engenheiro de construção ou outra pessoa. As responsabilidades, dependendo do tamanho da empresa e da direção, também mudam - em algum lugar que eles procuram uma pessoa para consultar, em algum lugar que estão pedindo para automatizar tudo, mas em algum lugar em que são obrigados a desempenhar funções avançadas de um administrador de sistema que pode programar.

O que você precisa para começar na profissão


A entrada na profissão requer treinamento prévio. Apenas vir para os cursos do zero sem entender nada em TI, e o aprendizado para o nível júnior irá falhar. Precisa de uma formação técnica:

  • , , . , , , . , Linux, .
  • , — , .
  • , — Python Go, (- ), .
  • — , .

Não é necessário conhecer todas as opções acima, pois um nível mínimo de treinamento é suficiente para começar a aprender DevOps. Se houver esse conhecimento técnico, tente se inscrever em cursos.

O que o DevOps deve saber


Um bom engenheiro de DevOps é um especialista multidisciplinar com horizontes muito amplos. Para um trabalho bem-sucedido, você precisará entender várias instruções de TI ao mesmo tempo.

Desenvolvimento


O DevOps escreverá um script que ajudará os desenvolvedores a instalar o código no servidor. Irá criar um programa que "em tempo real" testa a capacidade de resposta dos bancos de dados. Irá escrever um aplicativo para controle de versão. Por fim, ele simplesmente notará um possível problema de desenvolvimento que pode aparecer no servidor.

Um forte especialista em DevOps conhece vários idiomas adequados para automação. Ele não os entende completamente, mas escreverá rapidamente um pequeno programa ou lerá o código de outra pessoa. Se você não encontrou o desenvolvimento antes, comece com o Python - ele possui uma sintaxe simples, é fácil trabalhar com tecnologias em nuvem, há muita documentação e bibliotecas.

Sistemas operacionais


É impossível conhecer todos os recursos de cada versão de cada sistema - milhares de horas podem ser gastas em tal treinamento e não haverá sentido. Em vez disso, o bom DevOps entende os princípios gerais de trabalho em qualquer sistema operacional. Embora, a julgar pelas menções nas vagas, a maioria agora trabalhe no Linux.

Um bom engenheiro entende em qual sistema é melhor implantar um projeto, quais ferramentas usar e quais erros em potencial podem aparecer durante a implementação ou operação.

As nuvens


O mercado de tecnologia em nuvem está crescendo em uma média de 20 a 25% ao ano - essa infraestrutura permite automatizar o teste de código, criar aplicativos a partir de componentes e fornecer atualizações aos usuários. A Good DevOps compreende soluções totalmente nubladas e híbridas.

Os requisitos padrão para engenheiros geralmente incluem GCP, AWS e Azure.

Isso inclui a propriedade de ferramentas de CI / CD. Normalmente, o Jenkins é usado para integração contínua, mas vale a pena tentar os análogos. Existem muitos deles, por exemplo, Buddy, TeamCity e Gitlab CI. Estudaremos o Terraform como uma ferramenta declarativa que ajuda a elevar e configurar remotamente a infraestrutura nas nuvens. E Packer, necessário para criar automaticamente imagens do sistema operacional .

Sistemas de orquestração e microsserviços


A arquitetura de microsserviço tem muitas vantagens - estabilidade, capacidade de dimensionar, simplificar e reutilizar rapidamente. O DevOps entende como os microsserviços funcionam e pode evitar possíveis problemas.

Conhece completamente Docker e Kubernetes. Ele entende como os contêineres funcionam, como construir um sistema para que você possa desativar alguns deles sem consequências para o sistema como um todo. Por exemplo, ele pode criar um cluster Kubernetes usando Ansible

O que mais tentar para o futuro DevOps


É interminável listar as ferramentas que podem ser úteis para o engenheiro do DevOps. Alguém trabalha na orquestração de projetos, outros passam a maior parte do tempo automatizando a implantação e os testes, enquanto outros aumentam a eficiência no gerenciamento de configurações. No processo, ficará claro onde cavar e quais projetos serão úteis.

Aqui está outro pequeno mínimo que ajudará no início:

  • Entenda como o Git e o Github funcionam, se você nunca encontrou isso antes. Instale o GitLab no seu servidor.
  • Conheça as linguagens de marcação JSON e YAML.
  • Instale e tente trabalhar em bancos de dados - não apenas no MySQL, mas também no NoSQL. Experimente o MongoDB.
  • Entenda como gerenciar a configuração de vários servidores ao mesmo tempo. Por exemplo, usando Ansible.
  • Configure imediatamente o monitoramento e logs de carga. Tente um monte de Prometheus, Grafana, Alertmanager.
  • Procure as melhores soluções de implantação para diferentes idiomas - basta conhecer-se, implementar e entender em um treinamento ou rascunho de trabalho.

Por que você deve começar a aprender DevOps agora


No mercado para engenheiros de DevOps, há uma escassez de pessoal. Isso é confirmado condicionalmente pela quantidade e qualidade das vagas:

  • Na Rússia, somente no HeadHunter, mais de 2 mil empregos para essa palavra-chave estão constantemente disponíveis.
  • E apenas 1.900 pessoas postaram um currículo.

Considerando que publicar um currículo não significa uma busca ativa de emprego, verifica-se que existem duas ou até três vagas por especialista - essa situação não existe nem no popular mercado de desenvolvimento da web. Adicione aqui mais vagas da Habr e dos canais Telegram - a escassez de especialistas é enorme.


Preste atenção às exigências salariais dos candidatos.O

DevOps não é menos exigido no mundo - se você for se mudar para os EUA ou a Europa, somente no portal Glassdoor , mais de 34 mil empresas estão procurando por esses especialistas. Dos requisitos freqüentes - experiência 1-3 anos, a capacidade de trabalhar com as "nuvens" e não ter medo de funções de consultoria.

Existem várias vezes menos ofertas de freelancers - os engenheiros do DevOps procuram principalmente funcionários em período integral e em período integral.


Encontrar um projeto freelancer adequado é difícil, mas você

pode imaginar a carreira condicional de um engenheiro do DevOps da seguinte maneira:

  • Por meio ano, ele trabalha como administrador de sistemas em uma pequena empresa de TI. Paralelamente, aprendendo uma linguagem adequada para automação.
  • Ele estuda intensamente em cursos, cerca de seis meses.
  • Muda para outro trabalho - para uma empresa que vende soluções em nuvem, uma filial de uma grande corporação, para desenvolvedores de grandes projetos. Simplificando, onde é necessário automação e implementação contínuas. Na posição inicial, isso é aproximadamente 100 mil rublos.
  • Ele trabalha e estuda ativamente há vários anos, aumentando sua renda várias vezes.
  • Torna-se um especialista na comunidade profissional e entra em consultoria. Ou crescendo para um arquiteto de sistemas ou diretor de TI.

DevOps — . . , , IT- - . , .

DevOps


O salário médio médio, de acordo com os dados do segundo trimestre de 2019 para devops, está em um garfo entre 90 e 160 mil rublos. Existem ofertas mais baratas - principalmente entre 60 e 70 mil.

Existem constantemente ofertas de até 200 mil, há vagas com um salário de até 330 mil rublos.


Entre os profissionais operacionais, o DevOps é pago acima do restante. Fonte: Haber Os

engenheiros de DevOps da carreira , incluindo iniciantes, agora são necessários em grandes bancos, empresas, serviços em nuvem, sistemas de negociação e outras organizações que se preocupam em manter suas soluções de TI.

Um excelente candidato para uma vaga júnior com um salário de 60 a 90 mil será um administrador de sistemas iniciante com experiência de cerca de um ano e um diploma de perfil.
 

Não existem estatísticas, mas parece que as pessoas que têm experiência com Linux recebem mais

O que observar e ler para o crescimento da profissão


Para mergulhar no mundo do DevOps, tente várias fontes de informação ao mesmo tempo:


Onde estudar no DevOps


Você pode obter conhecimento estruturado no curso " DevOps-engineer " em Netology. Você aprenderá o ciclo completo da metodologia:

  • Aprenda a analisar o código e use rapidamente as ferramentas de controle de versão.
  • Entenda as melhores práticas para integração, teste e montagem contínuos.
  • Aprenda a gerenciar alterações nos aplicativos e automatizá-las.
  • Na prática, aprenda as ferramentas de configuração e gerenciamento.
  • Acostume-se a selecionar e configurar imediatamente os serviços necessários para o monitoramento.

Obtenha um curso de programação em Python como um bônus - você resolverá problemas ainda mais rápido e mais fácil. Tudo na prática - usamos AWS, GCP ou Azure.
Isso é suficiente para mudar de um engenheiro iniciante ou administrador de sistemas para um DevOps popular e aumentar agradavelmente seu preço no mercado de trabalho.


All Articles