Así desarrollamos en Transparent Edge

Los invisibles de la CDN

A raíz de la última Bonilista, he caído en que muchas veces en Transparent Edge sacamos pecho de nuestra tecnología, de cómo solucionamos problemas, pero pocas veces hablamos de algo esencial en el núcleo de nuestro negocio como pueden ser los procesos. Siendo como somos API first, y sabiendo que nuestros desarrollos son una parte crítica de nuestra solución, el hecho de que desarrollar API y producto tenga para nosotros la menor cantidad posible de fricción era importantísimo.

Desde que empezamos a desarrollar nuestro API, para mí el proceso y la experiencia de desarrollo era algo vital. Por aquel entonces el chico nuevo y guapo en el desarrollo con el que yo ligaba era Ruby on Rails, y a pesar de que optamos por Python en aquel entonces, mucha de la filosofía de Ruby se vino conmigo. Sobre todo, que lo importante era desarrollar, y tu lenguaje de programación y framework (y más allá de la tecnología, tus procesos) no deberían estorbarte en lo que querías hacer.

Con esta filosofía, que mantenemos a día de hoy, tenemos un proceso de desarrollo muy opinionated, que dicen los yankis, pero a la vez con la libertad por delante. Esto quiere decir que los desarrolladores son libres para escoger sus armas, esto es, su entorno de desarrollo. A cualquier dev nuevo le recomendamos cosas basadas en lo que a otros nos ha funcionado previamente, pero no obligamos a usar herramientas, puesto que nos interesa el resultado, no cómo se llegue a él.

Esto se traduce en que la responsabilidad de las herramientas recae en el mínimo denominador común. Si estás haciendo algo que solo te afecta a ti, decides tú. Si estás haciendo algo que afecta a tu equipo, decide el equipo. Si lo que haces afecta a todo el departamento, pues hay que consensuarlo con el departamento. Esto que queda muy hippie lleva a algunas situaciones curiosas que hay que gestionar: Sistemas y Soporte usan Redmine como seguimiento de tareas y trunk-based como estrategia de versionado y Desarrollo usa Trello para el seguimiento de las tareas y git-flow para el versionado. Los dos equipos se coordinan entre sí sin ningún tipo de problema y entienden que no hay una única herramienta que valga para todo, por lo que se aceptan -y se quieren- con sus diferencias.

Obviamente en algún momento papá o mamá (los jefes de equipo y jerarquía) tienen que aportar expertise y cordura para que la cosa no se descontrole y aquello parezca la Feria de Abril de la tecnología, pero la gente buena entiende que todos remamos en la misma dirección, y que las herramientas son cómodas, pero son herramientas. Estas siempre deberían ser una forma de quitarte problemas, no de dártelos, así que obra en consecuencia y permite que actúen como multiplicador de la productividad de tu equipo, aunque el “encaje de bolillos” como engineering manager o CTO te cuesten unas horas de más.

La transparencia nos viene en nuestro nombre, por lo que es un core value que respetamos y transmitimos. Cuando tienes las personas adecuadas, la información y el contexto siempre redundan en mejor ambiente, productividad y coordinación.

¿Y tú? ¿Impones tu ley a los técnicos o dejas que ellos te la impongan a ti? 🤪

Diego Suárez es director de Tecnología de Transparent Edge.

Si alguna vez buscas a Diego, lo encontrarás con casi toda probabilidad donde haya un sistema operativo y no lo hallarás buscando el camino fácil, sino afrontando la alternativa más compleja. Estar siempre en el filo de la navaja le confiere la versatilidad y la visión necesarias para desarrollar la estrategia de tecnología que es el centro gravitacional de Transparent Edge. A caballo siempre entre desarrollo y sistemas, no por ello ha dejado de lado otras áreas, preocupándose por mantener el contacto con el usuario, que es para quien trabaja toda empresa tecnológica.