¿Cómo destacar en tu trabajo de 'lead developer'?

  • June 6, 2019

Este artículo forma parte de la sección Behind the Code, dirigida especialmente a programadores. Para leer otros artículos similares –que incluyen experiencias, entrevistas a personas conocidas del mundo del desarrollo de software, o artículos de reflexión sobre la programación–, no dudes en consultar nuestra sección Behind the Code, disponible íntegramente en inglés.

Aunque tu equipo ya sabe que conoces de memoria los "Design Patterns" del GoF y eres capaz de garantizar técnicamente la calidad de todo lo que se programa, tu papel de lead developer no se limita a concebir y escribir código. Diriges y representas a un equipo técnico. Por esta razón debes desarrollar otras competencias menos técnicas pero igual de importantes, como tu don de gentes, tu capacidad para aceptar tus responsabilidades y tu organización. Pero, ¡que no cunda el pánico! Nunca es demasiado tarde para mejorar este tipo de habilidades menos técnicas, conocidas como "soft skills". Aquí tienes algunos consejos que te ayudarán a convertirte en un gran lead developer.

Entiende que eres un modelo a seguir

Coge un boli, escribe "Soy un modelo" en unos cuantos post-it y pégalos en todas tus pantallas. Pero no un modelo del sector de la moda (siento decepcionarte) sino un modelo a los ojos de los programadores que forman tu equipo, que prestan atención a todo lo que haces y la manera en que lo haces.

Cada cosa que hagas puede tener un impacto en la confianza y la actitud del equipo. Por esta razón, te aconsejamos que:

  • adoptes una actitud de cooperación y apertura hacia los demás,
  • impulses nuevas ideas,
  • pongas de relieve los logros de cada uno siempre que puedas.

Tu papel de modelo requiere igualmente cierta humildad, pues a veces tendrás que prestar ayuda en tareas pesadas como configurar un ordenador nuevo, explicar los procesos de despliegue, hacer code reviews o incluso enseñar a depurar errores.

Mejora tus habilidades comunicativas

JavaScript, PHP, Python y Ruby son lenguajes muy bonitos pero, ¿y si mejorases el tuyo? Boris Gervaise, technical leader de Supralog, nos explica que un lead developer debe ser capaz de "transmitir claramente sus intenciones, explicar qué va a hacerse, por qué y los costes asociados". Es esencial que trates de mejorar tus habilidades comunicativas, seas capaz de adaptar tu lenguaje y dar más o menos detalles según la persona que tengas delante.

Algunos interlocutores necesitan tener información directa, corta y concisa. Otros necesitarán, por el contrario, conocer el razonamiento lógico que te ha llevado a optar por tal solución. Algunos frameworks como True Colors o el indicador de MBTI pueden ayudarte, ¡pero también puedes seguir tu instinto! Así podrás dar mejor feedback a los programadores y a la vez explicar adecuadamente los pormenores de los proyectos técnicos al resto de departamentos de la empresa. Por consiguiente esto te permitirá justificar los requerimientos técnicos ante el equipo de ventas y los requerimientos comerciales ante el equipo técnico.

Mejorar la comunicación verbal implica además un esfuerzo en cuanto a la capacidad de escuchar y entender a los demás. No solo debes prestar atención a lo que te dicen, sino también a la actitud y al estado de ánimo de tu interlocutor. Básicamente debes tener en cuenta la opinión de los demás y tratar de entender sus motivaciones y su manera de reflexionar. Según Jérôme Nadaud, actual director tecnológico de Living Actor (y ex subdirector de operaciones de SensioLabs), es fundamental que el lead developer "tenga buenas habilidades de relación y tenga carisma" y añade que "entender bien las necesidades del cliente para poder aportar la solución apropiada" es una de las competencias clave para convertirse en un buen lead developer.

Trata de ser organizado

Si antes eras programador, tendrás que concienciarte de que tu día a día y tus tareas van a cambiar de forma sustancial. Tendrás más autonomía, solicitarán tu ayuda más a menudo, te pedirán tu opinión, asistirás a más reuniones, e incluso puede que tengas que seguir varios proyectos de manera simultánea.

Por todas estas razones, es fundamental que te organices bien. Debes aprender a gestionar bien el tiempo, priorizar adecuadamente las tareas y, sobre todo, saber delegar siempre que sea necesario. Puedes facilitarte las cosas utilizando herramientas como la Matriz Eisenhower, haciéndote con una agenda y escribiendo la lista de las tareas pendientes, configurando alertas en tu móvil, elaborando un tablero Kanban con post-it, descargándote Trello, calculando el tiempo necesario para cada tarea, etc. También puedes probar primero todos estos métodos y elegir el que más te guste.

