La transformación digital de las empresas ha hecho crecer la demanda de perfiles IT. Los cambios en los procesos y metodologías de trabajo han supuesto retos que han abierto la puerta a profesionales del sector. Dentro del ámbito del desarrollo de software, los perfiles dedicados al aseguramiento de la calidad son unos de los más demandados. Uno de ellos es el rol de QA-Lead.
En este post vamos a intentar esclarecer las dudas más comunes sobre este perfil, es decir, cuales son sus funciones principales, dónde se ubica dentro de una compañía, cuáles son las skills más importantes… etc
El rol de QA-Lead
El desarrollo de software ha evolucionado mucho desde aquellos tiempos en los que la parte de calidad y sus pruebas se hacían, prácticamente en su totalidad, al final del proceso por un grupo específico de testers. Hablamos de aquella metodología en cascada, que a todos nos suena a un modelo arcaico en desuso, pero donde seguimos encontrando muchas empresas que no han sido capaces de dar el salto a una metodología ágil.
El desarrollo de software ha evolucionado mucho desde aquellos tiempos en los que la parte de calidad y sus pruebas se hacían, prácticamente en su totalidad, al final del proceso por un grupo específico de testers.
Bajo estas metodologías ágiles la responsabilidad de la calidad se reparte, de manera bastante lógica, entre todos los participantes en el desarrollo de software. Así es más sencillo y se detectan antes los errores. Un ejemplo claro de ello se da si un desarrollador que conoce el código diseña unas pruebas unitarias que lo prueben, antes de esperar a que las pruebas finales detecten los errores.
Y no solo hablamos de algo sencillo y rápido, sino también mucho más barato: hablando en términos económicos, el coste de detectar y corregir los errores es más bajo cuanto más temprana es la fase de desarrollo donde se detectan.
Pero, entonces... ¿qué papel tiene un QA-Lead?
La figura de un QA-Lead tiene sentido cuando queremos asegurar la calidad (Quality Assurance – QA) del proceso de desarrollo y darle una direccionalidad adecuada, ya que, como experto en la materia, establecerá directrices, metodologías, procedimientos, métricas, etc. Que sirvan como referencia para todo lo relacionado con la calidad.
Trabajar como QA-Lead no implica liderar un número mínimo de equipos, ni tan siquiera un número de QA’s.
Muchas veces se malentiende el concepto por limitarlo a la persona responsable del equipo de QA, la que gestiona el día a día de un equipo de testers. Sin embargo, un QA-Lead es mucho más. Es un rol específico, con unas funciones determinadas, que no están enfocadas a gestionar únicamente un grupo de personas dedicadas a calidad, sino a liderar dentro de ese ámbito a todo el equipo de desarrollo, sean cuales sean sus funciones, incluyendo a cualquier perfil que esté involucrado en el ciclo de desarrollo de software.
Así, aunque la responsabilidad de mantener la calidad sea de todo el equipo, es el QA-Lead el que tiene más conocimientos acerca de metodologías y frameworks para trabajar con buenas prácticas.
QA-Lead dentro de la organización
Cuando la organización es grande y posee una estrategia corporativa de calidad una de las funciones del QA-Lead es hacer de puente entre esa estrategia global y el resto de equipos para que llegue la información a todos sus integrantes y éstos trabajen según los estándares de calidad corporativos.
Sin embargo, puede darse la situación de que no sea una organización grande o que no exista esa estrategia corporativa. En este caso, el QA-Lead sería la persona encargada de preparar ese viaje hacia el desarrollo con calidad, ya que posee los conocimientos necesarios. Su función será orquestar esa estrategia y, nuevamente, ser el puente para que la información fluya a todos los integrantes del equipo y poder seguir un proceso de desarrollo con calidad.
M
Día a día de QA-Lead
El rol de QA-Lead no implica ser “la policía de la calidad”. Una persona que persiga a la gente para que haga bien las cosas o trabaje de una determinada manera. Lo que se busca es alguien que facilite esa transición a un flujo de desarrollo con calidad, no desde el autoritarismo, sino desde el acompañamiento; alguien que ayude a las personas a mejorar su calidad de vida a través de un trabajo con calidad. Para poder realizar esta labor el QA-Lead necesita poder evaluar el estado actual del marco de trabajo de la organización para poder dar seguimiento y valor a las acciones que se tomen. La mejor herramienta para ello será tener unas buenas métricas.
El rol de QA-Lead no implica ser “la policía de la calidad”.
Apoyarse en unas métricas para comprobar día a día cómo se está trabajando ayuda, no solo a dar visión del estado actual del marco de trabajo, sino también a poner en valor las mejoras que supone transitar a un modelo de desarrollo basado en calidad. Gracias al seguimiento de estas métricas, el QA-Lead puede detectar problemas y acercarse a los equipos para tratarlos con ellos y proponer acciones de mejora, que ayuden a mejorar la calidad del proceso y, a fin de cuentas, la calidad de vida de los integrantes del equipo.
Dentro de ese día a día, cuando nos referimos a metodologías ágiles, no existe un patrón establecido de a qué ceremonias debe asistir el QA-Lead dentro de los equipos a los que lidere. Una posibilidad es que exista una daily dentro de una capa más de gestión, con los PO’s, Team leader, Tech-Lead… a la cual asista el QA-Lead, para coordinarse y ver qué problemas están experimentando. Otra posible solución es ir rotando por los diferentes equipos, ir a las dailies de aquellos a los que se está ayudando en ese momento o simplemente no ir a ninguna y estar siempre disponible por si algún equipo necesitase de su presencia.
El rol de un QA-Lead va más allá de la gestión y coordinación de equipos a alto nivel. Además de estas responsabilidades, el QA-Lead también se involucra en tareas diarias relacionadas con la calidad del producto. Esto implica realizar tareas de cualquier ámbito dentro de la calidad de desarrollo de software, tales como la creación y ejecución de planes de test, revisar resultado, identificación y documentación de defectos…
Planificación a medio-largo plazo
Es importante poder dar seguimiento a la estrategia de calidad que se haya decidido seguir, ya sea por un departamento de calidad o por un trabajo previo del Lead.
Este seguimiento no puede ser realizado sólo por parte del QA-Lead, sino que hay que hacer partícipe del mismo a todas las personas involucradas. Una de las técnicas más usadas para ello son las reuniones de seguimiento quincenales, las cuales pueden darse en diferentes marcos: unas específicas de calidad con los QAs de los equipos, para dar seguimiento a las acciones propuestas; y otras más generalistas, involucrando a todos los miembros de los equipos, donde se ponga en conocimiento el estado de esas propuestas de mejora.
Fuera del seguimiento de las métricas y las reuniones que se establezcan, el día a día irá modificándose en función de las acciones que se tengan previstas para llevar a buen puerto esa estrategia de calidad. Sin embargo, para eso es necesario disponer de una planificación de las tareas a realizar a largo plazo.
Otra de las responsabilidades de un QA-Lead es tener una visión a largo plazo de las acciones que hay que acometer para poder llegar a los objetivos propuestos de calidad.
Un buen QA-Lead tiene que ser capaz de “dar un paso atrás” para ver con perspectiva cómo es el proceso de desarrollo dentro del dominio que lidera con el fin de poder planificar acciones y priorizar las mismas y dando preferencia a aquellas que reporten un mayor beneficio para los objetivos de la organización.
Esta visión a largo plazo, llamada roadmap, una vez esté bien definida, se transforma en tareas que se trabajan día a día para alcanzar los objetivos. Este roadmap necesita un seguimiento y ser conocido por todos los involucrados. Es tarea del QA-Lead que todos los miembros del equipo sean conscientes del roadmap y sepan qué se pretende con él y cuál es el objetivo de todas esas acciones, con el fin de conseguir una comunión entre todos que ayude a que este plan llegue a buen puerto.
Skills QA-Lead
Una vez desarrolladas las funciones de un QA-Lead, veamos el perfil técnico y personal que ha de tener una persona para ser un buen QA-Lead.
Conocimientos técnicos
Un buen QA-Lead no ha de poseer ninguna habilidad técnica especial: cualquier bagaje técnico siempre será bienvenido, pero todo dependerá de la organización en la que ejerza su rol.
Lo importante es tener la capacidad técnica suficiente para arrancar cualquier tarea que se vaya a realizar, es decir, capacidad resolutiva y de autoaprendizaje. Por ejemplo, si se va a automatizar un API, el QA-Lead tiene que ser capaz de diseñar una prueba de concepto con la tecnología que se acuerde para ello, ver que esa tecnología es viable, y después traspasar ese conocimiento a la persona del equipo que vaya a hacer las pruebas. A la larga la persona que se dedica día a día a usar el framework adquirirá un mejor nivel técnico que el QA-Lead, pero éste tiene que poder dar el primer impulso.
Los conocimientos técnicos que ha de poseer un buen QA-Lead residen en tener claros todos los conceptos de calidad que atañen a cada una de las partes del ciclo de desarrollo de software, y conocer los beneficios y problemas que conlleva seguir procesos y metodologías basadas en calidad, para poder recomendar y liderar una estrategia global para todo el proceso.
Soft skills
QA-Lead es un rol que basa sus funciones en transmitir una cultura de calidad en el desarrollo de software, por lo que necesita ser una persona con buenas habilidades sociales y mucha mano izquierda, para poder llevar el mensaje de la calidad a todos los integrantes del equipo y que acepten el cambio.
Tiene que ser una persona calmada, con capacidad de abstracción y de empatía, capaz de mirar desde fuera, de entender el proceso de desarrollo en la organización y sus problemas, de ponerse en el lugar de Product Owners, desarrolladores, etc.
También es importante que sepa entender que las propuestas que haga para trabajar de manera eficaz y con calidad pueden ser rechazadas, ya que interferirá con la manera actual de trabajar, por lo que debe ser capaz de defender esas acciones y hacer ver las ventajas que traerán.
QA Lead: Calidad del desarrollo software
En resumen, el rol de un QA-Lead dentro de una organización de desarrollo de software es fundamental para garantizar la calidad en todas las etapas del proceso.
El QA-Lead tiene la tarea de establecer directrices, metodologías y procedimientos que promuevan la calidad en todo el equipo de desarrollo. También actúa como puente entre la estrategia de calidad y los diferentes equipos, asegurando que se sigan los estándares corporativos. Además de la gestión y coordinación, el QA-Lead se involucra en tareas diarias como la creación y ejecución de planes de prueba, la identificación y documentación de defectos y la propuesta de acciones de mejora.
Además es importante que el QA-Lead tenga habilidades técnicas y sociales, siendo capaz de transmitir una cultura de calidad y trabajar de manera colaborativa con todos los miembros del equipo. En definitiva, una pieza clave garantizando la calidad en el desarrollo de software.


