Toil: El enemigo de la escalabilidad

El Trabajo que nos Impide Avanzar

Imagina que un ingeniero pasa la mitad de su jornada reiniciando servicios manualmente, aplicando parches de seguridad uno a uno en cien servidores, o extrayendo datos a mano para un informe semanal. Este tipo de trabajo, conocido en el mundo SRE como “Toil”, es el principal enemigo de la escalabilidad y la innovación.

Ben Treynor Sloss, el fundador del equipo SRE de Google, define el Toil con cinco características precisas. Es un trabajo que es:

  1. Manual: Lo realiza un humano paso a paso.
  2. Repetitivo: Si lo has hecho una vez, probablemente lo harás de nuevo.
  3. Automatizable: No requiere de juicio humano. Un algoritmo podría hacerlo.
  4. Táctico: Es reactivo, motivado por eventos, en lugar de estratégico y proactivo.
  5. Sin valor a largo plazo: No aporta ninguna mejora permanente al servicio. Una vez hecho, se olvida.

El objetivo de un equipo SRE es mantener el Toil por debajo del 50% del tiempo de cada ingeniero. El resto del tiempo debe dedicarse a trabajo de ingeniería real: automatización, mejora de la monitorización, desarrollo de nuevas herramientas, etc.

Ejemplos de Toil

El Toil puede esconderse en muchas tareas cotidianas:

  • Gestión de alertas: Conectarse a una máquina para ver los logs cada vez que salta una alerta de “disco casi lleno”.
  • Despliegues manuales: Copiar ficheros por SSH, reiniciar servicios y hacer un rollback a mano si algo falla.
  • Gestión de usuarios: Dar de alta o baja a usuarios en una base de datos mediante comandos manuales.
  • Peticiones de capacidad: Aumentar la memoria o el disco de una máquina virtual a través de una interfaz web.
  • Reinicios periódicos: “El servicio X se vuelve lento los domingos, así que lo reiniciamos a mano cada sábado por la noche”.

¿Por Qué es tan Malo el Toil?

El Toil no es solo aburrido, es peligroso para el equipo y la empresa:

  • Quema al equipo (Burnout): Nadie quiere un trabajo monótono y sin retos. Un exceso de Toil lleva a la frustración y a la fuga de talento.
  • Impide escalar: Si el número de usuarios se multiplica por 10, el Toil asociado a gestionarlos también se multiplica por 10. El equipo se ahoga en trabajo operativo en lugar de preparar el sistema para el crecimiento.
  • Fuente de errores: Los humanos cometen errores, especialmente cuando realizan tareas repetitivas. La automatización no se cansa ni se distrae.
  • Falsa sensación de productividad: Estar ocupado con Toil no es lo mismo que ser productivo. El equipo puede sentir que trabaja mucho, pero el servicio no mejora a largo plazo.

Conclusión

El primer paso para combatir el Toil es identificarlo y medirlo. Animar al equipo a registrar el tiempo que dedican a tareas operativas puede ser revelador. Una vez que sabemos dónde está nuestro Toil, podemos empezar a aplicar la solución principal de la filosofía SRE: la automatización.