Posts Cómo Entregar Resultados Más Rápido Siendo Perfeccionista
Post
Cancel

Cómo Entregar Resultados Más Rápido Siendo Perfeccionista

Decidir que una actividad está lista para ser marcada como completa es una lucha constante que debemos atravesar las almas perfeccionistas a lo largo de cualquier proyecto. Encontramos más placer en el proceso de crearlo que en el resultado obtenido al completarlo.

Si también te identificas como perfeccionista, seguro estarás de acuerdo con alguna de las siguientes afirmaciones:

  • Cada detalle es importante.
  • Al usar diagramas, nos aseguramos de conectarlos de forma armónica entre sí.
  • Cualquier lista debe ser ordenada en orden alfabético.
  • Elegancia, orden y simplicidad son poesía y un regalo para los ojos.

Por todo eso, decidir cuándo marcar una tarea como completada es una lucha que consume mucha energía, que debilita.

El perfeccionismo se disfraza de excelencia

Cuando tenemos a nuestro encargo cualquier tarea, convertimos en una obligación la entrega de un resultado excelente. Sin espacio para los defectos. Entregar algo mediocre significaría una traición a nuestra esencia. Si hemos dedicado nuestra vida a la excelencia, ¿por qué sacrificaríamos esa reputación hoy? Esa es una característica clásica de una personalidad perfeccionista.

Paradójicamente, el esfuerzo tan grande que ponemos en completar esa tarea con calidad superior causa que poco a poco perdamos de vista el objetivo inicial de su construcción. Nos dejamos llevar por el placer del proceso.

Para entender esta idea, pongámonos en el lugar de quien espera un resultado por un trabajo solicitado.

Digamos que somos personas súper ocupadas y no hemos tenido tiempo de hacer limpieza a fondo en casa desde hace un mes. Especialmente la cocina es la que pide a gritos que le pasemos un trapo.

Decidimos contratar a personal de limpieza por 5 horas para realizar ese trabajo. Lo recibimos, le indicamos el trabajo que queremos que haga y nos vamos confiados a atender nuestras prioridades. Cuando volvemos, el personal nos dice que su trabajo todavía no está completo y que necesita otro día para completar ese encargo. Con voz de orgullo, nos cuenta que invirtió mucho tiempo en nuestras macetas, porque se dio cuenta de que no estaban aprovechando toda la luz disponible en la casa. Por supuesto, se aseguró de que las plantas de sombra no reciban el sol directamente.

¿Hizo mal su trabajo?

Probablemente no. Nuestras plantas están muy agradecidas y seguro la casa luce más bonita. Pero la cocina sigue estando sucia.

“Sí, eso quedó muy bien… sólo que no es lo que necesitaba ahora…” es un sentimiento agridulce que nuestra personalidad perfeccionista ha provocado a quienes alguna vez nos han hecho un encargo.

En la industria de tecnología y la construcción de startups, frenar el progreso de un proyecto por dar más peso al proceso que al resultado puede ser la diferencia entre convertirse en una empresa exitosa (éxito = ganancias son mayores a gastos) y sumarse a la lista de fracasos.

Jensen Harris, fundador y CTO en Textio, escribió sobre la poca importancia que debemos darle al código elegante cuando todavía no sabemos si nuestro producto tendrá éxito:

Screeshot of Jensen Harris tweet

Screeshot of Jensen Harris tweet

Usaré la analogía de un viajero para ilustrar la importancia de priorizar progreso y aprendizaje sobre crear obras perfectas cuando empezamos un proyecto.

El viaje es la recompensa

Para algunas personas, la emoción de viajar comienza desde que encendemos el motor del coche y conducimos por la carretera. El cielo infinito y esa montaña que siempre se ve a lo lejos a pesar de haber recorrido cientos de kilómetros invariablemente nos hacen pensar en el camino que hemos recorrido en la vida. Mientras observamos el paisaje en movimiento pensamos en esas metas que nos faltan por alcanzar.

Una parte del viaje termina para nosotros cuando llegamos al destino final y apagamos el motor. Por un momento pensamos: “ojalá el camino hubiera sido más largo”.

Empezar un proyecto me provoca una emoción similar a conducir por carretera.

Para los líderes que tienen contacto directo con el cliente final, una tarea puede ser sólo un paso (o hasta un obstáculo) para avanzar hacia la siguiente. Su responsabilidad es entregar un producto funcional en el tiempo más razonable posible. Sin embargo, las iteraciones rápidas de funcionalidades suelen convertirse en un enemigo para cualquier personalidad perfeccionista.

