Archivo de la etiqueta: gestión del tiempo

El trabajo asíncrono le gana por mucho al trabajo duro

Creo que el trabajo asíncrono puede ser la clave para tener éxito en el 2023.

El éxito, independientemente de lo que signifique para cada quien, se consigue con el principio fundamental de identificar lo que funciona y lo que no, para luego hacer más de lo que funciona, y menos de lo que no.

El debate canónico entre líderes es sobre qué filosofía deberían impulsar en sus equipos para alcanzarlo: el trabajo duro, o el trabajo inteligente. Las personas que defienden cada punto piensan haber logrado encontrar la respuesta. Hay que trabajar más duro, y no tan inteligentemente — o al revés.

Incontables horas se han invertido en intentar encontrar el balance perfecto entre trabajar duro e inteligentemente. No te podría decir si se ha llegado a algo sustancial en esas discusiones, porque parece ser que la conclusión intelectualmente estimulante es que deberías de trabajar inteligente y duro al mismo tiempo.

Mi postura es que hay que ser lo suficientemente inteligente para identificar en qué trabajar duro. Y la filosofía de trabajo que te permite hacer eso, es el trabajo asíncrono.

Déjame explicarte. Vamos por partes.

Trabajo duro vs. inteligente

Analicemos la versión más polarizada de cada parte del argumento.

El que propone trabajar duro sugiere que el valor de la recompensa al final del camino es directamente proporcional al esfuerzo que costó conseguirla. Esta mentalidad te dice que mientras más tiempo y esfuerzo le inviertas a algo, mejor será el resultado. Y que si estás tomando atajos para conseguir tu objetivo, significa que no lo quieres tanto, ergo, no lo mereces. Sigue estrategias de productividad tradicionales y rudimentarias. Desvelos, estrés, sangre, sudor y lágrimas. El trabajador duro se siente orgulloso del sacrificio personal que significa conseguir su objetivo.

El que recomienda trabajar de manera inteligente busca atajos y la menor fricción posible. “El fin justifica los medios” es su frase favorita, y hará hasta lo imposible por ahorrarse tiempo, dinero y esfuerzo en virtud de obtener un resultado positivo. Encontrará fallas en los sistemas que le den una ventaja sobre sus competidores, y si resolver un problema no es cuestión de vida o muerte, no buscará la manera de hacerlo hasta que lo sea. El trabajador inteligente se siente orgulloso de haber logrado resultados adecuados por una fracción del esfuerzo que otros le invirtieron al mismo problema.

En ambos extremos de este espectro, los objetivos se cumplen y se llega al éxito.

El problema, y la razón por la que estos extremos son malos, es que ninguno de estos modelos de trabajo es sostenible a largo plazo en el contexto de un equipo u organización.

El trabajo duro termina por quemar a las personas. Las jornadas de trabajo son enloquecedoras, con horas interminables y retos imposibles, justificados por una cultura de sacrificio. Aquellas personas que forman parte de una cultura que glorifica el trabajo duro dejan de preocuparse por su bienestar y el de sus familias, y de alguna manera internalizan que cualquier cosa que valga la pena merece trabajo extenuante.

El trabajo inteligente, en su versión más extrema, produce soluciones frágiles e insostenibles. Estas soluciones, si bien cumplieron con objetivos puntuales, generan deuda técnica y organizacional, porque al estar construidas atajo sobre atajo, cambiar de dirección es cada vez más costoso y complicado. Además, una cultura en la que el fin justifica los medios, invita a sus integrantes a no buscar más allá de las soluciones rápidas y fáciles (“inteligentes”). Hace que las personas dejen de pensar de manera crítica, irónicamente.

Imagen usualmente usada para representar la diferencia entre trabajo duro y trabajo inteligente.

Los aspectos negativos de los extremos en este debate están representados en la imagen al inicio de esta sección.

Esta imagen, irónicamente, intenta comunicar los beneficios del trabajo inteligente. Pero analiza: los que empujan los cubos están trabajando obviamente de más, mientras que el que decidió esculpir una esfera tiene una tarea mucho más sencilla.

