• +34 944 015 040 | C/ Uribitarte 6, 2ª Planta Bilbao 48001

Comunicación en el desarrollo software

Comunicación en el desarrollo software

Comunicación en el desarrollo software 1200 800 Grupo init

Desarrollador con alta cualificación técnica, Xabi Sáez de Ocáriz está convencido de que esta cualidad no es suficiente para dar el 100% en su trabajo. Como ha explicado en su charla en la última edición de la Conferencia Agile Spain CAS 2016, la comunicación también es un factor clave para optimizar la productividad y calidad en los equipos de desarrollo software. ¿Cómo hacerlo? Nos comunica algunas pautas en la siguiente entrevista:

¿Es caro comunicarse en una empresa? Dices que no hacerlo lo es más.

Es más fácil calcular en positivo, cuánto nos cuesta una reunión, que al revés, cuánto nos cuesta no hacerla. Pero desde luego creo que una mala comunicación tiene un fuerte impacto negativo en la empresa y en los equipos. Por ejemplo, a la hora de desarrollar un producto que no es lo que se espera o lo que pide el mercado y, por supuesto, desde el punto de vista emocional y motivacional. La mala comunicación afecta a las personas y disminuye la productividad.

Xabi Sáez de Ocáriz. Init ServicesEn mi equipo en Init Services damos valor a la comunicación y tratamos de medir cómo estamos en ese sentido. La clave es la mejora continua. Por eso periódicamente hablamos de temas no directamente relacionados con la producción, sino con cómo hacemos las cosas.

Mi punto de vista y charla en la CAS 2016 se basa en que la comunicación es otra de las perspectivas desde la que se puede ver el desarrollo software y otro factor a modificar para un desarrollo de calidad.

El código es como una carta que escribes a tu “yo del futuro” y a otros desarrolladores. Ha de ser entendible.

Hablamos de la importancia de la comunicación en equipos de desarrollo software. ¿Un perfil asociado de forma estereotípica a un trabajo más individual?

Sí. Pero desde mi punto de vista, ver a un desarrollador de software como una profesión individual es equivocado. Creo que es una práctica compleja y que la mejor forma de enfrentarse a ella es consensuando diferentes perspectivas. El código, además de por la “máquina”, ha de poder ser entendido por otros desarrolladores para ser mantenible. Por eso es interesante contar con más de un punto de vista.

Más allá del código, es esencial la comunicación para un buen funcionamiento del propio equipo de desarrollo y para relacionarse con el resto de perfiles que intervienen en el producto: comerciales, expertos de dominio, sistemas, usabilidad, etc. Todos hemos de tener un objetivo común y esto implica comunicarse y entenderse.

Como decía Halford E. Luccock: «nadie puede silbar una sinfonía. Se necesita una orquesta para tocarla».

¿Cuáles son las consecuencias de no pensar en el resto de desarrolladores, dentro o fuera de la empresa, a la hora de escribir código?

Si escribes código que solo entiendes tú solo puedes mantenerlo tú y esto es un gran problema. Supones un cuello de botella, aumentas los costes de mantenimiento y supeditas el mantenibilidad del producto a ti mismo. Eso, si tu “yo del futuro” lo entiende.

Xabi Sáez de Ocáriz. CAS 2016

El código es como una carta que escribes a tu “yo del futuro” y a otros desarrolladores sobre cómo quieres que “la máquina” se comporte. Y uno de los baremos para mí más importantes, más allá de que el código haga lo que tiene que hacer que es la base, es que mi “yo del futuro” y otros desarrolladores seamos capaces de entenderlo. Y no es tan fácil.

Para eso en Init Services aprendemos conjuntamente y apostamos por código mantenible. Desarrollamos productos propios, con larga vida por delante, y es muy importante que cuidemos que el código sea mantenible para reducir los costes. También con los clientes. Nuestra filosofía es: te acompañamos en el desarrollo de tu producto, esperamos que la relación sea larga y como las necesidades de negocio pueden cambiar, trabajamos la mantenibilidad para reducir al máximo tus costes. Y si en un momento dado la relación termina, el cliente tiene independencia con respecto al producto que ha pagado.

Creo que un camino para mejorar la comunicación es la humildad y esta pasa por comprender que el ser humano falla.

En relación a la comunicación humana dentro del equipo, recuerdas que el diálogo es una forma de alcanzar un conocimiento que solos nunca podríamos.

Y es fundamental en aspectos muy diferentes. Dar la mejor solución a los clientes pasa por conocer el negocio a fondo, es decir, por compartir conocimiento.

Muy importante también el componente emocional. Somos personas. No todos los días estamos en nuestro mejor momento y, aún así, toca venir a trabajar. Desde mi punto de vista es fundamental ser apoyo en ese sentido. Y también saber comunicar nuestras necesidades con acierto.

Sobre la motivación, creo que es esencial entender cómo quiere crecer cada persona dentro del equipo. También cómo se plantean los retos. Desde mi punto de vista, es más motivador si la organización plantea el reto al equipo que si da directamente la solución y cómo acometerla. En ese sentido, es importante la alineación con la organización de la empresa, los valores, los procesos… comunicación pura y dura.

Somos personas y nos afectan los sesgos cognitivos.

Creo que un camino para mejorar la comunicación es la humildad y esta pasa por comprender que el ser humano falla. A veces no funcionamos de la manera más lógica. Pueden afectarnos los sesgos cognitivos. Son mecanismos cerebrales que a veces nos ayudan a interactuar con el contexto pero muchas otras nos llevan a conclusiones que no son verdad. Lo más importante es comprender que a veces estos sesgos cognitivos nos influyen y, por tanto, es importante escuchar a otras personas con una actitud abierta.

