descubre qué es full stack developer en esete post

Según Google Trends, el volumen de búsqueda de términos como, ¿Qué es Full Stack? y Full Stack Developer ha aumentado un 120% en los últimos 5 años.

Este perfil se ha convertido en una especie de santo grial para todo tipo de empresas.

¿A qué se debe esta popularidad? ¿Se está quemando el término?

Y lo más importante, ¿Qué es Full Stack y qué significa realmente ser un verdadero Full Stack Developer?

Empecemos por el principio.

El esclavo, el liberto y el arquitecto

A principios del año 2.600 AC, Asterión logró el puesto que llevaba buscando toda su carrera como embajador del rey de Creta: la corte del faraón Kheops. Nada más llegar, decidió ver los alrededores de la capital. No muy lejos de la orilla del Nilo, vio una gran cantidad de gente, acémilas y materiales de construcción.

Se acercó para ver mejor lo que pasaba y se dirigió a un esclavo:

Perdona, pero ¿me podrías decir qué estás haciendo?

¿Pues no lo ves? Estoy poniendo ladrillos.

“Gracias” dijo Asterión, por decir algo, y pensó para sus adentros: éste sabe aún menos que yo lo que pasa aquí.

Luego le hizo la misma pregunta a un liberto, y éste le contestó que estaban poniendo ladrillos para hacer una pared. En eso, el liberto vio los ladrillos que había puesto el esclavo y se puso a discutir con él a gritos, pues no estaban perfectamente alineados.

Mientras esos dos discutían, Asterión vio acercarse otro hombre, éste con más pinta de espabilado, así que decidió hacerle la misma pregunta. 

Estamos construyendo una pirámide para el Faraón y va a ser el mayor monumento jamás creado por el hombre. Será una obra tan magnífica que el nombre de Kheops jamás será olvidado, por mucho que pase el tiempo, y dentro de tres mil años, los hombres aún se asombrarán al verla. Era el arquitecto real.

Al ver al liberto y el esclavo que seguían discutiendo, el arquitecto le pidió a Asterión que lo disculpase y se dirigió a los dos. Les explicó que esa pared era una pared de soporte y oculta. Iría tapada y nadie la vería, así que no tenía ninguna importancia si una piedra sobresalía un poco. Que dejasen de hacer el idiota discutiendo sobre aquello que no tenía importancia y volviesen a su trabajo.

Si esto fuese una fábula zen, ahora diríamos que en ese momento Asterión alcanzó la iluminación. Como no lo es, te diré a tí, lector, que sigas leyendo, pues al final del post tú sí que alcanzarás la iluminación, pequeño saltamontes.

Lo que esta fábula ilustra, es la importancia de tener una visión amplia y clara de lo que se está haciendo, y el peligro de convertirse en lo que los americanos llaman un “one trick pony”. Un pony que solo sabe hacer un truco, es poco útil en el circo, y lo que es peor, su situación es muy arriesgada: en el momento que ese truco deja de ser interesante, lo mandan al carnicero.

Si has llegado hasta aquí te estarás preguntando aún ¿Qué es un Full Stack?

Pues bien, el arquitecto de la fábula, es lo que nosotros llamamos un Full Stack. En KeepCoding sólo formamos a Full Stacks, en diferentes áreas,  y en este post te explicaré por qué eso es vital en cada una de las áreas que cubrimos y por qué no deberías jamás formarte para ser esclavo o liberto, sino siempre para ser el arquitecto.

¿Qué es Full Stack en realidad?

La expresión Full Stack surgió y se puso de moda hace algunos años en EE.UU. Se relaciona directamente con la programación y desarrollo web, a día de hoy es muy usada y “abusada”, así que es vital entender muy bien lo que significa. 

Para entenderlo dentro del mundo tecnológico, primero tenemos que entender la estructura o arquitectura de cualquier producto de software moderno.

funcionamiento rest api full stack keepcodingTodo producto de software moderno que usas a través de tu móvil o de una web, es mucho más complejo de lo que crees y es mucho más que sólo una app o una web. Es un conjunto de ellas trabajando juntas. Usaremos como ejemplo, a Strava, una “app” (recuerda, es mucho más que eso) que sirve como red social para deportistas, donde puedes registrar tus actividades en distintos deportes.

La estructura que vamos a explicar es común a casi cualquier otro producto moderno de software, como por ejemplo Facebook, Google Drive, Spotify, Youtube, Whatsapp, Paypal, etc…

Todas tienen un Backend

El backend es donde está de verdad la chicha del producto. Es equivalente a la trastienda de un negocio físico: no se ve, pero es de vital importancia. Es donde se guardan los usuarios, las actividades, las relaciones entre usuarios, los grupos, etc. Todo esto suele estar en la nube y hay lenguajes de programación y herramientas especialmente adecuadas para este componente.

REST API

REST API es un mecanismo de comunicación por el que tiene que pasar todo aquel quiera “hablar” con el backend. 

Clientes

Los clientes son diferentes aplicaciones que nos permiten interactuar con el backend. Es lo que vemos. Algunos ejemplos son la app para Android, la app de iOS y la web. Todos son como ventanas que permiten que los usuarios interactúen con el backend. También hay lenguajes específicos para cada uno de estos clientes (Android, iOS o Web).

