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:
- Manual: Lo realiza un humano paso a paso.
- Repetitivo: Si lo has hecho una vez, probablemente lo harás de nuevo.
- Automatizable: No requiere de juicio humano. Un algoritmo podría hacerlo.
- Táctico: Es reactivo, motivado por eventos, en lugar de estratégico y proactivo.
- 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.