Como se tornar um engenheiro DevOps em seis meses ou até mais rápido. Parte 1. Introdução

Целевая аудитория

Você é um desenvolvedor que deseja direcionar sua carreira para um modelo DevOps mais avançado? Você é um engenheiro de operações clássico e gostaria de ter uma ideia do que significa DevOps? Ou você não é nenhum dos dois e, depois de passar algum tempo trabalhando em TI, quer mudar de carreira e não tem ideia por onde começar?
Se sim, continue lendo para descobrir como você pode se tornar um engenheiro DevOps de nível médio em seis meses! Por fim, se você está envolvido com DevOps há muitos anos, ainda aproveitará bastante esta série de artigos para saber onde está o setor de integração e automação atualmente e para onde está caminhando.

Como se tornar um engenheiro DevOps em seis meses ou até mais rápido. Parte 1. Introdução

O que é isso?

Primeiramente, o que é DevOps? Você pode pesquisar as definições no Google e percorrer todo o palavreado, mas saiba que a maioria das definições é apenas uma confusão de palavras embrulhadas de uma forma simplificada. Por isso, vou te dar um resumo de todas essas definições: DevOps é um método de entrega de software em que a dor de cabeça e a responsabilidade são compartilhadas entre todos os envolvidos. Isso é tudo.

Ok, mas o que essa abreviatura significa? Isso significa que tradicionalmente, os Desenvolvedores (as pessoas que criam software) trabalham com incentivos que são significativamente diferentes dos de Operações (as pessoas que gerenciam o software). Por exemplo, como desenvolvedor, quero criar o máximo de novos recursos o mais rápido possível. Afinal, esse é o meu trabalho e é isso que os clientes exigem! No entanto, se eu sou uma pessoa de operações, preciso do mínimo possível de recursos novos, porque cada novo recurso é uma mudança, e qualquer mudança está repleta de problemas. Como resultado desse desalinhamento de incentivos, nasceu o DevOps.

O DevOps tenta combinar desenvolvimento e operações (integração e automação) em um grupo. A ideia é que um grupo agora compartilhe a dor e a responsabilidade (e as prováveis ​​recompensas) de construir, implantar e gerar receita a partir de software voltado para o cliente.

Os puristas dirão que não existe um “engenheiro de DevOps”. “DevOps é uma cultura, não uma função”, eles dirão. É claro que, do ponto de vista técnico, eles estão certos, mas, como está muitas vezes é o caso, o termo saiu do controle Além de seu significado original, um engenheiro DevOps é algo como um “engenheiro de sistemas 2.0”. para resolver problemas operacionais clássicos.

Como se tornar um engenheiro DevOps em seis meses ou até mais rápido. Parte 1. Introdução

Em última análise, DevOps significa criar pipelines digitais que pegam o código do laptop de um desenvolvedor e o transformam em receita a partir do uso do produto final, é disso que se trata. Observe que a escolha de uma carreira em DevOps é altamente compensada por recompensas financeiras, com quase todas as empresas “fazendo DevOps” ou afirmando ser uma. Independentemente de onde essas empresas estejam localizadas, as oportunidades gerais de emprego como DevOps são bastante altas e oferecem empregos “divertidos” e significativos por muitos anos.

No entanto, tenha cuidado com as empresas que contratam uma “equipe DevOps” ou “departamento DevOps". Estritamente falando, tais coisas não deveriam existir, porque, em última análise, DevOps ainda é uma cultura e uma forma de entregar software, e não formar uma nova equipe ou criar um departamento com um nome chique.

Negação de responsabilidade

Agora vamos deixar o copo de Kool-Aid de lado por um momento e pensar no seguinte. Você já ouviu o velho ditado “não existem engenheiros juniores de DevOps?” Caso contrário, saiba que este é um tropo popular no Reddit e StackOverflow. Mas o que isso significa?

Simplificando, esta frase significa que são necessários muitos anos de experiência combinados com uma sólida compreensão das ferramentas para se tornar um profissional sênior de DevOps verdadeiramente eficaz. E, infelizmente, não existe atalho para atingir o objetivo. Portanto, esta não é uma tentativa de manipular o sistema - não acho que seja realmente possível fingir ser um engenheiro sênior de DevOps com alguns meses de experiência no setor. Alcançar uma compreensão sólida de ferramentas e metodologias que mudam rapidamente requer anos de experiência e não há como evitar isso. No entanto, existe um menu quase consistente (na moda, por assim dizer) de ferramentas e conceitos que a maioria das empresas usa, e é sobre isso que falaremos.