Observa cómo ninguno de los dos extremos resuelve el problema real: llevar un cubo de izquierda a derecha de la manera más eficiente posible. Los que trabajan duro llegaron tarde, cansados y probablemente no van a querer hacerlo de nuevo, mientras que el otro llegó con una esfera.

Cualquier extremo de esta discusión termina siendo perjudicial para la organización una vez aplicado. Es aquí donde debemos de buscar un punto medio que nos permita encontrar un balance entre el trabajo duro y el trabajo inteligente. Una manera de trabajar que nos permita tomar los mejores aspectos de los extremos y usarlos de una manera sana, que produzca resultados y que no cueste el bienestar de los miembros del equipo.

Ese punto medio es el trabajo asíncrono.

El trabajo asíncrono

Trabajar de manera asíncrona, en esencia, significa que cada miembro de la organización puede moverse de manera independiente, convergiendo en tiempo/espacio con otros solo en situaciones absolutamente necesarias.

Cuando se trabaja de manera asíncrona, los miembros de un equipo tienen el sentido de agencia necesario para tomar decisiones y hacerse responsables de sus consecuencias. Cuentan con la confianza de sus líderes, pues los objetivos son claros y los problemas a resolver tienen sustento. Trabajan en público, y son transparentes con sus procesos de deliberación. Sus mensajes son claros y asertivos, y no están atados a un horario de disponibilidad definido.

Valoran el resultado de su esfuerzo, no la magnitud del mismo.

Si el principio para alcanzar el éxito es hacer más de lo que funciona, y menos de lo que no, ¿cómo sabes cuál parte del proceso está funcionado y cuál no, si no tienes más que información anecdótica sobre ello? Al contrario de los modelos de trabajo síncronos, donde los problemas se resuelven en privado, a través de medios efímeros y con opacidad, el trabajo asíncrono deja una estela de información que puede ser utilizada para analizar y mejorar el proceso de toma de decisiones de la organización.

Hay que ser lo suficientemente inteligente para identificar en qué trabajar duro. Y el trabajo asíncrono ofrece un balance sostenible entre ambos mundos.

Trabajar de manera asíncrona puede ser considerado trabajo duro porque te reta a ser consciente de tus pensamientos y a estructurarlos para poder escribir ideas coherentes. Requiere que crees los sistemas de información necesarios en tu organización para poder delegar la toma de decisiones. Te obliga a confiar en tu equipo y a ser responsable de tu comportamiento y disciplina.

Trabajar de manera asíncrona también es trabajar inteligente porque estás haciendo que los miembros de tu equipo cuenten con la autonomía para tomar decisiones, incrementando su sentimiento de satisfacción y felicidad. ¿Sabes qué producen las personas satisfechas y felices? Buenos resultados. Eso es inteligente. Además, al trabajar de manera asíncrona, los miembros del equipo tendrán el tiempo y espacio necesario para ejercitar su creatividad y solucionar problemas de una manera más fundamental.

Trabajar duro en ser un mejor líder, y al mismo tiempo inteligente por fomentar una cultura laboral sana y que respete a las personas que se desarrollan en ella. No suena mal.

Conclusión

La decisión de trabajar duro o trabajar inteligente, a final de cuentas, termina siendo responsabilidad de cada quien.

Si tú, como líder, en tu organización fomentas una cultura de trabajo duro, hazlo con la conciencia de que las personas que trabajan contigo eventualmente van a cansarse y se van a ir.

Si, por el contrario, fomentas una cultura de trabajo “inteligente”, date cuenta de que probablemente estás creando una organización que produce soluciones frágiles y costosas.

Pero si fomentas una cultura de trabajo asíncrono, estarás asumiendo tu responsabilidad como líder de equipo. Crecerás personal y profesionalmente, mientras generas un ambiente de confianza, autonomía y responsabilidad compartida con tu equipo. Uno donde las personas se sentirán parte de una organización que respeta su tiempo, esfuerzo y pericia.

Así que, entre decidir trabajar duro o inteligente, recuerda que hay que ser lo suficientemente inteligente para identificar en qué trabajar duro.

