Testing Colombia

Testing con calidad

Certificaciones

Los Retos del analista de QA

spot-862274_1280

En el mundo a cada minuto se genera más y más software en todos los sectores del mercado, incluso ahora con el «Internet de las Cosas» encontramos software en los lugares donde nunca lo imaginamos encontrar, desde Dispositivos para solicitar una hamburguesa a la entrada de un McDonald’s!!!!, hasta para la simple impresión de una hoja ya se cuenta con middleware tan inteligente para impresoras que capta las señales de un Smartphone permitiendo hacer trabajos de forma inalámbrica (en mis tiempos de la universidad rogaba porque justo en la noche anterior a las entregas no fallara la impresora y tocara instalar desde Windows en adelante y luego no encontrar los drivers de la impresora). Sin embargo, esta gran oferta de software en todos los tipos, demanda sin duda alguna una gran cantidad de mano de obra especializada en QA en todos los niveles, tanto analistas expertos como analistas senior y junior, pero que implica estar catalogado dentro de alguno de estos niveles, como sería posible determinar en cual se está actualmente o si no se está en ninguno de ellos…….Que espero que no sea tu caso!

En mi experiencia en testing he logrado encontrar aspectos mínimos que considero viables compartir en este artículo para aquellos quienes deseen saberlo, aclarando que es mi opinión personal basado en mi experiencia como analista QA y lo que otros colegas también me han compartido:

 

Experiencia en Desarrollo: Este es el punto más álgido a la hora de hablar de testing, es esa palabra misteriosa que puede llegar a generar miedos e incluso malestar dentro de nuestra comunidad de QA, sin embargo es válido aclarar que si no se entiende cómo funcionan las cosas se hace más difícil ahondar en descubrir su naturaleza e incluso descubrir aquello para lo que no fue diseñado, imaginemos tener que hacer pruebas a un automóvil, pero no saber nada acerca de una de sus piezas claves, el motor que incluso podría ser la más importante para su funcionalidad principal, sería muy difícil pensar en encontrar forma de que este fallará con las pruebas que podríamos proponer, dejaríamos de pensar en casos como:

  1. ¿Qué pasaría si se pasa de un cambio directo a la reversa?
  2. ¿Qué pasaría si se pone el motor a funcionar durante un periodo de tiempo muy prolongado, en una cuesta arriba?
  3. ¿Qué pasaría si se pone un peso de tres veces más del que soporta el auto y este está apagado y se trata de encender en una cuesta arriba?

Si se habrá notado podemos pensar en lo que sucedería en cada caso, esto debido a que en nuestro cerebro ya tenemos información sobre un motor, así mismo debería suceder con el software, es por esto que entre más experiencia tenga un analista de QA en desarrollo, será más fácil al momento de proponer casos de pruebas que aseguren en realidad la calidad de lo que se esté probando, adicionalmente con las nuevas metodologías agiles que implican la colaboración de diferentes roles del ciclo de vida se hace necesario poder hablar en términos de software y de desarrollo.

Si bien es cierto que no se requiere ser desarrollador para aspirar a un empleo en google o Facebook, es clave tener conocimiento de programación en estos lenguajes:

  • Java
  • C#
  • .Net
  • Ruby
  • Perl

 

Certificaciones: a través de las experiencia en calidad he conocido diferentes perfiles, uno de ellos formados por profesionales expertos, empresas y otros formados empíricamente, el famoso “Saber por experiencia”, sin duda alguna y sin querer desvalorizar el conocimiento que se adquiere es valioso, se hace necesario en el mercado laboral contar con herramientas claves a la hora de optar por las mejores ofertas, sin duda alguna la calidad del software no es un tema que en las universidades se le de el peso adecuado, como en mi caso, me gradué sin saber que existían términos como “Regresión testing”, ”automatización de pruebas”, “unit testing”, etc. Es ahí donde optar por las certificaciones es en esta rama una de las maneras más efectivas de posicionarse en un mercado laboral cada día más competido.

  • ISTQB Foundation level (Es hoy por hoy lo mínimo que debe tener un analista de calidad).
  • CAT (Certified Agil Tester).

Herramientas: por básico que sea un proceso de pruebas y pensando en la “Continuous Integration”, “Reporte de Bugs” y “automatización de Pruebas”, es necesario conocer de las principales herramientas del mercado para tales fines:

tabla_Analista

Metodologías: el enfoque del ciclo de vida de aplicaciones/software ha cambiado a través del tiempo, cada vez se hacen diferentes las cosas, con el ritmo de la generación de software y nuevas tecnologías los procesos también se ven obligados a mejorar, por ello algunas metodologías de trabajo ágil ya se han vuelto un requisito mínimo al día de hoy para poder integrar un equipo de QA, entre los más destacados están:

  • Scrum
  • Crystal
  • Kanban

Dentro de este resumen del perfil quiero añadir estas habilidades que se resaltan en el blog del CES (Centro de Estudios de Software):

  • Capacidad de Abstracción y Modelado
  • Facilidad de Comunicación oral y escrita.
  • Creatividad
  • Pensamiento Crítico.
  • Pragmatismo
  • Aptitudes para el trabajo en equipo.

Espero que te sea útil esta información y estés por encima o igual a estas condiciones acerca del perfil de QA básico, pero si no es así, es hora de que fortalezcas tus habilidades.

“Nunca es tarde para empezar”

Si crees que tienes mas informacion para complementar este articulo no dudes en comentar.

 

2 Comentarios

  1. Norelis

    Excelente articulo Gracias!!!

Deja un comentario

Tema creado por Anders Norén