Hace 10 días Jonathan Blow escribió este tweet,
Y el engine en cuestión luce de esta forma,
Hay toda una corriente de pensamiento que se está trabajando menos, que sobra gente en las empresas y que nadie está trabajando sino sipping lattes y mandando correos asegurándose que todo el mundo tenga los pronombres correctos. Vamos por partes.
Lo primero es que en el mundo de la tecnología existe un problema de oferta y demanda, hay pocos programadores para los billones de líneas de código que hacen falta. Post-covid se contrató DEMASIADO, al punto que muchos puestos se llenaron de gente que posiblemente está empezando su carrera y con salarios bastante altos que elevan el CapEx. Al momento de recortar presupuestos el sitio más obvio que existe sin duda son los salarios de tus ingenieros porque es mucha plata y no son edificios, los cuales no te puedes deshacer con par de emails y una transferencia bancaria.
Esta sobre-contratación hacía que a veces al entrar en una sala de reuniones tenías a 7 personas para resolver un problema bastante pequeño, y muchas veces pocos eran IC (individual contributors). Yo he lidiado con inconvenientes donde hay más de 15 managers discutiendo un problema y mi aporte es no decir nada porque es algo que seguramente una sola persona puede resolver e intervenir de hecho va a dificultar la resolución del asunto. Estos tiempos se están acabando y hay layoffs en todos lados. Yo creo que en el mundo de tech hemos llegado a un punto que un ingeniero espera que haya al menos:
Un PM que le diga lo que tiene que hacer.
Un EM que traduzca lo que hay que hacer a tareas técnicas.
Un agile coach que corrija anti-patrones en el equipo.
Un analista que saque los reportes.
Y claramente esto es caro, por no decir que es un lujo. Es muy cómodo trabajar así, pero ha llegado un punto que un programador espera que su trabajo esté abstraído de las realidades de la empresa.
Toda esta gente requiere una coordinación que puede ser tediosa e improductiva, los clásicos Ways of Working. Al punto que se ha generado una industria sobre la industria. En el 2001 unos nerds se juntaron y salió el Agile Manifesto.
Este manifesto sería un boom y una revolución frente a los procesos burocráticos y ciclos de medio año que eran predominantes en el momento. Scrum™ se pondría de moda y se venderían millones de libros, certificaciones y las empresas pasarían horas forzando a sus empleados a hacer todos los rituales, estimar historias y formar parte de infinitas discusiones de cómo trabajar mas no de lo que se trabaja. Esto sin comentar todos los entrenamientos y entrenadores evangelizando sobre cómo tiene que fluir cada reunión.
Existe el privilegio de muchos programadores que dicen que no les gusta escribir documentos, no les gustan las reuniones o no les gusta escribir por Slack. Al final parece que simplemente no les gusta nada. Yo he estado en proyectos que no hacen dinero, que hacen miles de dólares, que hacen millones de dólares y que pierden millones de dólares. Lo que diferencia a los exitosos de los no exitosos sin duda no es la cantidad de rituales que se hacen sino el trabajo que se entrega al final del día, eso es lo verdaderamente importante. El equipo haciendo más Scrum™ no es el que necesariamente mejor opera.
Sí, es posible tener un equipo pequeño de gente excepcional que saca cosas revolucionarias. El equipo que empezó Hearthstone fueron unas 10 personas, y el juego hoy en día es de los más exitosos en la historia de Blizzard. Github Copilot fue un equipo de cinco (vale acotar que con el apoyo de Microsoft Corporation, claro está). El problema con el tweet de Blow no es que no se puedan hacer cosas con pocos procesos, pero los juegos hoy en día lucen así,
El feature set necesario para producir esa imagen no es alcanzable por 2 carajos echándole bola en una oficina una primavera, hacen falta cientos de trabajadores esforzándose por años, incluso generaciones. Death Stranding, el juego del que sale ese still, fue hecho con el engine de juegos Decima, de la gente de Guerrilla Studios cuando hicieron Zero Dawn (budget: $45 millones) y Forbidden West (budget: ~$200 millones). Sin duda en esos $250 millones hay ineficiencias, grasa que cortar y desperdicio de trabajo, pero el resultado es un esfuerzo colectivo inalcanzable para un puñado de genios.
El esfuerzo de un equipo grande requiere una gran organización y perfectamente puedes terminar con una empresa ineficiente porque parte de los incentivos a los líderes no es producir sino crecer. La dos maneras de ser promovido dentro de una empresa como gerente son:
Tomar el puesto de tu jefe.
Que la organización debajo tuyo crezca tanto que cambie la naturaleza de tu trabajo y recibas un ascenso.
Esto último es lo más fácil en una economía saludable y no solo te beneficia a ti sino a cualquiera arriba tuyo —incluyendo a tu pareja, gegege— y los incentivos de la empresa van en contra de tus incentivos personales.
Lo más importante de todo lo que he hablado es que hace sonar como si alguien está robando a la empresa solo por ser contratado. No hay nada anti-ético en trabajar en un sitio ineficiente. No es fácil organizar equipos, pero de nada vale esa organización si al final no se produce nada. Y creo que acá es donde el tema coge vuelo porque mucha gente genera una identidad sobre este meta-trabajo incluso a nivel individual.
Hubo una época que pasaba demasiado tiempo arreglando mi notion para que estuviera organizado y ordenado. Ahí llevaba casi todo, incluyendo el canal de Youtube.
Era un desperdicio de tiempo, era esfuerzo, más no trabajo. Me sentía bien y pensaba que mis objetivos eran alcanzables, pero al final del día no era nada que un todo list en el teléfono no pudiera hacer. Igual en el trabajo, tengo un documento gigante que consta de:
Día del año
Lista de cosas que tengo que hacer
Lista de cosas que pasaron.
Esto es más que suficiente para llevar control de mi carrera y mi vida. De verdad, todo lo demás es instrumentalización innecesaria que se interpone entre de verdad hacer cosas. Incluso para el gym tengo una nota que se llama PRs y dice cuánto es lo más que levanto en cada ejercicio de fuerza.
Esto me funciona a mí, no estoy cuestionando tu pascualina de adulto donde haces journaling y escribes cada pensamiento. Se vende mucho productivity porn en el mundo y mi consejo es que no gastes energía de forma estructurada para compensar que el resto de tu vida es un desastre. Less is more.
Ahora bien, he defendido el tweet de Blow y hecho el mejor esfuerzo de entender de dónde viene, acá mi problema con la idea general:
Nadie te está deteniendo, Jonathan.
Si alguien quiere sentarse con su marido a escribir Real Engine 1.0 en un período de 2 años, no hay quien los detenga. Si la mejor manera de trabajar fuera contratar a 3 pendejos super talentosos y volver en 6 meses, todo el mundo lo haría. La realidad es que no hay tantos pendejos y tampoco queremos serlo. Hay gente que si trabaja 60h a la semana se vuelve millonaria, pero es una apuesta bastante gorda que la mayoría de los desarrolladores no materializan en lo absoluto.
Blow hizo Braid, uno de los juegos independientes más exitosos de la historia. Luego con un equipo un poco más grande hizo The Witness, otro de los juegos independientes más exitosos de la historia. Sin duda desde su perspectiva la solución a cualquier problema es sentarse y hacer el juego más exitoso de la historia múltiples veces. Esto no lo hace cualquiera, la mayoría de los desarrolladores indies no terminan millonarios sino medicados. Es como si Michael Phelps le dijera a alguien “just swim faster, bro”.
Jonathan tiene bastante calle como para decir esto, pero me saca la piedra es la cuerda de jalabolas que jamás han hecho un coño quejándose en sus replies sobre cómo ese daily stand-up de 15 minutos es lo que se interpone entre ellos y la grandeza. Anda a cagar. Se puede perder el tiempo, pero así entres en una reunión de 1h todos los días a hacer mewing con el resto del equipo te quedan 7h para sacar lo que quieras sacar. No existe ninguna capa de instrumentalización y organización que compensen sentarse y echarle bola, es tan sencillo como eso.
Mi filosofía es que si al salir de una reunión o al terminar de escribir un documento no tienes nuevas tareas o no cierras/avanzas decisiones, pues no trabajaste. Perdiste el tiempo. Bajo esa métrica pueden cortar toda la grasa que quieran. La creencia estúpida que si te dan 6 meses y 2 cajas de Redbull vas a cambiar el mundo es puro ego. Lo que terminarías es mamao’, más gordo y con un cuadro clínico de ansiedad.
Una Bulla
Gracias por el apoyo a: Juan, Daniel, Hugo, Moisés, Melecio, Ricardo, Paolo, Jose, Elias, Carlos, Elena, Nei, malbanyat, Ro, Guillermo, Daniel, Ciro y Isni. lqm. 🙏
Soy culpable de haber creido que bajarme un Task Manager y leer libros para "optimizar mi workflow" me iba a hacer más productivo. Lo que me ayudo al final fue:
- 0) Buscar ayuda para el ADHD
- 1) Lift Heavy Stuff
- 2) Aprender a dormir y respetar el tiempo de descanso
- 3) Anotar todas las ideas y separar lo que voy a hacer/ lo que quisiera hacer / lo que no voy a hacer
- 4) Automatizar las cosas que se pueden automatizar
- 5) 3 horas al día minimo de deep work sin telefono y sin abrir el mail
Si me tripeo procesos y productivity software, pero estoy claro que "hablar" sobre procesos y herramientas es un hobby y ahora lo trato cómo eso. El trabajo es lo que nos acerque cada vez a nuestras metas. Everything else is noise.