Cosas que no te enseñaron en la escuela, pero debes saber para trabajar en la industria del software

A continuación te comparto cosas que no te enseñaron en la escuela, pero que debes de saber si quieres trabajar en la industria del software.

  1. Tú te pones tus propias metas. En la escuela tenías la comodidad de llevar un “plan de estudios”. Sabías lo que seguía en cada paso. Acá afuera nadie va a entregarte un plan de estudios para tu carrera profesional. Tienes que definirlo por ti misma.
  2. No tienes que pedir permisos. ¿Quieres aplicar para un trabajo? ¿Te urge cambiar de tecnología? ¿Te gustaría ganar en dólares y vivir en LATAM? ¿Tu sueño es trabajar para un unicornio? ¿Lo que quieres es pasar más tiempo con tu familia? Date. Nadie te detiene.
  3. Debes de tomar decisiones por tu cuenta. En la escuela te condicionaban a aprender una metodología preestablecida. Salirte del protocolo era castigado. En la vida real tienes que aprender a tomar decisiones y a hacerte responsables de sus consecuencias. Nada más.
  4. Puedes irte en cualquier momento. Tenía un profe que se quejaba de los alumnos diciendo “es que ustedes creen que las cosas van a ser como ustedes quieran”. ¿Y por qué no? Si estás en un trabajo o situación que no te favorece, ¿para qué te quedas? No te pongas la camiseta.
  5. Se espera que sepas colaborar, no que te sepas todos los lenguajes de programación del mundo. Saber más lenguajes de programación solo significa que sabes más lenguajes de programación. Aprende a resolver problemas colaborando — técnicos, de negocio, de usuario.
  6. Saber hacer la pregunta correcta es más importante que ser una enciclopedia de conocimiento. Expandiendo en el punto anterior un poco. “No es la respuesta de StackOverflow, es que sepas lo que tienes que Googlear para encontrarla.”
  7. Programar es un medio para resolver problemas, no un fin. Sí, yo sé que es bien divertido programar. Te aconsejaría que no te clavaras únicamente en eso. Puedes programar toda la vida y no resolver ningún tipo de problema. Y te van a pagar por resolver problemas.
  8. Una solución que es correcta el día de hoy, mañana puede ser considerada ineficiente. Yo creo que en software no hay soluciones “exactas”, sino soluciones “ideales para la situación actual, con el conocimiento que tenemos”.
  9. Existen lenguajes más aptos para resolver ciertos tipos de problemas. Hay desde “lenguaje especializado” que es complicado de aprender, pero te dará soluciones compactas, a “lenguaje genérico” que es fácil de aprender, pero será lejos del ideal para resolver todo.
  10. Mientras más “escalas” de posición, se trata menos del código y más de las personas. Las habilidades más valiosas de alguien considerado “Sr.” son las sociales y de liderazgo. Gente que programe “bien” hay un montón.
  11. Necesitas una red de apoyo. Sí o sí. Rodéate de gente que te quiera ver crecer y que comparta tus principios y valores.
  12. Aprende a valorar tu trabajo. Costo ≠ Valor.  No cobres por el esfuerzo físico que lleva hacer una tarea. Cobra por el valor del problema que estás resolviendo.

Originalmente compartí este hilo en Twitter, donde también puedes seguirme.

Liderazgo efectivo: La importancia de las reuniones 1on1 en equipos de desarrollo

Profesionalmente, crecí en un ambiente que desde muy al inicio me enseñó la importancia de ver primero a la persona y luego su utilidad. Y aún recuerdo el primer 1on1 (one-on-one, o una plática uno a uno) que tuve con mi líder.

Hoy sé lo afortunado que fui.

Aún no tenía tanta experiencia en la industria. Y, como muchos, pensaba que el rol del líder era regañarme, presionarme o criticar mi trabajo (luego entendí que lo que yo pensaba era un líder, en realidad era un jefe). La sorpresa que me llevé cuando en mi primer 1on1 con él, durante una hora, en vez de reclamarme por lo que es lo que estaba haciendo “mal” (a mi parecer), me preguntó que cómo me podía ayudar para que lo que estaba haciendo bien fuera más sencillo.