Si nos fijamos sólo en la parte web, tendríamos este corte del diagrama anterior:
cliente web rest api full stack

Full Stack es una “pila completa”

En resumen ¿Qué es Full Stack? 

Si te fijas, los diferentes componentes uno encima de otro, parecen una pila. Pila, en Inglés, se dice “Stack”, y Full Stack es “pila completa”.

Por lo tanto, el origen de la expresión Full Stack es para referirse a aquellos programadores web que sabían crear ambos sistemas, el backend y el cliente web (también llamado frontend).

En KeepCoding, usamos el término Full Stack de forma más amplia, para referirnos al profesional con una visión arquitectónica amplia y clara de los principales componentes con los que debe de trabajar en su área de especialidad. Algo como el arquitecto de la fábula. 

Volviendo al ejemplo web, si sólo sabes algo de HTML y CSS, sólo podrás hacer el aspecto cosmético del cliente web, pero nunca su funcionalidad. Eres el esclavo de la fábula.

suscríbete a la nerdsletter de keepcoding

Si además sabes algo de JavaScript, normalmente usando un solo framework sencillo, como pueda ser Express.js, podrás hacer parte de la funcionalidad, mientras se use la única herramienta que conoces (Express). El día que eso cambie estás perdido. Eres el liberto de la fábula.

Sin embargo, si sabes Javascript en profundidad, HTML, CSS, programación backend con node.js, arquitectura de microservicios, React, bases de datos relacionales y NoSQL, autorización, código seguro, despliegue en la nube, creación y consumo de APIs REST y un largo etcétera, serás un Full Stack Web de verdad  y serás el arquitecto de la fábula.

Para saber más, en este post descubrirás todo lo que necesitas y el panorama sector laboral del Desarrollo Web.

¿Por qué es importante un profesional Full Stack?

Para la empresa

Para la empresa es esencial el tener desarrolladores o profesionales Full Stack en general. ¿Por qué? Porque estos perfiles son capaces de crear y entender la estructura general del producto, plantear una arquitectura de software, eficiente y que pueda crecer, no crearán problemas en otros componentes por su desconocimiento del mismo y su productividad será muy superior al que va dando tumbos.

Los puestos de trabajo que están en alta demanda creciente y particularmente bien remunerados, son para los Full Stack, y aquí no entran ni los maquetadores ni tampoco los programadores frontend. 

Las habilidades que las empresas necesitan y las que aseguran trabajo en cualquier parte del mundo y muy bien pagado, son las propias de un Full Stack.

Para el profesional

Además de tener trabajo asegurado en cualquier parte del mundo y para el resto de tu vida, que no es poco, hay otros aspectos de vital importancia:

Empleabilidad que se mantiene en el tiempo

Además de saber qué es Full Stack, también tienes que saber que el mundo del software y de la tecnología cambia a gran velocidad. Las herramientas e incluso lenguajes de programación habituales cambian a cada pocos años, y es vital que estés preparado para hacerlo en poco tiempo, para así no perder tu empleabilidad.

Si al esclavo que ponía ladrillos, le dicen que a partir de hoy, se usarán paneles de pladur, estará perdido, mientras que al arquitecto le dará igual.

De la misma forma, si la tecnología de moda para backends cambia de Node a GO, o la herramienta para visualización de datos de moda cambia, a un profesional  Full Stack de su área le llevará unas dos semanas hacer la transición.

En resumidas cuentas, el ser un Full Stack requiere algo más de tiempo, algo más de profundidad y amplitud, pero permite que laboralmente estés tranquilo y tengas tú el control de la situación.

Te puedes formar como frontend en 3 meses, pero tardarás otros tantos o más en conseguir tu primer empleo, puesto que hay muchos como tú, no ofreces mucho más y  tu crecimiento en la carrera estará limitado. Formarte como Full Stack te llevará de 6 a 12 meses, pero la mayoría de nuestros alumnos son contratados mientras todavía están cursando su bootcamp, y una vez en una empresa, su formación les permite tener espacio de crecimiento profesional muy acelerado y al ser un activo valioso y escaso, sólo ellos deciden cuándo cambiar.

Conclusión

El esfuerzo que tienes que hacer para convertirte en el arquitecto de la fábula, es mayor. No obstante, el premio es muchísimo mayor y es el único que justifica el coste en tiempo y dinero que implica el reciclarse.

En vez de dedicar 3 meses a formarte para ser el liberto y estar luego meses buscando un primer empleo, fórmate para ser el arquitecto. La inmensa mayoría de nuestros alumnos son contratados antes de terminar su bootcamp y al terminar, están encarrilados en una profesión de éxito y alta demanda, es decir, realmente han resuelto su problema en vez de poner un parche. 

Conoce nuestros Bootcamps

Full Stack Jr. Bootcamp – Aprende a programar desde cero
Desarrollo Web Full Stack Bootcamp
Desarrollo de Apps Móviles Full Stack Bootcamp
Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp
DevOps & Cloud Computing Full Stack Bootcamp
Ciberseguridad Full Stack Bootcamp
Máster en Tecnologías Exponenciales de la Computación
Marketing Digital y Análisis de Datos Bootcamp

¡Pide más información! Nosotros te llamamos