¿El concepto de “ingeniero de pila completa” va en contra de la cultura / mentalidad de DevOps?

Tanto Full Stack Engineering como Devops indican enfoques nuevos y menos especializados para el desarrollo web.


Tradicionalmente, los roles de desarrollador web se dividían en back-end (trabajando con bases de datos y lógica de servidor) y front-end (diseñando e implementando los componentes orientados al usuario de una aplicación web). Un ingeniero de pila completa tiene cierto nivel de competencia en ambos.

Gracias a los potentes marcos de desarrollo web como Node.js / Express.js, Ruby on Rails y Python Django, es razonable esperar que todos los desarrolladores web puedan crear aplicaciones completas sin la ayuda de especialistas en front-end o back-end.

Por ejemplo, soy un ingeniero de pila completa y toco el front-end, el back-end y algunos aspectos de las “operaciones”, como escribir scripts para volcar mi base de datos en Amazon S3. Pero no soy absolutamente un SysAdmin o DevOps.

DevOps y Full Stack Engineers son roles complementarios. DevOps es un experto en scripting bash, que utiliza herramientas como Vagrant, Chef, Docker y otra infraestructura esotérica que está más allá de mi interés y comprensión.

Lo mismo puede decirse de los roles de Ingeniero de Garantía de Calidad. Claro, los ingenieros de Full Stack escriben pruebas automatizadas. Pero los ingenieros de control de calidad son expertos en encontrar debilidades en el código.

Para un inicio, puede usar Heroku en lugar de contratar un DevOps. Sus ingenieros de Full Stack pueden participar en un “ciclo de control de calidad”, lo que evita la necesidad de un ingeniero de control de calidad dedicado. La calidad y la infraestructura de su código no serán tan buenas, pero a menudo es una compensación económica que vale la pena.

Pero sería un error construir un equipo grande que constara solo de ingenieros de Full Stack. Necesitaría también DevOps e ingenieros de control de calidad.

La proporción de ingenieros de control de calidad a DevOps e ingenieros de pila completa también depende de lo que esté haciendo. Por ejemplo, las divisiones de productos web de Google pueden tener 10 ingenieros de pila completa por cada ingeniero de control de calidad. Hacen un uso extensivo de Google App Engine, por lo que necesitan menos DevOps (aunque su equipo de App Engine probablemente tenga un montón de DevOps). Vale la pena señalar que Google también tiene ingenieros dedicados de front-end y back-end.

Sin embargo, en compañías de Plataforma como Servicio como Heroku, sospecho que tendrían una proporción mucho más alta de DevOps a Full Stack Engineers.

Los ingenieros de Full Stack y DevOps, así como los ingenieros de control de calidad y los ingenieros de operaciones, son roles importantes de ingeniería de software, y generalmente no se consideran sustitutos directos entre sí.

More Interesting

¿Está Apple explorando tecnologías de ciudades inteligentes y oportunidades de implementación y en qué medida?

¿Por qué las aplicaciones o los juegos a menudo ofrecen la opción de idioma inglés británico o estadounidense? ¿Es la diferencia realmente notable e importante?

¿Qué son todos los CDN y cómo difieren en oferta y precio?

¿El curso de certificado de posgrado de 'minería de conjuntos de datos masivos' que ofrece Stanford vale el costo de $ 14,000- $ 17,000?

Cómo verificar la calidad del código que he escrito

¿Todas las empresas dan a sus empleados opciones sobre acciones?

¿Prefieres ser un ingeniero mediocre en un equipo de alto rendimiento, o un alto rendimiento en un equipo de ingenieros mediocres?

¿Cuál es una buena arquitectura de software para un análisis electoral y un sistema de informes?

¿Cuáles son algunas métricas estándar para rastrear la cantidad de errores en la base de código de un producto?

¿Cuáles son algunas buenas lecturas sobre arquitectura de software y CS general?

¿Cuáles son algunas de las cosas que los ingenieros de software indios odian más?

Tengo una nueva característica de producto para implementar en mi trabajo. ¿Cómo lo planeo? ¿Algún consejo sobre cómo desglosar las tareas?

¿Qué problemas biológicos / químicos podrían ser bien abordados por un científico computacional?

¿Por qué los programadores nunca reciben oficinas con puerta?

¿Qué tipo de empresas utilizan C como su lenguaje principal en el desarrollo de software?