Aumenta las habilidades de tu equipo

Uno de los objetivos principales de un buen Lead Developer es aumentar las habilidades de los miembros del equipo. Esto empieza en el momento de la contratación y continua con el proceso de integración de los nuevos programadores. Los responsables de recursos humanos estarán encantados de que les ayudes a valorar las competencias técnicas y el potencial de los candidatos. Una vez elegida y contratada la persona, tendrás que gestionar su formación técnica.

En algunas ocasiones tendrás que supervisar a los programadores más júnior, al menos mientras estén en formación, aunque Boris Gervaise recomienda "no dar demasiados consejos, para que así el programador trate de resolver de forma autónoma al menos una parte del problema y progrese". Acompañar al equipo para aumentar sus habilidades requiere también crear un ambiente de trabajo estimulante. Organiza eventos que os permitan descubrir nuevas tecnologías o herramientas juntos. Ir a un taller o escuchar una conferencia fuera de la oficina os hará olvidar el planning de producción por un día y os permitirá desarrollar competencias técnicas diferentes a las que usáis a diario.

"Ayudar a la gente y hacerles crecer es el aspecto más bonito de este trabajo", concluye Boris Gervaise. Cuando un lead developer obvia esta importante función se arriesga a "encerrarse en un papel en el que los programadores de su equipo solo lo soliciten cuando algo les bloquee".

Mejora el rendimiento de tu equipo

Según Boris Gervaise, un excelente lead developer debe "ser un motor para mejorar el producto y la productividad de los equipos". Para ello debe utilizar sus conocimientos en cuanto a entornos, herramientas y métodos de desarrollo, y ser así capaz de proponer ideas nuevas.
¿Te falta inspiración? Aquí tienes algunos consejos:

  • Crea buenos hábitos de programación relacionados, por ejemplo, con el propio código, los comentarios o la documentación.
  • Reduce el tiempo de implementación mediante la mejora en los procesos.
  • Define procedimientos para reducir el riesgo de errores, como la validación de los errores detectados y de las peticiones de cambio, o la implementación de un modelo de integración continua y de pruebas automatizadas.
  • Informa a los equipos de trabajo si crees que las especificaciones proporcionadas al equipo son de mala calidad.

Trata al equipo como un sistema armonioso. Se pueden mejorar muchas cosas relacionadas con el flujo del desarrollo en general, desde las necesidades del cliente hasta el delivery. Si lo programado funciona en el sistema informático de un programador pero falla en los servidores de pruebas, entonces hay cabida para mejoras.

Toma decisiones técnicas

Como lead developer eres el referente técnico del equipo, por lo que debes "defender la parte técnica, mantenerte firme en tus decisiones y pronunciarte si existen divergencias entre los programadores", tal y como explica Jérôme Nadaud. Esta tarea no siempre es fácil, ya que a veces es necesario rechazar la solución de un programador o resolver un debate técnico que divide a los miembros del equipo.

Además, puede ser que te hagan consultas relacionadas con problemas para los que aún no tienes los conocimientos técnicos necesarios. De hecho, "tú eres la persona a la que recurren cuando necesitan encontrar una solución y se encuentran en una situación nueva para ellos" resume Boris Gervaise. Ser capaz de resolver dichos problemas implica tener una gran autonomía y saber documentarse. Por ello, es conveniente que te mantengas al día tecnológicamente en el trabajo.

Qué puedes hacer después de leer este artículo

  • Dedica cinco minutos a pensar en un ritual de equipo (charlas, comidas, etc.) que te permita crear un ambiente de trabajo más estimulante. ¡Propónselo a tu equipo antes de que termine la semana!
  • Piensa en la personalidad y las expectativas de los diferentes miembros de tu equipo y anota por escrito las medidas que podrías tomar para mejorar tu comunicación con cada uno de ellos.
  • ¿Tu puesto requiere reales competencias directivas? Hazte con el libro The Manager's Path: A Guide for Tech Leaders Navigating Growth de Camille Fournier (disponible únicamente en inglés) y ponlo en tu mesilla de noche (o en tu e-book) ¡desde ya!

Ilustración de Brice Marchal*

Traducido por María Gutiérrez

¡Accede a más contenido dirigido especialmente a programadores en nuestra sección Behind the Code!

Guillaume Sasdy

C# .NET developer @ CSN Energy

  • Compartir en Facebook
  • Compartir en Twitter
  • Compartir en LinkedIn

Descubrir más

Los últimos artículos

¡Síguenos!

¿Buscas respuestas? Recibe tu dosis de inspiración semanal y las ultimas tribus de la jungla.

Y en nuestras redes sociales: