lunes, 4 de febrero de 2013

El Tester Arquero

Genios.
Arquero: En el fútbol, el guardameta (también llamado metacancerberoarqueroportero, o golero) es la posición que representa la última línea de defensa entre el ataque del oponente y la propia portería. Es una de las posiciones más difíciles de jugar, debido a su gran complejidad y responsabilidad. La función principal del jugador en esta posición es la de defender directamente la portería y evitar que el contrario marque gol. 1
"Y que queres? Si es Arquero!"  Diego Maradona

En el fútbol, yo soy arquero. Desde chico. También he jugado como delantero, me encanta hacer goles, pero tal vez por mandato paterno, porque no soy tan bueno en otros aspectos que debe tener un goleador, porque nadie quería hacer ese trabajo ingrato de ser arquero en el equipo, me decidí por atajar, volar de palo a palo, tocar con la punta de los dedos la pelota y que se vaya besando el poste, mientras mis compañeros dejan de respirar por un segundo. Muy poético...pero nos odian, nos menosprecian durante 89 de los 90 minutos de un partido y cada gol en contra es una sentencia de muerte para el arquero, culpable de todos los males, poco saludado y apreciado en las alegrías.

El trabajo del arquero es ingrato.

En el trabajo, yo soy Tester. Desde hace poco más de un año. También he sido analista, me gusta analizar los problemas y ver que solución se le pueden dar, cual es la mejor manera de encarar una solución. Pero por razones de la vida, mudarme  a una nueva ciudad, no aburrirme escribiendo innumerables documentos, hacer algo novedoso, porque nadie quiere ser Tester, me decidí por hacer este trabajo, encontrar defectos que nadie encuentra antes de que el producto llegue a producción, ver como ese defecto se arregla, y los desarrolladores suspiran cuando un nuevo release sale a producción y nos felicitan, aunque ellos son felicitados por su gran trabajo, y a los testers nos felicitan con una palmadita por hacer lo que debíamos hacer.

El trabajo del Tester es ingrato.

Dicen que el Tester es el "gatekeeper" de la calidad de un producto. Muchos estamos en contra, como James Bach en su blog, o Joel Montvelisky en el suyo.

Yo propongo que nos comparen con el "goalkeeper", el arquero.
Nosotros no frenamos un release, intentamos que nos hagan la menor cantidad de goles en contra (bugs en producción) de manera que los mayores aciertos de nuestro equipo nos permitan ganar (salir a producción). Los goles son culpa de todo el equipo (atacantes, centros, defensas y el arquero), los bugs son culpa de todo el equipo (desarrolladores, diseñadores, analistas y testers).
El arquero tiene una visión diferente del juego, lo ve todo desde atrás, por lo que puede ver facetas del juego que otros (incluido el técnico) no pueden ver. Por eso es muy importante que tenga buenas habilidades de comunicación, para poder ordenar la defensa y el juego de contraataque. El Tester también tiene una visión diferente del desarrollo de un producto, tiene que ver las cosas desde otro contexto (incluso de sus Managers). Y sus habilidades de comunicación son imprescindibles, para poder hacer las preguntas correctas, a los actores correctos, en el momento justo, para solucionar problemas o bien evitarlos a futuro.
Los mejores arqueros tienen habilidades que normalmente no se le piden, como jugar bien con los pies, transformándose en el ultimo defensor del equipo, o patear penales, que en ciertos momentos de un partido pueden ser importantes para el equipo. Los mejores testers también requieren habilidades que normalmente se cree que no tienen, como el conocimiento de lenguajes de desarrollo, o la aplicación de herramientas para mejorar el trabajo.

Los mejores equipos de fútbol, quieren y miman a sus arqueros de clase mundial, porque saben que los van a necesitar cuando más necesarios son. Debemos lograr lo mismo en los equipos de desarrollo, debemos convertirnos en los "Goalkeepers" del desarrollo de software.

domingo, 3 de febrero de 2013

El Tester Bilingüe - The Bilingual Tester

Chiste malo - Bad joke
Una de las habilidades más importante que debe tener un Tester de software hoy en día, es saber un segundo idioma, con una mayor preponderancia por el Inglés.
En la actualidad, en la mayor parte de Latinoamerica, los ingenieros y analistas de sistemas trabajan en su mayoría para empresas de Outsourcing. Yo soy uno de tantos.
Mis primeras experiencias laborales en IT no involucraron el idioma inglés, ya sea por que fueran clientes de la actividad pública, o empresas que trabajan 100% con el mercado interno, o por que sus principales clientes eran mexicanos. Mi trabajo actual sí implica como condición el inglés, idioma que estudié en forma intermitente desde los 6 años, pero que nunca pude practicar como hubiera deseado. Por suerte pasé las pruebas y estoy en mi trabajo actual, que permitió empezar a conocer el mundo del Testing y que gracias a eso, hoy estoy escribiendo esto.
Pero el segundo idioma, además de la ventaja que le permite a uno comunicarse mejor con los clientes, permite una ventaja adicional: el poder entender lo que quiere el cliente en sus historias o requerimientos. Y esto es algo muy importante para un Tester, porque su trabajo comienza apenas hay un nuevo requerimiento (sea cual fuera la forma en la que recibimos este requerimiento) y si no entendemos lo que quieren, podemos llegar a reportar información sobre nuestro Testing, que no será valiosa para el cliente.
Saber inglés también permite comunicarse con la comunidad de Testers del Mundo. En otros posts anteriores he informado cómo conectarse vía Twitter con estas personas, que todos los días comparten sus ideas, blogs, enlaces e información relacionada a las tareas diarias de los Testers alrededor del mundo.
Para comunicarse con suecos, fineses, rumanos, ingleses, canadienses o norteamericanos, necesitamos una lengua común, y el inglés, aun con sus imperfecciones, domina sobre otros idiomas, aunque no sea el mas hablado (El mandarín y el español tienen mas personas que lo hablan en el mundo que el inglés, ver acá).
Así que he decidido continuar puliendo mis habilidades con el inglés, haciendo un doble trabajo: escribiendo mis posts en español y luego traducirlos al inglés. Obviamente cuando haga un post traduciendo un artículo escrito en inglés, no lo volveré a poner en su idioma original. Pero creo que vale la pena que mis artículos también lo puedan leer gente de más allá de Hispanoamerica.


One of the most important skills you must have as a software tester today, is to know a second language, with a greater emphasis with English.
At present, in most of Latin America, engineers and systems analysts work mostly in Outsourcing companies. I am one of many.
My first work experiences in IT did not involve the English language, whether they were customers in the public activity, or companies that work 100% with the domestic market, or that their main customers were Mexicans. My current job does imply as a condition English, which I studied intermittently since age of 6, but that I could never practice as I have wished. Luckily I passed the tests and I am in my current job, which allowed getting to know the world of Testing and thanks to that, I'm writing this today.
But the second language, in addition to the advantage that allows you to communicate better with customers, allows an additional advantage: being able to understand what the customer wants in their stories or requirements. And this is something very important for a Tester, because their work begins when there is a new requirement (whatever the form in which we receive this requirement) and if we do not understand what they want, we can report about our Testing,something that could not be valuable to the customer.
Knowing English can also allows you communicate with the World Testers community. In previous posts I have reported how to connect with these people via Twitter, that every day they share their ideas, blogs, links and information related to the daily tasks of the Testers worldwide.
To communicate with Swedish, Finnish, Romanian, English, Canadian or American, we need a common language, and English, even with its imperfections, dominates over other languages​​, though is not the most spoken (Mandarin and Spanish are most widely spoken in the world than English, see here).
So I've decided to continue polishing my English skills, doing double duty: writing my posts in Spanish and then translated into English. Obviously when I make a post translating an article written in English, I will not put back in their original language. But I think it's worth that my articles can also be read beyond people of Latin America.

You will see my posts in English, here.