Como amantes del proceso, buscamos retrasar la publicación del progreso que hemos tenido sobre alguna tarea, porque queremos evitar que sea considerada como completa y nos pidan comenzar a construir sobre algo que sabemos que todavía no está terminado.

No queremos que el viaje se acabe.

Dentro de nuestra ingenuidad, buscamos asegurar que las bases están sólidas para el trabajo que se viene. Buscamos construir código que escale bien desde la primera versión.

Nos esforzamos muchísimo en crear buenos cimientos con la promesa de que nos ahorrarán muchísimo trabajo cuando llegue la hora de extender el sistema. Añadir una nueva funcionalidad sólo será cuestión de conectar las partes entre sí (clases, módulos, endpoints), porque todo lo previmos con elegancia en la cimentación.

También dedicamos mucho tiempo a estudiar a profundidad sobre arquitectura de software y patrones de diseño, porque probablemente no hayamos construido nada parecido antes y queremos asegurarnos de que cada detalle está considerado. Todo cuenta.

Los viajes largo son agotadores

Un proyecto con una fecha límite bien definida y una lista interminable de resultados por entregar es la combinación perfecta para destruir nuestra ilusión de alcanzar la perfección en cualquier tarea. Pocas cosas desmoralizan tanto a un equipo o individuo como recibir la noticia de que las prioridades del proyecto cambiaron y el trabajo de la última semana es simplemente inservible. Esto sucede sobre todo en ambientes de cambio súper constante, como start-ups.

Todo ese esfuerzo inicial fue en vano. Pero hay que seguir adelante. Debemos volver a poner el mismo compromiso y dedicación a la excelencia en el nuevo documento de requerimientos aprobado.

Si eres una persona perfeccionista y positiva, esa noticia quizás no te duela mucho. Incluso puede que encuentres placer en empezar de nuevo. Pero también es posible que una parte de ti haya perdido un poquito de motivación.

Un cambio ahora. La semana pasada viene otro. Luego otro.

La incertidumbre es la norma. El trabajo se convierte en una rutina agotadora.

Recalibra el GPS

La inspiración para escribir este artículo me llegó después tener que aplicar una serie de cambios drásticos en el proyecto más reciente que estoy construyendo. El nuevo sprint deshacía el trabajo del anterior. Así por varias semanas. Naturalmente que me llené de frustración.

Una tarde de esos días salí a dar un paseo a pie, esperando que un poco de aire fresco me ayudara a encontrar la actitud correcta para transformar ese frustración en productividad.

Afortunadamente encontré de nuevo la motivación en la siguiente idea:

El objetivo fundamental de mi trabajo es entregar valor. Nada más. No es complacer al ego. Tampoco es entregar código elegante, mantenible y con buenas prácticas. Nope. El único objetivo es entregar algo útil.

No puedo recordar la última vez que un manager me preguntó: “¿cómo hiciste eso?”. Pero sí recuerdo la última vez que me preguntaron: “¿para cuándo queda?”.

Para hacer progreso continuo, esta personalidad perfeccionista debe cambiar su actitud, su eje guía para tomar decisiones.

Toma acción

Podemos llevarnos horas, incluso días, discutiendo sobre el patrón de software más apropiado para un proyecto o podemos elegir el que parece más apropiado y comenzar a construir. Un camino complace al ego, el otro marca una diferencia.

Nosotros podemos valorar el proceso. Pero nuestro cliente valora el resultado.

Incluso factores importantes, como la aplicación de patrones de diseño y pruebas de código, son secundarios a la entrega de valor funcional.

Naturalmente, nuestra curiosidad y motivación por la excelencia nos llevarán a descubrir conceptos que nos llenarán de emoción. “¡Esto resuelve todo!”, pensaremos ingenuos cada vez que encontremos algo completamente nuevo.

Pero ahora tenemos una actitud renovada.

Nos detendremos a evaluar la complejidad de implementar ese nuevo concepto, según nuestra experiencia y el tiempo disponible. Si resulta muy complejo (más de un día), dejaremos ese aprendizaje para una sesión de estudio posterior al desarrollo de valor.

Tener un plan es importante. Pero entre más detalles agreguemos, más nos alejaremos de la parte esencial: iniciar. Consigamos la mínima información necesaria que necesitamos para comenzar. Luego, comencemos. Sobre todo antes de creer que estamos listos.

Tomar acción nos dará información valiosa que no hubiéramos obtenido en ninguna investigación previa.