Novamente, ferramentas são diferentes de habilidades, portanto, enquanto você aprende as ferramentas, certifique-se de não negligenciar suas habilidades (pesquisa, networking, comunicação escrita, solução de problemas, etc.). Mais importante ainda, não perca de vista o que queremos encontrar – uma maneira de criar um pipeline digital totalmente automatizado que pegue ideias e as transforme em pedaços de código geradores de receita. Esta é a conclusão mais importante de todo este artigo!

Chega de conversa, quando posso começar?

Abaixo está o roteiro de conhecimento fundamental do DevOps. Depois de dominar tudo o que está descrito lá, você pode se autodenominar um engenheiro DevOps com segurança e honestidade! Ou um engenheiro de nuvem, se você não gosta do nome “DevOps”.

Como se tornar um engenheiro DevOps em seis meses ou até mais rápido. Parte 1. Introdução

Este mapa representa minha ideia (e provavelmente a da maioria das pessoas que trabalham nesta área) do que um engenheiro DevOps competente deve saber. No entanto, esta é apenas uma opinião e, claro, haverá quem discorde dela. Isto é bom! Não estamos a lutar pela perfeição aqui, estamos a lutar por uma base sólida sobre a qual possamos realmente construir.

Você deve percorrer esse caminho gradualmente, camada por camada. Vamos começar (e continuar!) com os fundamentos, aprendendo primeiro sobre os azuis: Linux, Python e AWS. Então, se o tempo ou a demanda do mercado de trabalho permitirem, faça a coisa roxa – Golang e Google Cloud.

Honestamente, a camada superior fundamental é algo que você terá que estudar para sempre. O sistema operacional Linux é muito complexo e leva anos para ser dominado. Python requer prática constante para se manter atualizado. A AWS está evoluindo tão rapidamente que o que você sabe hoje só fará parte do seu portfólio geral de conhecimento daqui a um ano. Depois de aprender o básico, passe para o conjunto de habilidades real. Observe que há um total de 6 colunas azuis (Configuração, Versão, Embalagem, Implantação, Lançamento, Monitoramento), uma por mês de estudo.

Como se tornar um engenheiro DevOps em seis meses ou até mais rápido. Parte 1. Introdução

Você, é claro, notou a ausência de uma etapa importante em nosso pipeline de seis meses - os testes. Eu deliberadamente não o incluí no roteiro porque escrever um módulo, testes de integração e aceitação não é fácil e tradicionalmente recai sobre os ombros dos desenvolvedores. E pular a fase de “teste” é explicado pelo fato de que o objetivo deste roteiro é dominar habilidades e ferramentas básicas o mais rápido possível. A falta de experiência em testes, segundo o autor, é apenas um pequeno obstáculo para o uso correto do DevOps.

Além disso, lembre-se de que não estamos aprendendo um monte de bobagens técnicas não relacionadas aqui, mas sim uma compreensão das ferramentas que se juntam para criar uma história clara. Esta história é sobre automação de processos ponta a ponta – uma linha de montagem digital que movimenta bits como uma linha de montagem. Você não quer aprender um monte de ferramentas e ficar parando! As ferramentas DevOps mudam rapidamente, mas os conceitos mudam com muito menos frequência. Portanto, você deve se esforçar para usar ferramentas como substitutos de ensino para conceitos de nível superior.

Ok, vamos cavar um pouco mais fundo!

Conhecimento fundamental

Abaixo da etapa superior que diz Fundação, você pode ver as habilidades que todo engenheiro DevOps deve dominar. Essas habilidades são a confiança para lidar com os três pilares da indústria, que são: o sistema operacional, a linguagem de programação e a nuvem pública. Essas coisas não são algo que você possa aprender rapidamente e seguir em frente. Essas habilidades precisam ser constantemente aprimoradas e dominadas para estar na vanguarda do setor e ser relevante para o ambiente profissional ao seu redor. Vamos examiná-los um por um.