En ese momento fue cuando entendí el trabajo de un líder: crear conexiones con las personas con las que trabaja, entender qué los motiva y buscar la manera en que sus labores diarias sucedan en la periferia de sus intereses personales.

En una industria que está tan acostumbrada a enfocarse en el aspecto utilitario de las cosas, una conexión humana puede sentirse como un vaso de agua fría en el desierto.

A lo largo de mi carrera en software he conocido personas que, a pesar de llevar años trabajando con su equipo, nunca han intercambiado una palabra más allá de un reporte de progreso. Líderes que no saben que su equipo está quemándose porque no están haciendo aquello que los motivó a aplicar a su empresa en primer lugar. Contribuidores individuales que únicamente tienen visibilidad de lo que tienen que hacer de aquí al viernes.

No es sorpresa que tantas personas estén descontentas con lo que hacen 8 horas al día.

Líder: ¿cuándo fue la última vez que saliste de una llamada con tus reportes y saliste con un mejor entendimiento de qué puedes hacer para ayudarles a tener más éxito?

Ten 1on1s regulares. Hablen de qué los motiva. Hablen de qué les causa estrés. Haz un esfuerzo por ir más allá del dashboard de Jira, y si algo no está funcionando, entiende por qué. Luego busca la manera de arreglarlo. Sé ese líder que van a recordar porque no solo pedía resultados, sino que ayudaba al equipo a conseguirlos.

El 1on1 es una oportunidad para ambas partes. No la desaproveches.

Cómo tener más de 24 horas al día

Todos tenemos las mismas 24 horas en el día. Tú, que programas en Java, cuentas exactamente con el mismo número de minutos de sol que tu compañera experta en React. Ambos trabajan en la misma compañía. En el mismo proyecto, incluso. Entonces, ¿por qué pareciera que ella puede hacer más, con más calidad, mientras tú batallas por cumplir con tus entregas a tiempo?

La respuesta es que tu compañera sabe cómo sacarle más provecho a su día. No se distrae, y encontró la manera de tener más de 24 horas en el día — pareciera.

La correcta gestión del tiempo es un Soft Skill esencial para cualquier desarrollador de software que valga su peso en sal.

Si gestionas bien tu tiempo, creerás que tienes más de 24 horas disponibles cada día de lo mucho que puedes hacer. Es por eso que debes de priorizar crear espacios en los que tu creatividad pueda no solamente nacer, sino florecer. Libre de distracciones. Y es que muchas personas de la industria tienen la concepción errónea de que desarrollar software es una tarea meramente técnica. Cuando en realidad es un proceso 100% creativo.

Irónicamente, tu trabajo sucederá la mayor parte del tiempo en frente de una computadora, donde las distracciones están a la orden del día.

Por fortuna, existen estrategias que puedes implementar para que, efectivamente, puedas tener más de 24 horas efectivas en tu día.

Reclama tu tiempo

Lo primero que debes hacer es establecer reglas para que puedas ser eficiente. James Clear dice en su libro Atomic Habits: “no subes al nivel de tus metas, sino que caes al nivel de tus sistemas.”

Lo primero que debes hacer para asegurarte de que no vas a perder tiempo efectivo de tu día es controlar tu ambiente.

Apaga tus notificaciones. Tan simple como puede sonar, de verdad no necesitas estar al pendiente de todo lo que está pasando en tu compañía en todo momento. Y no, tampoco necesitas saber cuál es el último #lord en Twitter.

Cierra Slack y tu cliente de correo. De verdad, está bien. No necesitas responder de manera inmediata.

Agrega en tu calendario bloques de tiempo específicos en los que tu única tarea sea revisar tus mensajes pendientes.

Bloquea distracciones. Estar en la zona es difícil. Tu cerebro buscará cualquier oportunidad para presionar ⌘T en Chrome y comenzar a escribir “faceb”. A menos que hayas desarrollado un nivel de conciencia bastante bueno como para poder cacharte a ti mismo y detenerte, la solución más sencilla es que simplemente no puedas acceder a distracciones.