Cada entrega es una parada, no es el destino.

Entregar avances con frecuencia para comparar el resultado con la expectativa, es la cadencia que nos mantendrá enfocados e inspirados. Es el proceso de recarga natural de energía y motivación.

Hacer entregas frecuentes también nos ayudará a reducir los cambios drásticos de requerimientos. Ese tiempo que ganaremos podemos usarlo para revisar más a fondo esos conceptos interesantes que descubrimos, pero que previamente decidimos dejar a un lado para enfocarnos en entregar valor.

Sin embargo, ninguna estrategia nos salvará de la posibilidad de recibir la noticia de que tenemos que empezar de cero. Quienes planean y diseñan el proyecto descubrieron una nueva dependencia o un requerimiento indispensable y tuvieron que rearmar la estrategia.

Ese es el estado puro en una start-up.

Adoptar una actitud de viajero nos ayudará a sobrevivir en ese hábitat.

Si ocurre un cambio drástico antes de lo planeado, para nosotros será como una parada en un viaje cuyo destino cambia con frecuencia.

Utilizaremos esta pausa para hacer una revisión del camino recorrido, tomando en cuenta los siguientes puntos:

Lo que hemos aprendido hasta ahora

Cuando los requerimientos del proyecto nos llevaron a aprender un nuevo patrón de arquitectura de software, un algoritmo especializado o hasta un nuevo lenguaje, es importante que documentemos todas esas lecciones con el detalle necesario, considerando que al menos habrá una persona que consultará lo que hemos construido hasta ahora: nuestro Yo Futuro. Aunque las necesidades cambien para el siguiente sprint, el aprendizaje se quedará con nosotros.

Por otro lado, la curiosidad y el placer por escribir software inevitablemente nos llevarán a aprender muchos conceptos y nuevas maneras de resolver un problema. Pero si somos responsables y queremos entregar dentro de una fecha límite, quizás no seamos capaces de digerir y aplicar todo ese nuevo conocimiento.

Guardemos las referencias hacia todos esos nuevos conceptos. Serán nuestra guía de aprendizaje cuando dediquemos tiempo para mejorar nuestras habilidades.

Lo que podemos mejorar

El tiempo es quizás el principal enemigo de una personalidad perfeccionista. Si queremos algo bien hecho, debemos tomarnos el tiempo necesario para construirlo. Pero si el cliente no somos nosotros, debemos priorizar el resultado sobre el proceso.

Debemos buscar la entrega rápida y constante de valor.

Si hemos logrado entregar el trabajo a una cadencia constante, es porque muy posiblemente hemos usado cinta adhesiva por aquí y por allá para lograr que algo funcione. Es decir, copiar y pegar el mismo bloque de código en diferentes módulos, poner un valor privado o secreto en texto plano, escribir código de lógica de negocio dentro de la capa de presentación (UI), etcétera.

Los ejemplos anteriores son recursos útiles sólo si nos ayudan a acelerar la entrega y validación de una idea, prototipo o funcionalidad.

Pero debemos aceptar algo: esos parches y atajos representan lagunas de aprendizaje o lecciones que dejamos incompletas. Son un indicador de las áreas de conocimiento en las que podemos trabajar para convertirnos en profesionales de primera clase.

La próxima vez que tengamos que usar un parche para resolver un problema, una buena costumbre es preguntarnos ¿qué conocimiento necesito para resolver este escenario de una manera profesional? Usualmente, dentro de las búsquedas que hemos hecho en Google encontraremos pistas para responder esa pregunta.

Un gran herramienta es una libreta a la mano donde registremos todos esos conocmientos que nos faltan por adquirir.

La habilidad más valorada

No sé cómo decir esto, pero no podemos hacerlo todo. Eso es estructuralmente imposible.

Para aumentar nuestras posibilidades de éxito en cualquier actividad, tenemos que aprender a reconocer las cosas que importan y las que no. Cuándo aplicar un parche y cuándo reconstruir.

En un entorno de cambio rápido y constante, la habilidad más importante que podemos adoptar es la incompetencia estratégica:

La incompetencia estratégica es decidir de forma consciente y proactiva las áreas que no importan y a las que robaremos tiempo, para dárselo a aquellas áreas que son fundamentales.

¿Dejaste algo incompleto hoy porque no cumple tus estándares? ¿Es sólo para ti o alguien más espera resultados?

Anota. Aprende. Avanza.

This post is licensed under CC BY 4.0 by the author.