Node.js, el comienzo de una revolución organizacional.

Lo que pocos están viendo.

Equipo Hackealo
Hackealo
Published in
5 min readSep 17, 2016

--

Para finales del 2013 Node.js ya daba señales de que venía para ser un jugador importante en el mundo tecnológico. Para ese entonces ya contaba con más de 32,000 paquetes y 20,000 autores en el registro público de NPM, y con early adopters de la talla de Walmart, PayPal y Groupon. Todo esto en tan sólo 4 años desde su anuncio en la JSConf del 2009 — Wow!. Hoy en día cuenta una de las comunidades con mayor crecimiento, el registro central de npm.js ya superó las 2 billones de descargas, la demanda de programadores de esta tecnología es cada vez mayor, empresas como Uber, LinkedIn y Netflix ya le están usando y cuenta con un interés en considerable ascenso en comparación con otras tecnologías populares:

Google Trends

Sí. Impresionante. Pero más allá de la efervescencia, ¿qué es lo que no estamos viendo?

Un poco de contexto

Para entender la situación es necesario comprender por qué es elegido:

Node.js se debe gracias al lanzamiento del V8 JavaScript engine de Google y a la perspicacia de Ryan Dahl, su inventor, quien identificó que la ejecución del mismo podía dar pie a un nuevo concepto de server-side JavaScript. Las 4 principales características que motivan a los programadores a trabajar con (y pedir en sus empresas para trabajar con) Node.js son:

  • I/O Asincrónico: La naturaleza asincrónica de Node.js es ideal para atender muchos de los problemas comunes en el desarrollo web, particularmente en escalabilidad y performance.
  • Sin limitaciones entre front y back: Node.js es Javascript, así que el mismo lenguaje puede ser utilizado en backend and frontend, lo que permite una enorme flexibilidad en el desarrollo. Y si somos sensatos, todo programador conoce JavaScript (así sea un poco).
  • Arquitectura orientada a eventos: las Real-time web apps (como chat apps, juegos, etc.) encuentran en la arquitectura de Node.js grandes ventajas dado que tanto el client-side como el server-side están escritos en JavaScript, potenciando el proceso de sincronización.
  • Comunidad activa y en crecimiento: Al ser una tecnología open source con una comunidad activa, Node.js cuenta con un interesante (y dinámico) repositorio compartido con herramientas y módulos que potencian la productividad.

Y aunque sus críticos digan que cuenta con desventajas como la falta de librerías robustas y con estándares comunes o que no es ideal para aplicaciones web complejas, lo cierto es que Node.js está pasando por un proceso madurativo estable y sostenido que brinda tranquilidad a sus adeptos.

Analizando el fenómeno

¿Qué llevó a empresas como Netflix y Uber a utilizar Node.js?, ¿De donde viene el rápido crecimiento y popularidad entre las empresas?

Más allá de los beneficios que ven los programadores en Node.js y que han disparado su popularidad, del lado de las empresas el interés se debe a 3 simples razones. En primer lugar, la naturaleza asincrónica de Node.js le permite beneficiarse de rápidos procesamientos I/O, produciendo tiempos de carga rápidos y sensibles, incluso para las aplicaciones más complejas y altamente concurrentes, y esto es fundamental para la creación de aplicaciones modernas (con UIs responsive y sistemas distribuidos). En segundo lugar, el desarrollo modular que propone Node.js permite validar rápidamente funcionalidades, facilita la escalabilidad y permite ‘jugar’ con la complejidad de la solución, y gracias a esto — y a las contribuciones en la creación de módulos por parte de la comunidad — se pueden implementar en corto tiempo soluciones sólidas. Y en tercer lugar, la practicidad que conlleva — en lo técnico — manejar un mismo lenguaje para server-side y client-side, también impacta en ‘la gestión’ pues ahora 1 habilidad tiene doble aplicación y si a esto se suma la fácil curva de aprendizaje que tiene Node.js y el rápido crecimiento de la comunidad JavaScript en general, los esfuerzos para atraer y retener talento son más efectivos, pues ya no tendrían que buscar varios programadores expertos en varios lenguajes.

Es decir, con Node.js las empresas están a la vanguardia tecnológica, se mantienen competitivas con respecto a las soluciones que ofrecen y alivian un poco el problema de reclutar talento. Tiene sentido, ¿no?

Las implicaciones de lo anterior son claras: al poder implementar soluciones con mayor rapidez se potencia la creación de nuevas y mejores soluciones; salir al mercado con nuevos productos o hacer nuevos releases se da en menor tiempo y se potencia la competitividad. Empresas que operan en mercados dinámicos y ‘agresivos’ pueden llegar a percibir Node.js como un MUST, lo que se se traduciría en mayor y más frecuente adopción por parte de más empresas, particularmente aquellas con entornos dinámicos e innovadores: las startups. Algo que ya está sucediendo.

Empresas como Groupon y PayPal tuvieron la visión oportuna y hoy pueden disfrutar de los beneficios que brinda Node.js. Kudos para ellos. Pero una gran parte de las economías, los late adopters, habrán de llegar a ese entendimiento más adelante. Como siempre lo hacen. Y en Latinoamérica más tarde aún. Y aquí está el problema: la adopción por parte de los programadores va a un ritmo mucho más rápido que el de las grandes empresas, y en consecuencia el mejor lugar para formar, explotar y perfeccionar sus habilidades termina siendo las startups (Algo que está empezando a suceder). He aquí, la probable causa de la revolución organizacional:

¿Cómo incorporar profesionales al ‘mundo corporativo’ cuando en esencia son del ‘mundo startup’?

Cuando Node.js llegue a ser realmente una tecnología mainstream, las empresas — particularmente late adopters y especialmente en LATAM — fallarán, más que ahora, en atraer y seleccionar “Programadores Node.js experimentados” y en ese entonces seguramente veremos más ‘multinacionales importantes’ ofreciendo realmente oficinas estilo Google, mesas de ping-pong y posibilidad de trabajar remotamente en serio. El tiempo lo dirá.

¿Interesante? — Comparte tu comentario.

Si estás buscando oportunidades Node.js en empresas que están a tu nivel, ingresa ahora en www.hackealo.co y recibe ofertas pensadas para ti.

--

--

Equipo Hackealo
Hackealo

Hackealo es el único sitio de empleos pensado por y para programadores, donde las empresas compiten por contratarte. www.hackealo.co