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.
- ¿Cuáles son las otras oportunidades en el campo de TI aparte de la codificación / desarrollo con conocimientos básicos de programación Java?
- ¿Existe alguna correlación entre la capacidad del desarrollador y el eclipse vs vim?
- Estoy escribiendo una tesis escolar sobre TDD aplicado a aplicaciones web. ¿Qué tipo de proyecto sería mejor para exhibir TDD?
- ¿Cuál es el punto de obtener un título en informática hoy en día?
- ¿Por qué algunas personas odian a Oracle?
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.