Uno de los más habituales es el sesgo de confirmación o tendencia a favorecer, buscar, interpretar y recordar la información que confirma nuestras propias creencias o hipótesis, dando desproporcionadamente menos consideración a posibles alternativas. También nos afecta la ilusión del control, que consiste en sobreestimar el grado de influencia que tenemos sobre otros eventos externos. Los seres humanos tendemos a creer que podemos controlar o al menos influir en consecuencias o resultados que no están en nuestra mano. Y otro de los más conocidos es el sesgo de prejuicio de retrospectiva o recapitulación, conocido también como el efecto “¡Yo ya lo sabía!”. Muestra la inclinación a ver los hechos pasados como fenómenos predichos o predecibles.

Xabi Sáez de Ocariz. CAS 2016

Otro que comentabas en la charla y no ayuda: “La culpa de todo la tiene Yoko Ono”.

Sí. Consiste en tener un problema y en lugar de buscar el origen, se busca un culpable y además no se dialoga con él. Solo se habla entre el resto y es difícil salir de ahí porque se va pudriendo el contexto y, al final, la culpa la tiene siempre el mismo. Es importante dar un paso hacia fuera, hablar incluyendo a esta persona y buscar una solución entre todos. Seguramente esta persona tiene otro contexto y es importante conocerlo.

La importancia del contexto.

Cada persona tiene diferente contexto, y la única forma de entenderlo es hablando. Una persona cuando comunica lo codifica en base a su contexto y nosotros lo cojemos y lo decodificamos en base al nuestro. Como el contexto no es el mismo, a veces se producen fallos de comunicación. Por eso es importante transmitir el máximo contexto posible. Y por parte del receptor, no asumir. Si hay dudas, mejor preguntar.

En alguna ocasión he visto enfados entre un perfil técnico y otro más de negocio porque uno no sabía ciertas cosas del área del otro y viceversa. Esto no tiene sentido. Es natural que no lo conozcamos todo del trabajo de otra persona. Se pregunta, se explica y a partir de ahí aprendemos y crecemos.

Cuéntanos en qué consiste la comunicación no violenta.

Es una forma de comunicación que introduje en la charla porque nos ayuda a salir de nuestra subjetividad y transmitir nuestras necesidades. Se trata de una fórmula muy concreta para pedir algo a otra persona o grupo.

Consiste en cuatro pasos: observo, siento, necesito y pido. Con el primer paso, observo, he de salir de mi subjetividad y ver la realidad de forma objetiva. El enunciado ha de ser sobre algo que sucede, sin mis impresiones o interpretaciones. En el segundo paso, reflexiono sobre qué me hace sentir ese hecho. A partir de ahí, con necesito, identifico mi necesidad. En el último paso, pido, hago una petición a otro para poder satisfacer esa necesidad.

Un ejemplo puede ser: En las últimas semanas he visto que llegas tarde las reuniones. Esto me hace sentir frustrado porque no avanzamos adecuadamente y además no puedo organizar y aprovechar bien mi tiempo. Necesito que estemos coordinados para avanzar al máximo. Por eso te pido que llegues con puntualidad a los compromisos y que si te no va a ser posible, me avises con tiempo para organizarme.

Echo en falta más eventos transversales donde se rompan estereotipos y roles muy diferentes nos unamos por un objetivo común.

Xabi Sáez de Ocáriz. Init Services¿Cómo se desenvuelve Xabi en su día a día en la comunicación?

Mal, como todo ser humano (risas). Las leyes de Wiio dicen en clave humorística que la comunicación humana falla excepto por casualidad. Soy consciente y doy mucho valor a todas estas pautas para la buena comunicación pero sigo sufriendo sesgos cognitivos, secuestros de amígdala…

Pienso que hemos de trabajar por hacerlo mejor, pero también ser generosos con nosotros mismos y los demás y comprender que puede haber fallos. Si hacemos este ejercicio y alguien no se comunica con nosotros adecuadamente podemos decir: “no se ha dado cuenta. Es humano y, como yo, falla”. Y en lugar de enfadarnos, hablar con él para resolverlo.

¿Qué es un secuestro de amígdala?

Es un término del psicólogo Daniel Goleman que hace referencia a una explosión emocional bajo la que no pensamos con claridad y que, si no controlamos, puede hacernos actuar cegados por nuestras emociones. Coloquialmente, “perder los papeles”. De nuevo, es importante trabajar para mejorar el autocontrol y a la vez no castigarnos porque nos pase, sino tener paciencia y animarnos a hacerlo mejor.

Te entusiasma analizar el universo de las personas ¿Lo haces contigo mismo?

Sí, constantemente. Hablar de mí me cuesta mucho. Pero sí, soy muy reflexivo. Me doy cuenta de que cómo hago las cosas y hago un esfuerzo por aprender.

¿Cómo extendemos este aprendizaje más allá de eventos como la CAS y la comunidad de desarrollo software?

Cada uno puede trabajar en su área de influencia. Primero en sí mismo, luego dentro de su equipo y a partir de ahí con el resto de áreas de la empresa y agentes externos. Eso sí, cada uno podemos hacer hasta donde podemos. Es una responsabilidad compartida.

Xabi Sáez de Ocáriz. Init Services

Yo personalmente echo en falta más eventos transversales donde se rompan estereotipos y roles muy diferentes nos unamos por un objetivo común. La CAS no es solo para desarrolladores, cualquiera puede acudir, pero necesitamos hacer ese ejercicio y lanzar el mensaje de transversalidad. Olvidarnos de que el comercial “va a vender” y el desarrollador está metido en su código sin idea de negocio. Esto no es así. El objetivo ha de ser para todos el mismo: desarrollar las mejores soluciones para el cliente.