• La diferencia entre el calendario y un to-do list

    Cuando comienzas a preocuparte por organizar tu tiempo de una mejor manera, las primeras herramientas que te van a sugerir es usar un to-do list y un calendario. Un error que muchas personas cometen es asumir que estas herramientas son intercambiables, pero no es así. Ni de cerca.

    La configuración más común de este error es ver tu calendario como una lista de cosas que debes hacer.

    Pero tu calendario no es un to-do list.

    Cuando tengas espacios grandes en tu calendario, dedícalos a atacar múltiples tareas en tu to-do list. Estas tareas no necesariamente tienen que estar relacionados con tu trabajo. En mi to-do list yo tengo cosas como “cargar audífonos” o “agendar recolección de la lavandería”.

    La diferencia es sutil, pero poderosa.

    En tu calendario van eventos que están atados a un horario/lugar específico. “De 9 a 10 voy a hacer mi investigación para mi nuevo artículo”. Es algo que solamente puede suceder dentro de ese horario.

    En tu todo-list, agrega tu miscelánea de pendientes. “Revisar que se envió un correo” o “verificar que me hayan contestado X cosa”. No importa dónde lo haga, ni a qué hora.

    ¿Cómo sé si va en mi calendario o en mi to-do list?

    Agrégalo en tu calendario si…

    1. Más de una persona está involucrada.
    2. Requiere un bloque de tiempo para que puedas concentrarte.
    3. Requieres estar en cierto lugar para completarlo.

    Agrégalo a tu to-do list si…

    1. No importa a qué hora ni dónde lo hagas.
    2. Completar la tarea te llevará menos de 30 minutos.
    3. La entrega está sujeta a una fecha límite.

    Complementos

    Tanto un calendario como un to-do list son piezas integrales de un sistema de productividad. Como tales, no son exclusivas, y por el contrario, funcionan excelentemente cuando se usan en conjunto.

    Imagina que te asignan un proyecto que requiere que hagas una investigación exhaustiva sobre un tema en particular. Vamos a decir que quieres conocer el ciclo de vida del plancton. Organízate de la siguiente manera:

    1. En tu to-do list crea un ítem que se llame “Entregar reporte sobre el plancton.”
    2. Asígnale tu fecha límite pactada.
    3. En tu calendario, crearás eventos de 2 horas cada día de la semana llamados “Investigar sobre el ciclo de vida del plancton”.

    De este modo, tu to-do list y tu calendario se están complementando para aumentar tu productividad. Tu to-do list alimenta tu calendario, y tu calendario asegura que tengas el espacio necesario para cumplir con tu fecha de entrega.

  • Comunicación síncrona: ¿qué es, cuándo usarla y por qué?

    La comunicación síncrona usualmente sucede a través de medios que yo llamo “efímeros”. Este tipo de medios favorece la velocidad en la que los mensajes pueden ser transmitidos sobre cualquier otro factor.

    La comunicación síncrona se caracteriza porque requiere que todas las partes involucradas estén prestando atención a lo mismo durante el mismo periodo de tiempo. Como con HTTP 1.1, que la conexión entre el cliente y el servidor debe de mantenerse vigente para que el mensaje pueda llegar de un lugar a otro. Si uno de los dos componentes deja de poner atención, la conexión se termina y el mensaje no es comunicado.


    El protocolo HTTP 1.1 requiere que ambas partes se mantengan en sintonía para que el mensaje pueda ser comunicado correctamente.

    Los medios de comunicación síncrona son usualmente efímeros. Es decir, que solamente “existen” mientras están siendo usados. Una llamada telefónica, por ejemplo, se podría considerar un medio de comunicación síncrono:

    • Todas las partes necesitan poner atención a la llamada para que esta sea productiva.
    • Si uno de las dos partes cuelga el teléfono, la comunicación se termina.
    • Esa llamada en particular únicamente existe mientras está sucediendo. Al terminarse no es posible volver a tener esa misma llamada. (Se podría volver a tener la misma conversación, pero no la llamada.)

    Existen muchos medios de comunicación síncronos a tu disposición. Es importante que aprendas a identificarlos y a usarlos de manera adecuada. Aquí hay algunos otros ejemplos de medios de comunicación síncrona que te podrás encontrar en tu carrera:

    • Conversaciones de pasillo.
    • Mensajes instantáneos (Slack, Google Chat, Teams, WhatsApp, Telegram).
    • Videoconferencias (Google Meet, Whereby, Zoom).
    • Sesiones de pair programming.

    ¿Cuándo debes usar la comunicación síncrona?

    Por lo general se utilizan medios de comunicación síncrona cuando el mensaje es relevante únicamente durante un periodo de tiempo. Un ejemplo de esto es cuando se quiere notificar de algún evento, como que una tarea se terminó en tiempo y forma.

    Lo que debes de considerar al momento de comunicar algo a través de medios síncronos, es que el riesgo de que ese mensaje se pierda y no vuelva a ser encontrado es bastante alto. Por lo general, deberías de evitar utilizar medios de comunicación síncronos asumiendo que la información que compartas va a poder ser recuperada después.

    Aunque algunos medios de comunicación síncronos, como los mensajes directos, tienen la habilidad de buscar información pasada, la realidad es que no están diseñados para esto. La mayoría de estas herramientas están diseñadas con la conveniencia en mente, no con la consigna de que deberían de ser un acervo de información hacia el futuro.

    De manera más concisa, está bien usar medios de comunicación síncronos si…

    • El mensaje que quieres comunicar es relevante únicamente durante un marco de tiempo definido. Es decir, no importará si ese mensaje se pierde en el éter, porque de todos modos únicamente aportaba valor si se consumía al momento en que lo enviaste. Ejemplo: “ya va a comenzar la llamada”.
    • Existe un sentido de urgencia de tu parte. Por ejemplo, en caso de que tengas una emergencia porque el servicio está caído, es mucho más práctico llamar por teléfono a la persona de DevOps para que apoye que enviarle un correo (asíncrono) para notificarle.
    • No estás tomando decisiones que impacten de manera estructural el futuro del proyecto o del equipo. Por ejemplo, ¿tú y tu equipo están intentando decidir qué librería de linting van a utilizar en el proyecto? Discutirlo en un chat grupal está bien — es una conversación. Pero si estás intentando decidir qué topología de red se va a instalar en un edificio, esta conversación debería de ser llevada en medios que estén diseñados para preservar la información a largo plazo.

    Combinando la comunicación síncrona y la asíncrona

    Algo que debes de tomar en cuenta es que una conversación que inicia de manera síncrona tiene la capacidad de convertirse en asíncrona, si así se requiere. Y de hecho, siempre que estés comunicando algo a través de medios síncronos, deberías de poner mucha atención si algo de lo que se está compartiendo debería preservarse.

    Notificar que un proyecto se completó de manera exitosa es claramente información apta para ser comunicada síncronamente. Puedes hacerlo a través de Google Chat o Slack. Sin embargo, el historial y resumen de entrega del proyecto completado es información que se debe de preservar, y por lo tanto deberías de preservarlo en una carpeta compartida de Google Drive o Dropbox. 

    Lo anterior es un ejemplo de cómo, para el mismo propósito, combinarías la comunicación síncrona y la asíncrona.

    La comunicación siempre está en flujo

    No siempre será posible utilizar el medio correcto para compartir lo que quieres. Y está bien. Eres humano.

    Lo importante, más allá de que utilices tal o cual aplicación para comunicar algo, es que comiences a generar la conciencia de que no solamente importa qué dices, sino cómo lo dices y a través de qué medio. Sobre todo si estás en una posición de liderazgo, pues cómo tú comunicas pone la pauta para el resto del equipo. Y créeme, no hay nada más complejo que intentar ponerle orden a la comunicación de un equipo de un día para otro.

    Ejercitar tu músculo para saber si estás usando el medio adecuado para comunicarte con tu equipo es uno de los pasos que debes de tomar para mejorar tu carrera profesional. Hacerlo no solamente te abrirá los ojos a un mundo de empatía más allá del código, sino que te hará mucho más digno de confianza ante tu equipo. Sabrán que tú, más que un miembro más de la banda, serás una pieza catalizadora de organización y orden.

  • ¿Saber Inglés sigue siendo una ventaja competitiva?

    Un lector y miembro de la comunidad pregunta si solamente es necesario saber inglés para sobresalir en el mercado de desarrollo.

    Adjunto el correo completo:

    Desde el comienzo de la pandemia he seguido a personas que trabajan remoto y una de las cosas que veo que más se repite es “habla ingles” y con eso ya lo tienes resuelto. Llevo 7 años trabajando para consultorías y solo hasta ahora me di cuenta de este nuevo mundo pero no estoy seguro qué estoy haciendo mal o qué no estoy haciendo para entrar a esta zona (trabajo remoto internacional).

    He visto los sitios donde hay vacantes pero bueno como un menu de restaurant a veces uno no sabe qué es lo indicado por elegir o si esta decisión será la peor por tomar, ahora que te escribo puedo pensar que es miedo o inseguridad y que a nadie les dicen como hacerlo.

    Habiendo explicado un poco creo que mis preguntas son:

    • como empiezo?
    • debo comenzar diferente con base a mis años de experiencia?
    • como calculo cuanto pedir de lo que percibo actualmente a una vacante remota?
    • el mercado solo busca reactjs? (ajajaj es la mas popular pero como front end dev pareciera que ahorita es el unico camino, o solo ideas mias)
    • que recomiendas para perder el miedo de equivocarnos?
    • he pensado que tener contactos te da una entrada a estas vacantes mejor que en los sitios… alguna recomendación de como hacer amistades en linea?

     

    Mi respuesta:

    Tener el objetivo claro te permitirá seguir motivado ante todas estas preguntas que te estás haciendo.

    Saber inglés ya no es una ventaja competitiva. Es el mínimo requerimiento.

    Tener tantos años de experiencia sí es algo que puedes usar a tu favor. Dependiendo de los proyectos en los que hayas participado, podrías incluir en tu currículum ejemplos de tus contribuciones. Pero personalmente, lo que aprecio más en un currículum, es que me ayudes a entender más allá del código que escribiste, el impacto que causaste en las organizaciones donde has trabajado.

    ¿Identificaste problemas por tu cuenta e hiciste propuestas para solucionarlos? ¿Tuviste responsabilidades claves dentro de tu organización? ¿Apoyaste a implementar nuevos procesos que dieron como resultado mejoras para los clientes?

    Respecto al salario que debes de pedir al trabajar de manera remota, te recomiendo que leas estas respuestas. También, te incluyo uno de mis Tweets que representa muy bien mi filosofía:

    https://twitter.com/swanros/status/1331389389495218176?s=21

    No, el mercado no solamente busca ReactJS, pero debes de estar listo para balancear tus habilidades con la demanda que existe. Si estás enfocado en desarrollo web al 100%, probablemente ReactJS sea algo de lo que no podrás escapar. En ese momento es cuando debes de tomar una decisión, basada en tu objetivo final, sobre si aprender esa tecnología es lo que te pone en una mejor posición para llegar a tu meta. Si no, hay otras mil tecnologías de desarrollo en las que te podrías volver experto, y así diversificar tu propuesta de valor para cualquier empresa.

    Habiendo dicho esto, el miedo a equivocarse es natural. No lo pierdes, aprendes a lidiar con él. Te recomiendo que inicies buscando un ambiente laboral en el que los errores sean vistos como oportunidades de aprendizaje, y no como medios para castigar a las personas. Pero lo más importante, es que nunca pierdas las ganas de intentarlo. Tener tu objetivo claro te mantendrá en el camino correcto.

    Para finalizar, te dejo esto: deberías considerar tu CV como tu principal herramienta, pero únicamente en tu primera vez buscando empleo. Conforme vas avanzando en tu carrera, tu principal fuente de opciones y de oportunidades viene de la comunidad en la que estás envuelto. Gente con la que has trabajado, colaborado, o compartido. Personas que ya conocen la calidad de tu trabajo, lo inteligente de tus preguntas, y tu habilidad de recibir y dar retroalimentación objetiva.

    Así que sí, estás en lo correcto, te conviene comenzar a rodearte de personas y comunidad más que de páginas de internet. Mi recomendación acá es que te acerques a comunidades en línea y comiences a hacer ruido, compartir cosas, y ayudar a otros miembros. Twitter también es una herramienta bastante poderosa si la usas a conciencia.

    Algunas comunidades a las que te puedes unir:

    Espero que estas respuestas te den un norte para seguir adelante.

  • ¿Cuál es un buen salario para un desarrollador Sr. con 9+ años de experiencia?

    Un miembro de la comunidad pregunta por correo electrónico sobre lo que yo consideraría un buen salario para alguien:

    En tu experiencia ¿Cuál sería un buen salario para un desarrollador Sr. con 9+ años de experiencia?

     

    Mi respuesta:

    Esto depende completamente de ti y de cómo te vendas. Desafortunadamente, si bien hay un “estándar de la industria”, no es un indicador para determinar cuánto deberías de estar ganando en una posición. Los salarios varían con cada organización, así como los criterios de qué es lo que significa estar en determinado rango. Hemos hablado en El Podcast DEV en varias ocasiones de que el puesto (Jr., Mid., o Sr.) son solamente relevantes dentro de la compañía en la que estás actualmente.

    Lo que te sugiero acá, más que tener un número fijo en la mente, aprendas a negociar tu salario. Aprender técnicas de negociación es importante porque te permitirá identificar cuándo hay una oportunidad de mejorar cualquier oferta. Si solamente tienes un número fijo en mente, no estarás atento a muchas oportunidades que pueden salir en el camino.

    Hay diferentes técnicas que puedes usar para esto. Te puedo recomendar que leas lo siguiente:

  • Evitar llamadas de trabajo innecesarias: 3 consejos

    “Esta llamada pudo haber sido un correo” es algo que todos hemos pensado en alguna ocasión. Independientemente de si tu equipo Google Meet, Zoom o Microsoft Teams la herramienta no es el problema. Es cómo colaboramos. Gran parte de la población mundial descubrió hace un año, por primera vez, el mundo del trabajo remoto. Lo que antes se resolvía en charlas en los pasillos de la oficina, ahora se tiene que resolver a la distancia — probablemente coordinando 2 o más husos horarios diferentes.

    Desafortunadamente la transición al teletrabajo no ha sido tan suave para todos. Algunas personas y organizaciones han decidido que la única manera de sentirse productivos es (adivinaste) teniendo tantas llamadas como puedan caber en un día. De primera mano he visto amigos y familiares que vienen de industrias tradicionales que desde que comenzó la pandemia tienen llamadas constantes de 9 am a 6 pm, dejando muy poco espacio para realmente trabajar. Y lo peor, la mayoría de esas llamadas sí pudieron haber sido un simple correo.

    Después de más de una década trabajando de manera remota, te quiero compartir algunas técnicas que he aprendido para evitar tener reuniones innecesarias en Zoom o Google Meet.

    Bloquea tu calendario

    Tan sencillo como esto. Si usas Google Calendar, debes de saber que existe la capacidad de crear un tipo de evento especial para bloquear espacio en tu calendario. Automáticamente rechazará cualquier invitación a un evento que te hagan durante ese marco de tiempo.

    Personalmente bloqueo de lunes a viernes el espacio de 2 pm a 3 pm, mi hora de comida, y de 5 pm a 10 pm. Hace años que no tengo una llamada de trabajo después de las 5 pm, y mi hora de comida es sagrada.

    Es posible que no uses Google Calendar, o que no tengas activada la opción para crear ese tipo de evento. En ese caso, puedes simplemente crear un evento con un nombre opaco, como “FUERA” o “NO DISPONIBLE”.

    Esta solución es parcial, puesto que hay personas a las que simplemente no les importa la agenda de las demás y mandan invitaciones a eventos sin siquiera verificar si los invitados tienen disponibilidad. Pero, por lo menos, si utilizas la opción de fuera de la oficina, Google rechazará la invitación por ti.

    ¿Sabes qué quieres decir?

    Probablemente en más de una ocasión hayas recibido un mensaje como este:

    Hola, ¿cómo estás? ¿Me regalas 10 minutos para rebotar unas ideas?

    La respuesta por defecto a una proposición de este tipo debería de ser “no”.

    La cultura laboral latinoamericana es muy propensa a querer complacer a nuestros colegas, líderes o jefes. Se nos ha hecho creer que poner nuestro bienestar y productividad por delante es hacerle falta a la compañía. Se dice que no estamos jugando en equipo, y que no tenemos “puesta la camiseta”.

    Lo que muchas personas no saben es que al decir que no a una propuesta de este tipo no estás siendo egoísta. En realidad estás ayudando a evitar perder el doble del tiempo que la persona que quiere hablar contigo cree. 10 minutos tuyos, y 10 minutos de ellos.

    Dependiendo de tu situación, te invitaría a contestar la invitación a una llamada de 10 minutos con una versión de lo siguiente:

    Ahora estoy algo ocupado, lo siento. Si no te molesta, déjame tus preguntas o tu idea aquí en el chat y cuando tenga tiempo la reviso y te comparto mis comentarios.

    Así la otra persona se ve en la necesidad de estructurar sus ideas o preguntas para poder escribírtelas. Este proceso es primordial, pero muchas veces ignorado. ¿Sabes realmente lo que quieres decir o simplemente quieres escupir un montón de pensamientos? Este es un buen Litmus test.

    Cuando comiences a emplear esta técnica para rechazar “llamadas rápidas” tendrás una epifanía. Te darás cuenta de que la mayoría de las veces, al intentar escribir las preguntas o definir la idea, se responden ellos mismos y tu opinión ya no será necesaria.

    Ejerce tu derecho a rechazar invitaciones

    Me atrevería a apostar que todas las aplicaciones de calendario tienen la opción de rechazar una invitación a un evento. ¿Cuántas veces has presionado ese botón?

    Durante mi proceso de formación profesional creía que una invitación a un evento era algo que se tenía que tomar sí o sí. Conforme fui creciendo y agarrando experiencia me di cuenta de que, en virtud de hacer mejor mi trabajo, vale más la pena proteger mi tiempo y creatividad que tomar una llamada — en la mayoría de los casos.

    Así que fui desarrollando una serie de políticas personales en las que me baso para determinar si acepto o no una invitación a un evento en el calendario. Te las comparto a continuación.

    Política #1: Procuro no enviar o aceptar invitaciones para el mismo día. Soy introvertido por naturaleza, y “encender” el “modo llamada” me cuesta muchísima energía. Prefiero tener por lo menos un día de margen para poder llegar preparado y asegurarme de que puedo aportar el valor necesario a la llamada. ((Esto no siempre es posible, y hay veces en las que simplemente se tiene que entrar a la llamada — sobre todo en situaciones críticas. Ni modo.))

    Política #2: Si el nombre o la descripción del evento no te dicen exactamente de qué se va a tratar la llamada, no acepto la invitación. En algunas ocasiones selecciono “Posiblemente” y respondo la invitación pidiendo clarificación sobre el propósito de la llamada. Una vez que esté claro el por qué es importante reunirnos, puedo decidir si acepto o no.

    Política #3: Actualizaciones de estado se hacen por correo, no por llamadas. Las reuniones para actualizar al equipo sobre progreso son el ejemplo primordial de llamadas que pudieron ser un correo. Para estos casos, si sé que puedo hacer llegar la información que me van a pedir por correo así lo hago y rechazo la invitación. Y como manager te comparto: es liberador cuando un miembro de mi equipo me responde con un “aquí está lo que me necesitas saber” y rechaza la invitación a la llamada.

    Política #4: Los horarios personales son sagrados. La hora de la comida, vacaciones y cualquier hora después de las 4 pm son intocables.

    Conclusiones

    El trabajo remoto fluye con muchas menos complicaciones si aceptamos la idea de que estar ocupado no es lo mismo que ser productivo. Y, te anuncio, las llamadas te mantienen ocupado.

    Como con todas las herramientas, también debemos de asegurarnos que estamos usando la herramienta adecuada para resolver cada problema. Si bien tener una llamada puede sonar como un atajo para atender una situación de manera más rápida, lo cierto es que intentar resolver absolutamente todo en llamadas es contraproducente. Si pasas 8 horas en llamadas todos los días, ¿a qué hora trabajas?

    Puedes encontrar el hilo de esta publicación en Twitter.

Ayudo a personas que trabajan con software a mejorar sus carreras profesionales.

Los miembros tienen acceso a Pathways, pueden comentar en las publicaciones, interactuar con la comunidad, y muchos otros beneficios. Conoce más.

Agrégame a tu lector RSS, o suscríbete a mi newsletter para recibir los nuevos artículos que publique.