Focos de atención
Full Stack Developer, Full Stack Software Engineer, Full Stack Web Developer, Full Stack Architect, Full Stack Programmer, Full Stack Specialist, Full Stack Consultant, Full Stack Solutions Engineer, Full Stack Development Engineer, Full Stack Application Developer
La creación de un sitio web personalizado conlleva mucho trabajo, por lo que algunos desarrolladores deciden especializarse en una sola área. Los desarrolladores de front-end, por ejemplo, se centran en las áreas que los usuarios pueden ver y utilizar, mientras que los desarrolladores de back-end se preocupan por los aspectos técnicos de detrás de la escena. Los desarrolladores de pila completa, sin embargo, se encargan de toda la enchilada (nota: los ingenieros de pila completa son esencialmente desarrolladores de pila completa de nivel superior, para que sepas).
Algunos clientes no quieren la molestia de tratar de averiguar quién hace qué. Sólo quieren a alguien que pueda hacer todo. Dependiendo del proyecto, puede haber un solapamiento entre las tareas de front-end y back-end de todos modos. Dicho esto, no todos los Full Stack Engineers son responsables de construir sitios web completos desde cero. Es posible que trabajen con equipos a medida que el proyecto pasa de la fase de idea a la de desarrollo y lanzamiento.
Tener un sólido conocimiento de cómo funcionan ambos extremos da a los ingenieros de pila completa una gran ventaja. Si se necesita ayuda, son capaces de meterse de lleno en el problema. El Full Stack equivale básicamente a ser un híbrido de dos (o más) campos profesionales combinados en uno. Dominan todas las áreas, desde los lenguajes front-end como HTML, CSS y JavaScript, hasta algunos lenguajes back-end como PHP, Ruby o Python. Otros talentos pueden ser el diseño, la experiencia del usuario y la gestión de proyectos.
- Amplia participación en el desarrollo de los sitios de los clientes
- Trabajar con una amplia gama de lenguajes y herramientas de programación
- Exploración de posibilidades ilimitadas relacionadas con la creación de sitios web
- Construir sitios potentes y vanguardistas para ayudar a las empresas a dominar sus espacios
- Amasar habilidades que puedan ser utilizadas a distancia, en cualquier parte del mundo
Horario de trabajo
- Los ingenieros de pila completa tienen los platos llenos cuando se trata de cargas de trabajo. Como raza relativamente rara (algunos dicen "mítica") en el mundo de las TI, estos trabajadores pueden esperar un horario regular a tiempo completo. La oferta de talentos altamente cualificados no satisface actualmente la demanda, por lo que puede ser necesario hacer horas extras para algunos puestos. Muchos desarrolladores trabajan a distancia desde casa o por contrato. También hay un mundo cada vez más amplio de trabajadores autónomos en este campo, muchos de los cuales pueden operar en el extranjero y, por tanto, ofrecer tarifas muy competitivas.
Tareas típicas
- Como ingeniero, espera servir en una capacidad de gestión de proyectos
- Reunirse con clientes, diseñadores de experiencia de usuario e interfaz de usuario y otros desarrolladores para discutir las funcionalidades solicitadas, el diseño del sitio web y las ideas de contenido.
- Planificación de los trabajos técnicos de construcción necesarios
- Establecer procesos para añadir nuevas páginas
- Escribir código aplicable utilizando una variedad de lenguajes
- Desarrollo de arquitectura front-end y aplicaciones back-end
- Creación de bases de datos y servicios
- Comprobación de errores y capacidad de respuesta
- Garantizar la facilidad de uso de los móviles
- Trabajar con interfaces de programación de aplicaciones (API)
- Elaboración de gráficos a partir de las aportaciones de otros miembros del equipo y de los clientes
- Actualizar los sitios existentes para añadir nuevas características de diseño o funciones
- Responsabilidades adicionales
- Realización de pruebas exhaustivas para garantizar que el código funciona como se desea
- Copia de seguridad de los archivos en caso de problemas
- Estar al día de los cambios y tendencias del sector
Habilidades blandas
- Capacidad de aprender de los comentarios constructivos
- Atención al detalle
- Conocimiento de la psicología del usuario
- Creativo y artístico
- Capacidad de atención al cliente
- Decisividad
- Muy organizado
- Capacidades de liderazgo y gestión
- Paciente y analítico
- Etiqueta adecuada para el teléfono y el correo electrónico
- Gran capacidad de comunicación
- Orientación al trabajo en equipo y a la consecución de objetivos
- Habilidades de gestión del tiempo
Habilidades técnicas
- Conceptos básicos de front-end
- Lenguajes del lado del servidor
- Conocimiento de la tecnología de bases de datos
- Herramientas de automatización
- Línea de comandos
- Preprocesadores CSS
- Marcos de trabajo de JavaScript
- jQuery
- Diseño responsivo
- Prueba y depuración de programas
- Software de control de versiones
- Instituciones académicas
- Agencias de diseño de sistemas informáticos
- Empresas
- Agencias gubernamentales
- Sanidad
- Grandes empresas y organizaciones
- Empresas de consultoría de gestión
- Medios de comunicación y entretenimiento
- Militar
- Publicación
- Autónomos
¿Quién no tiene una página web a estas alturas? Desde organismos públicos y empresas privadas hasta estudios de cine y artistas musicales, los sitios web son la forma de compartir información y vender productos y servicios en el mundo moderno. Un sitio web es a menudo el primer (y en algunos casos, el único) contacto que un usuario o consumidor tiene de una organización. Su experiencia puede dictar si se queda en el sitio y se compromete (o compra algo), o si por el contrario decide marcharse y buscar en otra parte.
En gran medida, esa decisión depende de lo bien que haya hecho su trabajo el Full Stack Engineer. Los sitios web que no son atractivos, que no son convincentes, que son difíciles de navegar o que están llenos de fallos, pueden hacer desaparecer el interés antes de que el usuario tenga la oportunidad de comprar lo que se vende. Un sitio web mal construido también deja a las organizaciones (y a los datos de sus usuarios) en riesgo de violaciones de seguridad. Tales compromisos pueden destruir la reputación de una marca al quitar la confianza de los usuarios (especialmente cuando se roban los datos de millones de personas a la vez).
La presión recae sobre los Ingenieros de Pila Completa para crear sitios atractivos y con capacidad de respuesta que impulsen las ventas o la interacción de los usuarios y que, al mismo tiempo, protejan a la organización y a los usuarios. Cuando las cosas van mal o no son como se habían planeado, los gerentes se fijan en quién construyó sus sitios web. Como dicen, si no puedes soportar el calor, ¡no te metas en la cocina!
Mientras las tiendas físicas y las agencias siguen enfrentándose a la caída del tráfico, las empresas se han adaptado trasladándose cada vez más a Internet y a las aplicaciones móviles. Todo el mundo sabe que Amazon, Apple y Netflix han revolucionado nuestra forma de comprar, consumir medios de comunicación y socializar. Pero hoy en día, prácticamente todas las empresas están entrando en acción.
Desde las start-ups y las pequeñas empresas hasta los emprendedores digitales, todo el mundo quiere un sitio web, pero no todos tienen el mismo presupuesto. Los sitios de bricolaje como Wix, Squarespace, Site123, GoDaddy y WordPress hacen que sea más sencillo que nunca crear sitios rápidos y baratos. Mientras tanto, para los clientes que no tienen los conocimientos básicos, no quieren aprenderlos o simplemente necesitan algo más personalizado, los ingenieros de pila completa siguen siendo el producto estrella.
Sin embargo, no todo el mundo puede permitirse contratar a un ingeniero a tiempo completo, por lo que muchos trabajan mediante contratos cortos, a menudo haciendo el trabajo a distancia. La desventaja es que algunas organizaciones que quieren reducir los costes recurren a talentos extranjeros o autónomos. Esto significa que los ingenieros de pila completa tienen que mantener sus habilidades al día y encontrar maneras de distinguir sus servicios de la competencia.
Como se puede adivinar, es probable que los Full Stack Engineers siempre hayan estado interesados en los ordenadores y la tecnología, y que hayan disfrutado pasando el tiempo dentro de casa. Aunque las habilidades sociales son una parte importante de la carrera, los trabajadores probablemente se sentían cómodos estando solos durante largas horas cuando eran más jóvenes. Son creativos, inquisitivos y están deseosos de descubrir cosas nuevas, especialmente en áreas de las que la mayoría de la gente no sabe nada. Literalmente, están aprendiendo nuevos lenguajes, pero los que utilizan los ordenadores en lugar de las personas.
Para ser un Full Stack Engineer de éxito, es bueno tener un gran interés por el arte y el diseño. Estas pasiones suelen desarrollarse al crecer, ya sea en casa o en la escuela. Puede parecer que este trabajo requiere personalidades de tipo "solitario", pero en realidad hay una cantidad considerable de trabajo en equipo y colaboración. Es probable que los Full Stack Engineers estén encantados de unirse a grupos y participar en actividades sociales, o incluso de organizarlas. Se les da bien "ver el panorama general", establecer objetivos y gestionar las tareas para garantizar que se cumplan los objetivos finales.
- Los ingenieros de pila completa suelen necesitar una licenciatura en informática o un campo relacionado
- Los conocimientos de programación y la experiencia laboral práctica son fundamentales
- Conceptos básicos de front-end - lenguajes HTML, CSS, JavaScript
- Lenguajes del lado del servidor - Python, Ruby, Java, PHP, .Net
- Tecnología de bases de datos - MySQL, Oracle, MongoDB
- Herramientas de automatización (Grunt, gulp)
- Línea de comandos
- Flash
- Preprocesadores CSS - Sass, Less, Stylus
- Frameworks de JavaScript - Ember, React, Bootstrap, AngularJS
- jQuery
- Diseño responsivo
- Prueba y depuración de programas
- Software de control de versiones (Git)
- Experiencia con la metodología ágil
- Cursos para desarrollar habilidades blandas como la fluidez del inglés, la claridad en la redacción y la expresión oral, el trabajo en equipo y el liderazgo
- Aprende por tu cuenta con lo siguiente:
- Oferta de cursos Full Stack de LinkedIn Learning
- Desarrollador web full stack de Udacity
- Fundamentos de TI de CompTIA
- Udemy:
- El completo campamento de desarrollo web 2020
- Coursera:
- Especialización en desarrollo de aplicaciones web y móviles multiplataforma
- Desarrollo web full stack con especialización en React
- Diseño web para todos: Fundamentos del desarrollo web y especialización en codificación
- Especialización en diseño y desarrollo de sitios web con capacidad de respuesta
- Cursos edX de Desarrollador Web Full Stack (edX)
- Pluralsight
- Certificaciones específicas de proveedores/tecnologías como Google Cloud, RedHat, Microsoft (MTA, MSCA, MSCE)
- No todas las titulaciones universitarias pueden darte las habilidades prácticas necesarias para este campo profesional, así que considera qué programas ofrecen las mismas experiencias que un Bootcamp
- Revisa detenidamente las estadísticas de los programas en cuanto a la colocación en puestos de trabajo después de la graduación
- Investiga todos los servicios de carrera, para asegurarte de que pueden ayudarte con la redacción del currículum, los simulacros de entrevistas u otras áreas
- Lea las biografías de los profesores; revise las instalaciones del programa, las áreas de investigación y la financiación.
- Asegurarse de que la institución está plenamente acreditada
- Considere los pros y los contras de tomar clases en línea o híbridas
- Recuerda que hay una diferencia entre ser un Full Stack Developer y un Full Stack Engineer. Una encuesta realizada por Stack Overflow encontró que el 25% de los desarrolladores profesionales no tienen una licenciatura. De los que sí la tienen, un tercio no la tenía en CS de ingeniería de software. Es más probable que un puesto de ingeniero requiera una licenciatura
- Practique y practique más. La mayoría de los aspectos básicos que necesitarás pueden aprenderse en tu tiempo libre (consulta nuestras recomendaciones sobre educación y formación más arriba)
- ¿Hemos dicho ya que hay que practicar? Sigue haciéndolo, pero no te concentres demasiado en un área; un Full Stack Engineer necesita dominar muchas habilidades
- Hay que tener en cuenta que existe un debate sobre el concepto de desarrolladores de pila completa y sobre cómo una persona puede llegar a dominar tantas habilidades. Una de las claves es empezar pronto, organizarse y utilizar el tiempo de forma eficiente.
- Mantenga una cartera de proyectos que haya completado, con notas detalladas de lo que hizo y cuáles fueron los obstáculos y soluciones
- Ayuda a tu escuela y a tus amigos con sus sitios web, y obtén algo de práctica gratuita en el mundo real
- Buscar prácticas que ofrezcan experiencia laboral práctica (y remunerada)
- Consigue algunas credenciales de freelance en Upwork y empieza a ganar votos.
- Únase a clubes de informática, establezca una red de contactos con sus compañeros y busque codificadores experimentados que le sirvan de mentores.
- Estudie el arte de la comunicación. Aprenda a hablar, escuchar y escribir de forma profesional, convincente y con confianza
- No te duermas en los laureles. Mantén tus habilidades actualizadas con mucha lectura y trabajo práctico
- Forma a otros, en persona o en línea, escribiendo blogs informativos o creando vídeos en YouTube. Practicar la explicación de las cosas a los demás y recibir comentarios de la audiencia.
- Leer artículos y participar en debates en Quora, Reddit, Dev.to y otros espacios
- Haz el test de TripleByte y te pondrán en contacto con los empleadores si superas la prueba de selección
- Busca ofertas de empleo a través de Indeed, Monster, USAJobs, ZipRecruiter, LinkedIn, Velvet Jobs y Glassdoor
- Dile a tu red que estás buscando trabajo. Pídeles que se pongan en contacto contigo con cualquier buena pista
- Pide al departamento o al centro de orientación profesional de tu escuela información sobre ferias de empleo, eventos de contratación, prácticas y otros tipos de ayuda, como la redacción de currículos y la práctica de entrevistas.
- Preste especial atención a la experiencia y las competencias exigidas en las ofertas de empleo.
- La competencia es feroz, así que concentra tus energías en los puestos de trabajo para los que estás altamente cualificado, y adapta tu currículum a cada puesto específico al que te presentes
- ¡Piensa como un reclutador! Lee el artículo de HackerEarth "Cómo contratar a un desarrollador full stack"
- Incluye un enlace a tu portafolio de Full Stack, que debe enumerar tus habilidades tecnológicas, proyectos personales y proyectos en GitHub, CodePen u otros sitios
- Contextualizar: explicar el Quién, el Qué, el Dónde, el Cuándo, el Porqué y el Cómo.
- No reinventes la rueda del currículum; hay un montón de plantillas personalizables en línea
- Causar una primera impresión increíble en las entrevistas y mostrar tus habilidades sociales
- Si trabajas en una organización, deja claro que te interesan los puestos de mayor nivel y que quieres aprender los procesos internos para alcanzar esos objetivos
- Podría tener sentido realizar un máster en desarrollo web; habla con tu supervisor o gerente para conocer sus requisitos para la promoción
- En el nivel de Full Stack Engineer, tendrás que entender qué tipos de puestos superiores están disponibles para ti. Algunas empresas pueden no tener oportunidades de promoción
- Para avanzar, puede ser necesario considerar puestos en otros empleadores
- Si eres autónomo, los únicos límites son los que te impones tú mismo. Ponga el listón tan alto como quiera, y busque la educación y la formación que necesite para conseguirlo.
- En este campo, es imprescindible estar al tanto de las novedades. Los cambios no se producen de la noche a la mañana, pero pueden sorprenderte
- Cumplir siempre los plazos y hacer un trabajo increíble para sus clientes
- Promociónate como experto en la materia. Haz tu propia página web, tu canal de YouTube y tus cuentas en las redes sociales para llamar la atención sobre tu marca personal.
- Da clases. Si tienes tiempo y credenciales, busca un trabajo a tiempo parcial como instructor. Estar afiliado a una universidad siempre queda muy bien en el currículum.
- Publica en revistas del sector como Net, How, Layers, Computer Arts, Digital Arts, Web Designer, CMYK y otras.
Páginas web
- Association for Computing Machinery
- Brillante
- Manual de Perspectivas Laborales de la Oficina de Estadísticas Laborales
- CodeSignal
- Codewars
- CodinGame
- CompTIA
- Asociación de profesionales de la informática CompTIA
- Coursera
- edX
- Ejercicio
- freeCodeCamp
- Frontendmasters
- HackerEarth
- HackerRank
- Javascript30
- Escuela de Ritmos
- Udemy
- W3Schools: Javascript
- Organización Mundial de Webmasters
Libros
- Proyectos Full-Stack React: Learn MERN stack development by building modern web apps using MongoDB, Express, React, and Node.js, 2nd Edition, by Shama Hoque
- El desarrollador de pila completa, por Chris Northwood
- Hands-On Full-Stack Web Development with GraphQL and React, por Sebastian Grebe
- Modern Full-Stack Development, por Frank Zammetti
- Diseño web con HTML, CSS, JavaScript y jQuery Set, por Jon Duckett
- Web Coding & Development All-in-One For Dummies, por Paul McFedries
Convertirse en un Full Stack Engineer no es un asunto fácil. Como hemos mencionado, se trata básicamente de dos trabajos combinados en uno. Muchas personas prefieren centrarse en el desarrollo de front-end o back-end. Mientras tanto, algunos trabajadores deciden alejarse del desarrollo web por completo. La Oficina de Estadísticas Laborales ofrece muchas trayectorias profesionales alternativas, como:
- Gestores de sistemas informáticos y de información
- Programadores informáticos
- Especialistas en soporte informático
- Analistas de sistemas informáticos
- Administradores de bases de datos
- Diseñadores gráficos
- Analistas de seguridad de la información
- Artistas multimedia y animadores
- Desarrolladores de software