Como pode um Sys. Habilidade administrativa para trabalhar como engenheiro de DevOps?

10

Estou procurando recomendações sobre como se qualificar para ser um engenheiro de DevOps dedicado.

Eu sempre quis trabalhar em projetos relacionados ao desenvolvimento, pois adoro codificação, mas infelizmente nunca tive a chance. Já trabalhei em projetos freelancers usando .Net e PHP e sou certificado em Java SE, mas nunca o usei.

Minha experiência profissional inclui a administração de sistemas e aplicativos. Agora, na maior parte, estou no último ano do ensino médio, portanto não é preferível mudar para o Desenvolvimento, pois teria que recomeçar como júnior. No entanto, acho que o DevOps será perfeito para mim, mas preciso saber o que preciso estudar para preencher as lacunas no meu conhecimento para ser um bom engenheiro de DevOps dedicado (de preferência a parte sobre automação e ferramentas de escrita).

Por favor, recomende o que devo estudar, por exemplo, ouvi dizer que Python, Perl e Ruby são muito bons para o DevOps, mas com o que mais devo começar e quais são as habilidades obrigatórias que preciso abordar primeiro?

Meu conjunto de habilidades atual:

Sys. Admin

  • Administração de Unix (HP-UX, Solaris) e Linux (Ubuntu, Red hat, CentOS)
  • Administração de Tecnologias de Middleware (WebLogic, Apache-Tomcat, WebSphere, MQ)
  • Script Bash / Shell

  • Configuração e administração do servidor da Web

  • Excelente conhecimento de sistemas de banco de dados comuns (SQL Server, Oracle, MySQL, etc.)
  • Serviços da Web e integrações SOAP / REST / API
  • Oracle Business Intelligence Suite (OBIEE, DAC, Informatica)
  • Desenvolvimento e Administração de Remédios ITSM.
  • Objeto de negócios SAP (Analytics).
  • Splunk
  • Service Center - Gerenciamento de serviço de TI habilitado para ITIL
  • Forte entendimento das tecnologias de aplicativos da Web.

Desenvolvedor

  • Habilidades de desenvolvimento de especialistas no Microsoft Visual Basic.
  • Excelentes habilidades de desenvolvimento em Java SE.
  • Desenvolvimento .Net da Microsoft
  • Desenvolvimento do MS SharePoint.
  • Especialista em MS Office com conhecimento especializado em macros e automação em todos os aplicativos do MS office.
  • Desenvolvimento intermediário de PHP (CakePHP)
user3561596
fonte

Respostas:

8

Dê uma olhada nas funções de engenheiro do DevOps e confira a lista de tecnologias que eles estão procurando. Normalmente, você precisará de habilidades de script de automação (como Bash, Python ou PowerShell), habilidades de gerenciamento de configuração (como Chef, Puppet ou Ansible) e alguma experiência fundamental na manutenção e configuração de um pipeline de Build / Release. Para isso, procure obter experiência com ferramentas de CI / CD como AppVeyor (.NET), Jenkins, Travis CI etc. Você também deve estar familiarizado com os sistemas de controle de fonte e Git em geral, como BitBucket ou TFS. Você também se beneficiaria de se familiarizar com as técnicas de teste automatizado.

Se você ainda não o fez, considere hospedar alguns produtos de código aberto no Github e configurar um pipeline para eles que realize testes automatizados nas confirmações, bem como (se possível) publique em um sistema de gerenciamento de pacotes. Essa é uma ótima experiência, além de demonstrar suas habilidades.

Para uma compreensão mais geral da filosofia do DevOps (lembre-se de que é uma cultura e um conjunto de tecnologias), leia o máximo que puder sobre o tópico e comece a seguir (por exemplo, via Twitter) nomes como Gene Kim, Jez Humble e Patrick Debois. Também recomendo que você leia o DevOps Handbook, que eles criaram. É uma explicação muito completa do que é o DevOps e de como as organizações podem adotá-lo.

Você também pode verificar para fora DevOps relacionados Conheça Ups e Conferências (como Velocity , DevOpsDays e Gerenciamento de Configuração acampamento ). Obviamente, as oportunidades variam dependendo de onde você está no mundo.

Mark Wragg
fonte
bem dito .. da minha experiência proveniente do desenvolvimento do DevOps e trabalhando com administradores de sistemas, eles geralmente não possuem as habilidades mais procuradas na forma de controle de versão (Git), habilidades básicas de script (bash ou Python) e capacidade de construir pipelines usando algo semelhante ao Jenkins Pipeline DSL .. Eu também recomendaria terraform além de conhecer uma das principais ferramentas de CM (fantoche, cozinheiro chefe, ansible, sal)
TechDawg270
2

Faça uma lista das ferramentas do DevOps que parecem populares, faça o download, siga o manual e faça-o.

  • Vagabundo
  • Ansible
  • Docker
  • Kubernetes / OpenShift

Isso dará a você um bom começo de execução com as ferramentas mais próximas ao lado "Operações" e - se você também conseguir entender por que e para que essas ferramentas são usadas - fará de você um membro digno da maioria das equipes. Você pode coletar os bits e partes mais do lado do Dev à medida que avança (por exemplo, pipelines de CI / CD etc.).

AnoE
fonte