Modifica tu archivo para bloquear todos los dominios que sabes que son un agujero de conejo para ti. Aquí hay una lista de más de 2 mil dominios que Facebook usa – agrégalos y no solamente no podrás distraerte viendo memes, sino que tampoco te podrán seguir en internet. Aquí hay una de Twitter.

Si quieres un poco más de flexibilidad, puedes usar una aplicación como SelfControl, que es en esencia lo mismo.

Sé más celoso de tu tiempo. No quiere decir que tengas que decir que no automáticamente a todo, o que no te conectes a absolutamente ninguna llamada. Pero sí es bueno que te comenzaras a preguntar si realmente necesitas dedicarle tiempo a algo en medio de una sesión de debugging.

Puedes comenzar con estos tips para que evites llamadas innecesarias.

Otra técnica que me ha funcionado tremendamente es configurar mi iPhone para que las llamadas de números que no tengo registrados se vayan directamente a buzón. Puedes activar esto yendo a Ajustes > Teléfono > Silenciar desconocidos.

Estos consejos te ayudarán a no perder tiempo. Ahora veamos como puedes dar el siguiente paso y ganar tiempo.

Compra tiempo y automatiza

Puede que esta parte sea la más atractiva porque tiene que ver más con herramientas y menos con disciplina. Pero es importante que sepas que si no arreglas primero tu problema de pérdida de tiempo, los consejos en esta sección no tendrán tanto efecto.

Habiendo dicho esto…

Compra el tiempo de otros. Haz una lista de cosas que no te gusta hacer en tu día a día. Puede ser cocinar, lavar la ropa, buscar estacionamiento, hacer el súper. Cuando tengas esta lista, analiza cuánto tiempo te toma hacerlas. Saca la cuenta de cuántas horas le inviertes a estas actividades, en conjunto, a la semana.

Supón que tú ganas $50 USD por hora y surtir tu comida te toma 2 horas a la semana. Si le puedes pagar a alguien para que lo haga por ti pagando menos de $100 USD a la semana, hazlo.

Paga por herramientas que te resuelvan problemas muy específicos. Hay cientos de miles de personas que comparten el mismo tipo de problemas. Y por más oscuro que sea lo que quieras resolver, seguramente hay un servicio que lo puede hacer por ti. Considera usarlo.

Por ejemplo, en mi caso, gran parte de mi trabajo sucede en consultas con miembros de esta comunidad. Durante un tiempo intenté administrar mi agenda de manera manual, pero muy pronto me di cuenta de que mi tiempo podría estar mucho mejor empleado en otras tareas. Así que decidí dejar de preocuparme puntualmente por mi agenda, y ahora es un trabajo que hacen Calendly y Zapier por mí.

Abstrae y simplifica las tareas más repetitivas de tu día. Busca que tu workflow no sea tan complicado — mantenlo simple.

Utiliza un administrador de snippets para que no tengas que estar escribiendo lo mismo una y otra vez. En lo personal utilizo Alfred, pero podrías considerar también TextExpander, si es que buscas una herramienta más robusta.

Alfred me gusta porque también tiene un administrador de portapapeles integrado, que también es una herramienta indispensable para mí. Un administrador de portapapeles te permite tener, básicamente, un historial de todo lo que has copiado durante un determinado periodo de tiempo. Ya no te tienes que preocupar por pegar antes de copiar otra cosa. Cambia el juego completamente.

Conclusiones

No tener una buena gestión del tiempo no solamente es un problema en tu cabeza. Tiene consecuencias reales en nuestra productividad y en nuestra propia percepción de qué tan bien estamos haciendo nuestro trabajo.

El objetivo, a fin de cuentas, no es que tengas más horas al día, sino que le puedas sacar mucho más provecho a las mismas 24 horas que tengo yo y todas las demás personas en el mundo.

Si aplicas estos puntos, sí es posible que sientas que tu día ahora tiene más de 24 horas como por arte de magia. Pero no, no es magia. Es disciplina.