Saber combinar habilidades en programación con las destrezas para liderar un equipo permite a un profesional full stack (programador experto backend y front-end) convertirse en un lead developer (profesional con una visión integral muy completa en desarrollo y con capacidad para liderar un equipo)
El mercado laboral que se conoce cambiará en un futuro cercano, según un estudio de la Universidad de Oxford. Así, un 47% de los trabajos que existen en la actualidad no seguirá vigente dentro de 20 años y 9 de cada 10 profesiones sufrirán una transformación, en gran medida por la incorporación de nuevas tecnologías en el ámbito laboral, con gran importancia de la ciberseguridad, el Big Data o la programación mobile o web.
¿Qué claves son necesarias para adquirir las competencias profesionales que serán demandadas en el mercado laboral a medio plazo? ¿Qué define a un programador full stack o a un lead developer, es decir, a un profesional experto y líder en programación tan demandado por las empresas tecnológicas?
Para Fernando Rodríguez, CLO de KeepCoding, la aceleradora de carrera para progrmadores, “hablamos de lead developer cuando un profesional reúne habilidades en distintos lenguajes de programación junto a las destrezas que le permiten liderar un equipo. La combinación de ambas es fundamental porque un lead developer es mucho más que un full stack, es lo que denominamos en KeepCoding un full circle engineer, es decir pasa de tener una visión completa de la programación a una perspectiva integral en desarrollo”.
Según los expertos de KeepCoding, entre las claves necesarias para convertirse en lead developer, se encuentran las siguientes:
Visión global: Para llegar a ser un lead developer es necesario conocer una amplia y variada gama de áreas de programación, desde backend y frontend a desarrollo web o mobile, entre otros; así como conocer el conjunto de herramientas y lenguajes para desarrollarlos. La clave es saber para qué sirve cada uno de ellos, qué características concretas tienen o por qué han sido desarrollados de una manera específica. No se trata de ser experto y dominar a la perfección un lenguaje o herramienta, sino de conocer lo fundamental de varios, para elegir el más adecuado para cada proyecto.
Adaptación por niveles: Para liderar la creación de un nuevo producto, un lead developer debe conocer los diferentes niveles para el desarrollo, desde los datos, a la logística o la presentación. Además de saber adaptarse a cada fase del proceso -construcción, despliegue, mantenimiento y explotación- del producto.
Elección óptima de tecnologías: El gran éxito de un lead developer es saber crear un software con los lenguajes y herramientas pertinentes para cada proyecto. Su función no es adaptar una problemática a un software tipo que ya conoce, sino liderar el desarrollo de nuevos productos afines a cada necesidad o problemática a solventa, con las herramientas y tecnologías adecuadas. Por tanto, es un profesional en reciclaje continuo para estar al día de las últimas herramientas y lenguajes de programación que demanda el mercado, a través de formación intensiva y práctica como la que ofrecen bootcamps impartidos por KeepCoding.
La programación como arquitectura: La principal función de un lead developer es diseñar la arquitectura de software adecuada para el proyecto y los recursos con los que cuenta la empresa. El éxito o fracaso final de un proyecto de software con frecuencia se decide en este primer paso.
Pensar en código: Al igual que ocurre con el dominio de un idioma extranjero, un un buen lead develper lo es cuando tiene la habilidad de procesar todos sus pensamientos en código, más que en palabras, y hablar de situaciones cotidianas en términos de algoritmo y programación. Una capacidad ligada también al interés por compartir y divulgar el conocimiento sobre programación con los demás.
Trabajo en equipo: Ser un lead developer de éxito está reñido con ser un profesional con excesivo ego. El objetivo de estos perfiles pasa por buscar la solución más acertada prescindiendo de sus preferencias personales y con capacidad de escucha y empatía, actitud positiva para asumir errores y potenciar las aportaciones de otros miembros del equipo.
A partir de estas claves, un profesional podría llegar a convertirse en un full stack o lead developer, dos de los perfiles más demandados en el mercado laboral actual por las empresas tecnológicas, cuya demanda no llega a veces a cubrirse por falta de profesionales que reúnan estos requisitos.