Ni te lo van a enseñar. En ninguna facultad.
Las cosas mas tecnicas no se enseñan en la facultad. Que para mi esta mal. Despues uno se recibe de ingeniero y termina haciendo agua en cosas basicas.
No necesitas javascript para nada de esto.
Lamentablemente todo es programacion estimado. Y en algun punto, o te adaptas, o quedas en el camino. Y ojo que al reves tambien, los desarrolladores tambien tienen que aprender algo de servicios. La tendencia es que los programadores sean responsables del codigo, y ademas del entorno donde se ejecuta, y que eso no sea tarea del sysadmin.
Supongamos que necesitas un stack compuesto de un balanceador, 3 o 4 servidores web, una DB, y un server de correo.
O lo haces todo a mano, o agarras por ejemplo Terraform, ni con AWS si queres, con vCenter, o con OpenStack, y definis con codigo usando Terraform, y con correr un comando tenes todo eso instalado, configurado y operativo, y encima reutilizable, cosa que si quieras hacerlo de nuevo no tenes que reescribirlo, o que si queres replicarlo es consistente, porque usas el mismo codigo, no dependes de no olvidarte ningun paso, o hacer algo de diferente manera sin querer.
La productividad se garpa, y mas si queres trabajar en lugares cada vez mas grandes y que paguen mejor.
Lo ideal es que los desarrolladores no sepan de infra en si (un poco nunca viene mal), pero si que empiecen a saber de servicios, y sobretodo de su entorno operativo.
Por ejemplo si haces una app en PHP, que ademas del codigo sepas definir el contenedor donde se va a ejecutar, con apache, php y los modulos necesarios. Que ya no dependas de un administrador de sistemas para eso, sino que sea parte de tu app.
Lo bueno de eso, es que si mañana queres implementar una nueva version de PHP, o necesitas un paquete de Linux para usar con tu app, tampoco vas a necesitar un administrador para eso, simplemente modificas la definicion del contenedor y queda listo. Y a lo que es codigo, es versionable, y automatizable. Un win-win.
Por ejemplo, en tu codigo tenes un docker file que dice esto:
Cuando se ponga a funcionar ese contenedor, es con lo que definio el desarrollador, no el administrador de sistemas.Código:FROM centos:7 RUN yum install httpd php php-mysql -y COPY * /var/www/html # Esto copia el codigo fuente al document root de apache CMD httpd -D FOREGROUND
Si mañana quiere agregar una config a apache, o agregar otro paquete a la linea de yum, no depende de alguien con permisos y burocracia, sino simplemente, esta de su lado.
Estos dias voy a subir algunas cosas al foro, veo que hay interes en el tema.