¿Cómo puede un Sys. ¿Habilidad administrativa para trabajar como ingeniero DevOps?

10

Estoy buscando recomendaciones sobre cómo mejorar para ser un ingeniero dedicado de DevOps.

Siempre quise trabajar en proyectos relacionados con el desarrollo, ya que me encanta la codificación, pero desafortunadamente nunca tuve la oportunidad. Anteriormente trabajé en proyectos independientes usando .Net y PHP y estoy certificado en Java SE, pero nunca lo he usado.

Mi experiencia laboral incorpora estar en la administración de sistemas y aplicaciones. Principalmente ahora soy senior en este campo, por lo que no es preferible cambiar a Desarrollo, ya que tendría que comenzar de nuevo como junior. Sin embargo, creo que DevOps será perfecto para mí, pero necesito saber qué necesito estudiar para llenar los vacíos en mi conocimiento para ser un buen ingeniero dedicado de DevOps (preferiblemente la parte sobre la escritura de automatización y herramientas).

Recomiende qué debería estudiar, por ejemplo, escuché que Python, Perl y Ruby son muy buenos para DevOps, pero ¿con qué más debo comenzar y cuáles son las habilidades obligatorias que necesito cubrir primero?

Mi conjunto de habilidades actual:

Sys. Administración

  • Administración de Unix (HP-UX, Solaris) y Linux (Ubuntu, Red hat, CentOS)
  • Administración de Middleware Technologies (WebLogic, Apache-Tomcat, WebSphere, MQ)
  • Bash / Shell Scripting

  • Configuración y administración del servidor web

  • Excelente conocimiento de los sistemas de bases de datos comunes (SQL Server, Oracle, MySQL, etc.)
  • Servicios web e integraciones SOAP / REST / API
  • Oracle Business Intelligence Suite (OBIEE, DAC, Informatica)
  • ITSM Remedio Desarrollo y Administración.
  • SAP Business Object (Analytics).
  • Splunk
  • Centro de servicios: gestión de servicios de TI habilitados para ITIL
  • Fuerte comprensión de las tecnologías de aplicaciones web.

Desarrollador

  • Habilidades de desarrollo experto en Microsoft Visual Basic.
  • Excelentes habilidades de desarrollo en Java SE.
  • Microsoft .Net Development
  • Desarrollo de MS SharePoint.
  • Experto en MS Office con conocimiento experto en macros y automatización en todas las aplicaciones de MS office.
  • Desarrollo de PHP intermedio (CakePHP)
usuario3561596
fuente

Respuestas:

8

Eche un vistazo a los roles de Ingeniero DevOps y consulte la lista de tecnologías que están buscando. Por lo general, necesitará habilidades de scripting de automatización (como Bash, Python o PowerShell), habilidades de administración de configuración (como Chef, Puppet o Ansible) y algo de experiencia fundamental en el mantenimiento y configuración de una tubería de Build / Release. Para esto, busque obtener experiencia con herramientas de CI / CD como AppVeyor (.NET), Jenkins, Travis CI, etc. También debe estar familiarizado con Git y los sistemas de control de fuente en general, como BitBucket o TFS. También se beneficiaría de familiarizarse con las técnicas de prueba automatizadas.

Si aún no lo ha hecho, considere alojar algunos productos de código abierto en Github y configurar una canalización para ellos que realice pruebas automatizadas en las confirmaciones, así como (si es posible) la publicación en un sistema de administración de paquetes. Esta es una gran experiencia y demuestra tus habilidades.

Para una comprensión más general de la filosofía de DevOps (tenga en cuenta que es una cultura y un conjunto de tecnología), lea lo más que pueda sobre el tema y comience a seguir (por ejemplo, a través de Twitter) a personas como Gene Kim, Jez Humble y Patrick Debois. También te recomiendo que leas El manual de DevOps que escribieron. Es una explicación muy detallada de lo que es DevOps y de cómo las organizaciones podrían adoptarlo.

También puede consultar Meet Ups y conferencias relacionadas con DevOps (como Velocity , DevOpsDays y Config Management Camp ). Las oportunidades, por supuesto, variarán dependiendo de en qué parte del mundo se encuentre.

Mark Wragg
fuente
bien dicho ... desde mi experiencia al desarrollar DevOps y trabajar con administradores de sistemas, generalmente carecen de las habilidades más buscadas en forma de control de versiones (Git), habilidades básicas de scripting (bash o Python) y poder construir tuberías usando algo similar al DSL de Jenkins Pipeline. También recomendaría terraform además de conocer una de las principales herramientas de CM (marioneta, chef, ansible, sal)
TechDawg270
2

Haga una lista de las herramientas DevOps que parecen ser populares, descárguelas, siga el manual y simplemente hágalo.

  • Vagabundo
  • Ansible
  • Estibador
  • Kubernetes / OpenShift

Esto le dará un buen comienzo con las herramientas más cercanas al lado de "Ops" y, si logra comprender también por qué y para qué se utilizan estas herramientas, lo convertirá en un miembro digno de la mayoría de los equipos. Puede recoger los bits y piezas más del lado del desarrollador a medida que avanza (es decir, canalizaciones CI / CD, etc.).

AnoE
fuente