leanmind logo leanmind text logo

Blog

TDD Avanzado

Las herramientas que se necesitan para aplicar TDD en el mundo real en cualquier proyecto.

Descubre cómo puedes innovar dentro de tu proyecto

Por Carlos Blé Jurado

Buena parte de los avances tecnológicos dentro del área de desarrollo de software ocurren en forma de pequeños incrementos en la innovación. Están inspirados en los problemas cotidianos, impulsados por el espíritu de querer trabajar de manera más inteligente, en vez de más dura. El afán por automatizar lo que se hace repetitivo o por validar/testar los procesos para evitar errores, son buenos puntos de partida para innovar. Desde una mentalidad de que está todo ya inventado no sentiremos la motivación por innovar, pues ella implica pensar que para innovar necesitamos ideas grandilocuentes o paradigmas nuevos. Por otra parte, desde una mentalidad de crecimiento, de querer incorporar pequeñas mejoras constantemente, vamos a darnos cuenta de que cualquier proyecto es bueno para innovar, aunque parezca rutinario, aburrido o abrumador. No importa la cantidad de código y de procesos legados que haya, porque siempre podremos mejorar las herramientas, darles usos nuevos/creativos o probar herramientas “nuevas” como la inteligencia artificial. Echándole imaginación y reflexionando con calma, nos daremos cuenta de que cualquier proyecto que implique trabajar con software nos da la posibilidad de ser creativos, de disfrutar innovando cada día. Hay todo un mundo de posibilidades esperando a ser descubiertas. El elemento esencial para encontrar el camino de la innovación es la serenidad, el foco mental en lo que se hace. Los entornos donde hay cambios de contexto e interrupciones permanentes, son nocivos. Los puestos de trabajo de gestión implican típicamente muchos cambios de foco, en mi experiencia suelen ser mucho más estresantes que el trabajo técnico. Por eso las personas que pueden permitirse el lujo de trabajar con foco (típicamente developers), en un entorno adecuado, son las mejoras candidatas para innovar. El mayor potencial para llevar a cabo la mejora continua está en esas personas que encuentran momentos de serenidad para hacer introspección, descansar la mente, disfrutar de la naturaleza o de la meditación. Si le sumamos la voluntad de querer las oportunidades positivas que nos ofrece cada proyecto, aunque parezca tecnológicamente viejuno, disfrutaremos mucho más de nuestro trabajo. Se puede encontrar el placer por el trabajo bien hecho, incluso si no estás en un proyecto greenfield con la última versión del lenguaje y del framework de moda.

Muchos de los temas que he explicado en mis charlas en congresos han sido fruto de esa búsqueda de la mejora dentro del proyecto en el que estaba. Nunca hablé de un gran invento que cambiaría la historia de la humanidad. Lo mismo les sucede a muchos de mis colegas de profesión, les veo dando charlas año tras año porque saben encontrar el punto dulce de la innovación dentro de su contexto. Cada contexto es único y eso nos ofrece oportunidades únicas. Los mejores libros de programación se han inspirado en el contexto de los proyectos vividos por las autoras y autores en los proyectos reales. De las dificultades se aprende muchísimo. Las necesidades agudizan el ingenio, siempre que las veamos como una oportunidad.

Incluso en un proyecto complicado donde rutinariamente estamos lanzando queries SQL contra la base de datos de producción, resolviendo incidencias mediante updates arriesgados, tenemos la oportunidad de encontrar mejores formas de hacer el trabajo. ¿Podríamos entrenar a una IA para que chequease rutinariamente la base de datos y nos avisara de anomalías?, ¿podemos inventarnos algunas heurísticas implementadas con scripts o pequeños programas que automaticen parte de nuestro trabajo?, ¿podemos instrumentalizar la base de datos?, ¿podemos automatizar el proceso de actualización para que sea más seguro y menos propenso a errores humanos?, ¿cómo podemos sacarle mejor partido a las herramientas que tenemos?, ¿habrá herramientas más modernas ahí fuera?, ¿qué estarán haciendo otras personas con problemas similares? Ninguna de estas preguntas surge si hacemos el trabajo manual mecánicamente todos los días, con desidia, deseando que llegue otro proyecto nuevo en el que trabajar. Para mí los principales motivos para cambiar de proyecto no es la tecnología sino las personas o el ambiente laboral. Si el ambiente de trabajo es tóxico, si no hay respeto ni confianza, si no hay momentos de foco, si no parece que la situación pueda cambiarse, ahí es cuando me he planteado un cambio de proyecto o de empresa. Es cierto que puede llegar un momento en el que uno siente que ya ha contribuido todo lo que podía a un proyecto y que es hora de cambiar de etapa, sobre todo cuando han pasado años.

Me apetecía escribir este artículo porque conozco a muchas personas que están haciendo cosas muy interesantes en sus proyectos o que trabajan en contexto de un gran potencial para la innovación, que luego no se animan a escribir un blog, a presentar una charla o a preparar un curso. Quizá tú que estás leyendo el artículo eres una de esas personas que tiene mucho que compartir con la comunidad, con el mundo, y sobre todo con su equipo de trabajo. Te dejo con más preguntas: ¿Cómo puedes hacer tu trabajo más inteligente?, ¿dónde hay margen para la mejora?, ¿qué opciones te faltan por explorar?, ¿qué limitaciones estás dando por sentado inconscientemente?, ¿son reales esas limitaciones o puedes pensar en soluciones “fuera de la caja”?

Tenemos mucha suerte de trabajar en el mundo del software, es creativo y apasionante si tú quieres que lo sea, si te gusta resolver problemas.

Publicado el 15/03/2022 por

¿Quieres más? te invitamos a suscribirte a nuestro boletín para avisarte cada vez que recopilemos contenido de calidad que compartir.

Si disfrutas leyendo nuestro blog, ¿imaginas lo divertido que sería trabajar con nosotros? ¿te gustaría?

Impulsamos el crecimiento profesional de tu equipo de developers