Linux é onde tudo funciona. Você pode ser um profissional incrível de DevOps e ao mesmo tempo permanecer completamente dentro do ecossistema Microsoft? Certamente você pode! Não existe nenhuma lei que determine que você use apenas Linux. No entanto, tenha em mente que apesar de todas as coisas do Linux poderem ser feitas no Windows, lá isso acontece de forma muito mais dolorosa e com menos funcionalidade. Neste ponto, é seguro assumir que sem conhecer Linux é impossível se tornar um verdadeiro profissional de DevOps, então Linux é algo que você deve estudar e aprender.

Sinceramente, a melhor forma de fazer isso é simplesmente instalar o Linux (Fedora ou Ubuntu) em casa e utilizá-lo o máximo possível. Claro que você vai quebrar muita coisa, vai ficar preso nos processos de trabalho, vai ter que consertar tudo, mas vai aprender Linux!

Como se tornar um engenheiro DevOps em seis meses ou até mais rápido. Parte 1. Introdução

A propósito, as variantes do RedHat são mais comuns na América do Norte, então faz sentido começar com o Fedora ou o CentOS. Se você está se perguntando se deve comprar a edição KDE ou Gnome, escolha KDE. Isto é o que o próprio Linus Torvalds usa.

Python é a linguagem de back-end dominante atualmente. É fácil de começar e é amplamente utilizado. Python é muito comum no campo da inteligência artificial e do aprendizado de máquina, portanto, se você quiser mudar para outro campo importante, estará totalmente preparado.

Como se tornar um engenheiro DevOps em seis meses ou até mais rápido. Parte 1. Introdução

Amazon Web Services: Novamente, é impossível se tornar um profissional experiente em DevOps sem um conhecimento sólido de como funciona a nuvem pública. E se você quiser saber mais sobre isso, dê uma olhada na Amazon Web Services. É um player líder nesta área de serviços e oferece o mais rico conjunto de ferramentas de trabalho.

É possível começar com Google Cloud ou Azure? Claro que você pode! Mas lembrando a última crise financeira, é importante destacar que a AWS é a opção mais segura, pelo menos em 2018, pois permite registrar uma conta gratuitamente e começar a explorar as possibilidades dos serviços em nuvem. Além disso, o console AWS fornece ao usuário um menu simples e claro para seleção. A boa notícia é que você não precisa conhecer todas as tecnologias da Amazon para fazer isso.

Como se tornar um engenheiro DevOps em seis meses ou até mais rápido. Parte 1. Introdução

Comece com o seguinte: VPC, EC2, IAM, S3, CloudWatch, ELB (Elastic Load Balancing sob a égide do EC2) e Grupo de Segurança. Essas coisas são suficientes para você começar, e toda empresa moderna baseada em nuvem usa essas ferramentas de forma bastante ativa. O próprio site de treinamento da AWS é um bom lugar para começar.

Eu recomendo que você gaste de 20 a 30 minutos todos os dias aprendendo e praticando a linguagem Python, o sistema operacional Linux e o serviço de nuvem AWS, além de outras coisas que você terá que aprender. No geral, acredito que gastar uma hora por dia, cinco vezes por semana, é suficiente para entender o setor de DevOps em 6 meses ou menos. Há um total de 6 componentes principais, cada uma das quais corresponde a um mês de formação. Isso é tudo que você precisa para adquirir conhecimentos básicos.
Nos artigos subsequentes, veremos o próximo nível de complexidade: como automatizar totalmente a configuração, o versionamento, o empacotamento, a implantação, a execução e o monitoramento de software.

Continuará muito em breve...

Alguns anúncios 🙂

Obrigado por ficar com a gente. Gostou dos nossos artigos? Quer ver mais conteúdos interessantes? Apoie-nos fazendo um pedido ou recomendando a amigos, nuvem VPS para desenvolvedores a partir de US$ 4.99, um análogo exclusivo de servidores básicos, que foi inventado por nós para você: Toda a verdade sobre VPS (KVM) E5-2697 v3 (6 núcleos) 10 GB DDR4 480 GB SSD 1 Gbps a partir de $ 19 ou como compartilhar um servidor? (disponível com RAID1 e RAID10, até 24 núcleos e até 40 GB DDR4).

Dell R730xd 2x mais barato no data center Equinix Tier IV em Amsterdã? Só aqui 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV a partir de US$ 199 na Holanda! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - a partir de US$ 99! Ler sobre Como construir uma empresa de infraestrutura. classe com o uso de servidores Dell R730xd E5-2650 v4 no valor de 9000 euros por um centavo?

Fonte: habr.com

Adicionar um comentário