• Gatekeeping: qué es, cómo identificarlo, y cómo combatirlo

    Gatekeeping. Cuidar ranchos. Creer que la forma en que tú ves el mundo es la única válida que existe. Y activamente invalidar las perspectivas de otras personas.

    Me gusta hablar del gatekeeping. Para mi sorpresa, cada vez que lo menciono, me preguntan a qué me refiero con “gatekeeping” o “cuidar ranchos”. Estoy escribiendo este artículo con dos objetivos; 1) tener un enlace para enviar la próxima vez que me pregunten, y 2) generar un poco más de conciencia al respecto — porque pienso que hace falta.

    Como muchos fenómenos sociales y culturales, promovemos o padecemos el gatekeeping sin saberlo — porque nadie nos explicó que existía, y simplemente somos víctimas… o victimarios. Sucede lo mismo con el gaslighting, por ejemplo.

    El gatekeeping es una de las principales razones por las que las comunidades de tecnología se pueden sentir tan hostiles y cerradas para las personas que están intentando incursionar en este mundo. Viene de la noción de que “si me costó tanto trabajo a mí, no debería ser más sencillo para ti”, acompañado de un toque de narcisismo al asumir que la otra persona quiere exactamente lo mismo que tú — o que desea obtener exactamente tus mismos resultados.

    Hacer gatekeeping es estar tan envuelto en tu propia idea del mundo, tu craft o tus gustos, que ignoras los deseos, necesidades y perspectivas de las personas que te rodean. Antepones tu versión de lo que es “correcto” a tus supuestas ganas de “apoyar”, y terminas compartiendo respuestas condescendientes, que lo único que hacen es hacer sentir mal a la persona, que lo único que quería era tu ayuda.

    Sufrir del gatekeeping, en contraste, no te hace sentir superior ni valida tus ideales. Al contrario, te hace sentir mal, te hace dudar de tus habilidades y tu potencial. Te hace creer que no vas por el camino adecuado, y refuerza en ti la idea de que hay una única forma “correcta” de hacer las cosas, lo que es completamente erróneo. Sufrir del “cuidarranchismo” también es desalentador y te puede llevar a resentir la ayuda de aquellos que genuinamente quieran ayudarte.

    Qué hacer para combatir el gatekeeping

    gatekeeping en la industria del software

    Si te das cuenta de que cuidas ranchos: felicidades, acabas de completar el paso más difícil. Ahora es momento de hacer cambios en cómo te conduces. Primero, cuando alguien te pida ayuda (o quieras dar un consejo espontáneo), hazte las siguientes preguntas:

    • ¿Reconozco que la otra persona tiene un objetivo muy particular que no necesariamente tiene que ver conmigo y mi historia?
    • ¿Comprendo las necesidades, capacidades y situación de la otra persona?
    • ¿Tengo la claridad mental necesaria para compartir mi aporte sin intentar validar mi preconcepción personal de lo que es correcto o válido?

    Segundo, recuerda que si hay algún ambiente en el que haya respuestas absolutas y 100% correctas, no es en el mundo de la tecnología. Lo que hoy es aceptado, mañana puede ser considerado una mala práctica. Una de las características más importantes para trabajar en esta industria es tener la mente abierta.

    Tercero, haz las paces con tu antiguo yo que hacía gatekeeping y se sentía orgulloso por ello.

    Está bien: parte del proceso de crecer personal y profesionalmente es darte cuenta de lo que está mal y no aporta, y hacer algo al respecto. Y en eso estás, así que date la oportunidad de reconciliarlo y seguir adelante.

    ¿Y si soy víctima del gatekeeeping?

    Si eres víctima de un cuidarranchos, debes de saber que no es tu culpa. Esta industria está llena de personas con hábitos reduccionistas y absolutistas, y no eres la única persona que está pasando por esto. Puede sonar como justificación para su comportamiento, pero no lo es.

    Así como hay muchísimas personas en tecnología que basan su identidad en estar bien y promover estas prácticas, hay otras tantas que estamos jugando juegos infinitos, con ganas de ver a nuestros colegas crecer. Me atrevería a decir que somos más los que genuinamente queremos darte las herramientas para que salgas a hacer lo que tienes que hacer.

    Primero, asimila este concepto y agregarlo a tu vocabulario. También, hazte el hábito de identificar los indicadores de que estás lidiando con un cuidarranchos, y de que deberías de enfocar tus energías en buscar otro lugar para pedir ayuda:

    • Te quieren vender una única idea de cómo hacer las cosas
    • Te chantajean mencionándote cómo podrías fallar si no usas lo que ellos te recomiendan
    • Hacen menos las contribuciones de otras personas en la industria a diestra y siniestra
    • Cuando, salen a respingar cuando dices que deberías agregar documentación a tu código, y no únicamente escribir código que se documente solo.)

    Segundo, ayuda a que más personas se hagan conscientes de esto. Mientras haya más personas con la conciencia de lo que hacer gatekeeping representa, será mucho más sencillo sacar a flote estas discusiones. Esto es importante porque creo que nos merecemos tener espacios seguros donde podamos sentirnos respaldados por una comunidad que nos quiera ver crecer.

    Si detectas que alguien está haciendo gatekeeping, hazlo notar.

    Haz ruido, levanta la voz, hazles ver lo que está sucediendo. Si estás en una posición de liderazgo en la que puedas tomar acciones concretas al respecto, hacerlo es tu responsabilidad.

    Da feedback, modera, lidera. Y si ni explicando razones se remedia la situación, ahí no es.

    En conclusión…

    Saber lo que es el gatekeeping no es una licencia para que agregues un buzzword tech a tu vocabulario y sigas como si nada. Lo que diferencia a los humanos del resto de los animales es nuestra habilidad de ponerle nombre a las cosas. Hemos desarrollado un lenguaje que nos permite comunicarnos, establecer reglas y llegar a acuerdos. La principal motivación de ponerle nombre a las cosas es poder explicarlas, estudiarlas y mejorarlas. Así que ahora que sabes lo que es, que existe y por qué es importante compartirlo, también tienes la responsabilidad de hacer algo al respecto.

    En resumen

    • ¿Quieres de verdad llegar a ser un 10X Developer? Deja de cuidar ranchos.
    • ¿Quieres hacer algo por tu comunidad? Ayuda a un cuidarranchos a dejar esos modos.
  • Soft Skills que aprendes en tu primer año haciendo software

    En una publicación en Medium, Anish, un recién graduado de un bootcamp, nos cuenta los Soft Skills que ha aprendido en su primer año como ingeniero de software. Un poco de historia:

    A veces no puedo creer que en mayo de 2022 prácticamente no sabía nada sobre ingeniería de software (aparte de ser un auténtico experto en hacer que mi computadora diga ‘¡Hola, mundo!’). Avancemos rápidamente hasta hoy, y llevo más de 1 año en mi carrera profesional como ingeniero de software en una agencia creativa, y puedo decir con seguridad que estoy disfrutando cada segundo de ello.

    A continuación, te dejo algunos extractos de las cosas que más resonaron conmigo.

    Mentalidad de constante crecimiento

    La mentalidad de crecimiento (o growth mindset, como también se le conoce), te invita a darte cuenta de que cualquier cosa que parezca difícil en primera instancia, es algo que eventualmente puedes dominar. Siempre y cuando le pongas la dedicación adecuada.

    Desde que conseguí mi primer trabajo como desarrollador, he estado constantemente expuesto a nuevas ideologías, tecnologías y conceptos casi todas las semanas. Sin adoptar una mentalidad de crecimiento, tener tantos temas diferentes que aprender puede sentirse abrumador e incluso desafiante en ocasiones, especialmente viniendo de un bootcamp.

    También comenta sobre la importancia de poner las cosas en perspectiva, y que la visibilidad a largo plazo también es clave para darte cuenta de cuánto has crecido:

    …el crecimiento es una serie de altibajos, pero si observas el panorama general y te mantienes firme, dentro de 10 años tu conjunto de habilidades seguramente te sorprenderá.

    Habilidades fuertes de comunicación son clave

    Cómo trabajar en un equipo pequeño hace que la comunicación efectiva sea un factor clave para tener éxito y seguir creciendo:

    Trabajar en una empresa pequeña, con un equipo de desarrollo de 3 personas (que incluye a dos directores generales), hace que mis responsabilidades sean mucho más claras, por lo tanto, mis habilidades de comunicación con mis directores, gerentes de proyectos, ejecutivos de nivel C y clientes deben ser elevadas, precisas y claras.

    Este punto me pareció particularmente importante:

    El resultado de comunicar de manera efectiva permite a la empresa tener una idea más clara de cómo avanza un proyecto, si existen obstáculos y si lo entregaremos a tiempo.

    Entre desarrolladores existe el chiste de que los Project Managers saben decir una sola frase: ¿cómo vamos? Hasta memes hay. Si tú eres uno de esos, te pregunto: ¿no será que tú tienes que mejorar tus habilidades de comunicación para que no te tengan que estar preguntando cómo vas a cada rato?

    Las oportunidades que te va a dar ser parte de un equipo

    Trabajar con otras personas no es lo mismo que trabajar en equipo. Anish explica:

    Ya sea en un evento social del equipo, reuniones sociales de la empresa, un evento organizado por un colega, o simplemente almorzando con diferentes departamentos, es importante conocer a otras personas en la empresa.

    He aprendido mucho de todos aquí. No sabía lo que era la redacción publicitaria hasta que hablé con nuestro departamento de redacción.

    Ahora que Anish sabe que existe algo que se llama Copywriting, puede explorar otra perspectiva que aumentará el valor de sus contribuciones más allá de escribir código. Lo mismo pasa cuando hablas con gente de negocio, marketing, operaciones, y demás.

    Desarrollar software se trata de resolver problemas para personas. Mientras más herramientas tengas para ver esos problemas desde diferentes perspectivas, más oportunidades vas a tener de hacer un impacto real.

    Saber en qué necesitas mejorar

    Ejercicio de humildad, sí. Esta es la actitud correcta (y otra vez, growth mindset):

    Básicamente, soy un ingeniero de software de nivel intermedio ahora. Trabajo de manera autónoma en su mayor parte, he comprendido cómo leer la documentación minuciosamente, mis habilidades de comunicación son excelentes, y he contribuido en varios proyectos divertidos e innovadores. Sin embargo, las oportunidades siempre superan a mis éxitos, y eso está bien, porque estoy comprometido a seguir aprendiendo.

    Y reconocer que el síndrome del impostor es algo con lo que vamos a tener que aprender a vivir:

    Los sentimientos de síndrome del impostor vienen y van hasta el día de hoy, incluso después de haber estado un año en mi carrera y estar al borde de ser un ingeniero de nivel intermedio. Estoy aprendiendo que abrazar el síndrome del impostor es parte del camino y que no estoy solo.

  • Burnout, explicado para desarrolladores de software

    Hablar del burnout en abstracto puede carecer de impacto real. Déjame explicarte.

    Imagina que intentas explicarle a un niño de 3 años por qué es mala idea meter un tenedor en una toma de corriente. Para que aprecie los peligros de ello, tendríamos que explicarle primero sobre electricidad, materiales y sus propiedades de conducción eléctrica, y luego sobre el concepto de “electrocutarse”.

    Eventualmente, ya sea por accidente o academia, cuando el niño se haga consciente de la progresión de eventos que lo llevan a sentir la descarga eléctrica en su cuerpo, y los efectos en su salud, proactivamente evitará acercar un objeto de metal a una toma de corriente.

    Sucede lo mismo cuando hablamos de burnout. Intentar explicarle a alguien por qué debería de hacer todo lo posible por prevenir el burnout asume que la persona tiene el suficiente autoconocimiento para reconocer su origen y los efectos que los síntomas tienen en ella.

    El burnout se manifiesta de manera diferente en cada uno de nosotros

    Una rápida búsqueda en internet te dará síntomas como:

    • Agotamiento y fatiga constante.
    • Bajo rendimiento laboral.
    • Sentimientos de impotencia y fracaso.
    • Irritabilidad constante.
    • Procrastinación.
    • Problemas de comunicación.

    Muchos de estos síntomas también pueden estar asociados a trastornos de salud mental, como la depresión o ansiedad. En caso de duda, consulta con un profesional

    Aun así, aunque indicativos, son subjetivos. ¿Qué significa realmente “agotamiento”? Tu umbral de cansancio podría ser el nivel de energía estándar de otra persona. ¿Qué es “irritabilidad constante”, y cómo se manifiesta en tu día a día? Respuestas diferentes dependiendo a quién le preguntes.

    Además, tenemos diferentes niveles de resiliencia ante las mismas situaciones

    Agregándole una variable más al problema: no a todos nos pegan de igual manera las mismas situaciones.

    Dependiendo de la historia personal de cada quien, lo que para uno pudiera una situación completamente normal y manejable, para otra persona pudiera ser un problema complejísimo de sobrellevar.

    La misma situación tiene un impuesto de estrés diferente para cada uno. Recuerda eso.

    Fugas de Memoria: Un modelo mental para entender el burnout si eres desarrollador de software

    En el mundo del software decimos que no hay aplicación sin errores; solamente hay aplicaciones cuyos errores todavía no descubrimos.

    De igual modo, el burnout no es algo que está prendido o apagado, sino una serie de factores compuestos que se van acumulando y acumulando hasta que evolucionan y te hacen “tronar”.

    Es como una fuga de memoria, o memory leak, en tu programa: si se encuentra en una parte de la aplicación que tu usuario no visita varias veces durante la sesión, no hay tanto por qué preocuparse — el sistema tiene suficientes recursos para gastar. Pero si la fuga está en un hot path de la aplicación, muy pronto se convertirá en un problema. El sistema se quedará sin espacio para memoria “desperdiciada”, y terminará forzando el cierre de la aplicación.

    Ningún programa es 100 % eficiente. La mayoría de los sistemas complejos, tanto en software, como en la naturaleza, producen desperdicios — y está bien. Así como los dispositivos en los que corren nuestros programas están diseñados para seguir funcionando aún con cierto nivel de desperdicio de memoria, los humanos somos naturalmente resilientes para lidiar con cierto nivel de situaciones adversas que si no se mantienen bajo control pueden evolucionar a un nivel de burnout que nos haga rompernos emocional, intelectual o profesionalmente.

    Como buen desarrollador de software que se preocupa por el rendimiento de su código, ya tienes el hábito de depurar tu aplicación constantemente para asegurarte de que estás usando los recursos de tu sistema de la mejor manera posible. Ahora, como persona consciente de la importancia de evitar el burnout, regularmente evalúa si tus hábitos, rutinas, ambiente y forma de llevar tu día a día está ayudándote a mantener un nivel sano de burnout.

    Prevenir es mejor que lamentar

    No existen soluciones absolutas para los problemas humanos. En este continuo de vida y carrera, todas las soluciones a los problemas de las personas comienzan con un “depende”, y esto no es una excepción para el burnout.

    Pero eso no es excusa para “hacernos de la vista gorda” y hacer como que tomar acciones en pro de prevenirlo no es importante simplemente porque aún no sufrimos los estragos del mismo.

    Al contrario, creo que es un llamado a la acción para invertir un poco más en el autoconocimiento, que en sí es un proceso. Ver el burnout como un botón que puede estar en encendido o apagado limita tu capacidad de entender sus matices y complejidad. Ofusca la combinación de factores que pueden estar influyendo en un área tan relevante de tu vida, como tener la capacidad de continuar trabajando en algo que te gusta.

    Si eres de las personas que tienen el privilegio de no haber experimentado el burnout en carne propia, te invito a que utilices el modelo mental de Fugas de Memoria para comprender la importancia de ser proactivos y evitar que el burnout se manifieste. Si, por el contrario, ya has experimentado el burnout, te invito a que reflexiones y aprendas a detectar los síntomas y cómo se manifiestan en ti, y a través del autoconocimiento tomes las medidas necesarias para evitar que vuelva.

  • Feedback: cómo darlo, tomarlo, y apreciarlo

    La retroalimentación, o feedback, es una de esas habilidades blandas que solemos ignorar hasta que nos enfrentamos a situaciones que la requieren. Pero aquí te digo algo: dar y recibir feedback no solo es crucial para tu desarrollo profesional, sino también personal.

    Creo que la razón por la que ignoramos la importancia de esta habilidad hasta que es muy tarde es muy obvia, y también muy humana: es incómodo. Es incómodo reconocer nuestros límites, y darnos cuenta de que hay cosas en las que necesitamos mejorar. O, incluso, que hay cosas que hacemos, que tienen efectos secundarios que ni siquiera habíamos considerado.

    Sin embargo, por más incómodo que sea, es importante que como profesionales del software desarrollemos la capacidad de dar, recibir, e integrar feedback. Después de todo, si nuestro trabajo se trata de ser lo suficientemente resilientes al enfrentarnos a problemas indefinidos, ¿por qué no deberíamos de invertir un poco en ser más resilientes en un ámbito más personal?

    El feedback que recibes moldea tu trabajo. Y tu vida.

    Hace más de 10 años, Héctor, uno de mis mejores amigos, me aconsejó que dejara de amargar a los demás si ya no quería ir a la universidad. “Si ya no quieres venir, no vengas, pero no estés aquí haciéndonos pasar un mal rato”. Ese fue mi último semestre en la escuela.

    Unos años después, un recién graduado de Stanford me despidió semanas después de entrar a la startup donde ya llevaba yo más de un año trabajando. La relación no inició de buena manera, y un martes por la mañana me subí a una reunión de Hangouts con él, y me dijo que yo era muy difícil para trabajar, y que ese era mi último día.

    ¿Doloroso? Sí. ¿Incómodo? Obviamente. ¿Útil? También.

    Durante mi carrera y vida personal, los momentos que han dejado huella son aquellos en los que recibí feedback. Tan directo como mi amigo diciéndome que ya no era divertido tenerme cerca, lo que me llevó a tomar una decisión que cambiaría la ruta de mi vida. O tan indirecto como alguien simplemente diciéndome que ya no quería trabajar conmigo, tomando una decisión por mí.

    Consciente o inconscientemente, das y recibes feedback todo el tiempo

    Pensaba que la retroalimentación era una actividad puntual que tenías que hacer y programar. Así como puedes quedar con tus amigos para salir a tomar algo, ¿quedamos para darnos feedback?

    Aunque sí funciona así en el contexto profesional (en el mejor de los casos), la realidad es que constantemente estás dando y recibiendo feedback. Estés consciente de ello o no.

    Las muecas o gestos que otros hacen cuando les cuentas tus ideas, también son una forma de feedback. ¿Se muestran emocionados y animados, o hacen gestos de duda y consternación? ¿Te hacen preguntas de seguimiento, o solo te escuchan, asienten, y pasan a lo siguiente?

    Y lo mismo aplica para ti. ¿Cuál es tu postura cuando alguien te está compartiendo sus ideas? ¿Estás presente en la conversación, escuchando, o solo estás oyendo las palabras que salen de su boca?

    Se trata del comportamiento y sus efectos, no de la persona

    Es clave separar el comportamiento de la persona.

    La Navaja de Hanlon, uno de mis modelos mentales favoritos, dice:

    Nunca atribuyas a malicia lo que puede se explicado por estupidez.

    En este caso, creo que aplica cambiar la palabra “estupidez” por “ignorancia”. No atribuyas a malicia, lo que puede ser explicado por ignorancia.

    Todos somos ignorantes en algunos aspectos. Y está bien. Cuando das retroalimentación de manera directa — es decir, con intención — lo que estás buscando es hacerle saber a la otra persona el efecto de su comportamiento en su entorno, obsequiándole el beneficio de la duda de que dicho efecto se encuentra en su punto ciego.

    Así, eliminas el componente personal de la retroalimentación e incrementas las probabilidades de que el comportamiento sea corregido.

    Héctor hizo exactamente eso conmigo hace una década. En vez de decirme “eres un amargado y ya no quiero tenerte cerca”, me hizo saber el efecto que mi comportamiento estaba teniendo en mi grupo de amigos. Y no solo eso: también me dio una sugerencia de cómo lo podía resolver.

    Y le estaré siempre agradecido.

    Si haces lo que Héctor hizo conmigo, la persona que reciba nuestro feedback no lo verá como un juicio a su identidad personal (ego), sino como una oportunidad de revisar o seguir teniendo un comportamiento: algo que está completamente dentro de su control. Y sí, el feedback también es importante para reforzar los comportamientos con efectos positivos de las personas.

    Hay miles de maneras de dar y recibir retroalimentación

    También es retroalimentación:

    • El compromiso que generamos en otras personas
    • El detalle con el que otras personas contribuyen a nuestras ideas después de que se las contamos
    • La postura que adoptamos al interactuar con otros
    • La calidad de atención que le prestamos a alguien
    • El nivel de energía con el que interactuamos
    • Entre otras…

    Haciéndote conscientes de esto, puedes apreciar la importancia de que, al compartir feedback puntual, tienes que hacerlo buscando resaltar aún más las características del comportamiento que quieres corregir o promover en la otra persona.

    Recuerda que el feedback no es un lujo, sino una necesidad para crecer como profesional y ser humano. La invitación es a que aceptes la retroalimentación como una parte integral de tu oficio, tanto interna como externamente, y estarás en el camino hacia una carrera más humana y sostenible en la ingeniería de software.

  • El código que escribiste hoy ya es legado. No te encariñes.

    Recuerdo la primera vez que escribí código en producción que me hizo sentir orgulloso. Había pasado un buen rato adentrándome en un dominio con el cual no estaba familiarizado. Cuando por fin pude entender cuál era el problema, y luego sentirme lo suficientemente competente para saber cómo resolverlo, me sentí el mejor desarrollador de software del mundo. That’s how it’s done, baby. Esa noche ni dormí de lo emocionado que estaba por haber encontrado una solución tan impecable para arreglar el bug que me habían asignado y así resolverle un problema a un cliente.

    Un par de semanas después, un colega intentando resolver otro bug se encontró con mi código y decidió era un blocker para él poder resolver su problema. Hizo lo que haría cualquier otro (buen) ingeniero: analizó el problema, entendió el contexto del problema que yo había intentado resolver, lo incorporó a su conocimiento de dominio, e implementó una solución que abarcaba tanto mi problema como el suyo.

    Cuando vi su Pull Request eliminando mi código, sentí una combinación entre frustración, vergüenza y hasta un poco de enojo. Pero recuerdo que principalmente me sentí “atacado”. Por alguna razón, el que otra persona hubiera venido a arreglar un error en el proyecto, y que parte de su solución fuera eliminar código que yo escribí… eso era algo personal. En su momento no dije nada, pero sí me quedé con esa insatisfacción por un buen rato.

    Un poco después, en otra empresa, me volvió a pasar. En esta ocasión, mi código no estaba intentando resolver un bug particular, sino que intentaba crear una base para construir otro feature dentro de la aplicación. El Pull Request de mi compañero no solamente lo eliminaba, sino que repensaba completamente la filosofía con la que se deberían construir los features subsecuentes.

    Ouch. Creo que en esta segunda ocasión sí le mencioné algo a mi manager, pero no dejé de tener una sensación incómoda.

    Luego pasó otra vez. Y luego otra. Y otra.

    Esto no dejó de pasar. Independientemente de la empresa en la que estuviera, eventualmente me iba a tocar revisar un Pull Request que modificara, o simplemente eliminara, código que yo había escrito.

    Hasta que entendí que fomentar el apego emocional al código que escribía no iba a ser sostenible. Invariablemente, alguien más llegaría a transformarlo o eliminarlo. Eso no iba a cambiar — es la naturaleza de trabajar en esta industria. Entonces lo que tenía que cambiar era la forma en como me relacionaba con mi código.

    No dejé de recibir Pull Requests que eliminaran mi código. Lo que sí cambió fue mi actitud al respecto.

    Déjame contarte cómo lo logré.

    Mascotas vs. Ganado

    Tu código es ganado, no mascota.
    Tu código es ganado, no mascota.

    Si me conoces, sabes que me encanta usar modelos mentales (en alguna ocasión incluso hablé sobre esto en un podcast), y me emociono cada vez que me encuentro uno nuevo para entender el mundo.

    Resulta que la comunidad de DevOps tiene un modelo mental apto para este problema: Mascotas vs. Ganado (Pets vs. Cattle). Cabe aclarar que en el mundo de DevOps, la unidad atómica de información no es una línea de código, sino un servidor, pero la analogía aún aplica para nuestro propósito. Te explico cómo aplicaría este modelo mental para desarrollo de software.

    DevOps Código
    Mascotas Un servidor que no se puede caer. Tiene que estar siempre disponible, y no tiene redundancia. Código que es indispensable y único, y no puede ser eliminado.
    Ganado Clústeres de servidores preparados para fallar y ser descartados si se necesita. Están diseñados con el manejo de fallas en mente, y su despliegue está automatizado. Código resiliente que está diseñado con flexibilidad en mente, y preparado para cuando inevitablemente falle o tenga que ser eliminado.

    La idea central, obviamente, es que una mascota tiene un lugar especial en tu vida. A una mascota la cuidas, nutres, procuras su bienestar, y te devastaría perderla. Por el contrario, el ganado está para cumplir un propósito en específico, ya sea trabajar o proveer de alimento, y no reparas en usarla para su propósito. Con la mascota te encariñas. Con el ganado, no.

    Es así como, aprendiendo de la experiencia de la comunidad DevOps, podemos entender que tenemos que ver el código que escribimos como ganado, y no como mascotas.

    El trabajo de un desarrollador de software es resolver problemas, no escribir código

    ¿Por qué nos es tan sencillo encariñarnos con el código que escribimos?

    Mi hipótesis es que, como desarrolladores, estamos acostumbrados a usar la lógica para resolver nuestros problemas, y nos es muy sencillo establecer una correlación directa entre la tarea mecánica de escribir código y nuestro valor como profesionales. Creemos que se nos paga por escribir código, cuando no es así.

    Puede sonar contra intuitivo. Después de todo, muchas personas iniciamos en esta industria porque nos gusta escribir código. Pero la realidad de tener una carrera en esta industria es que la única razón por la que alguien estará dispuesto a pagarnos el sueldo tan alto que nos hemos acostumbrado a esperar es porque amos a resolverles un problema, a ellos o a sus usuarios — que lo hagamos a través del código que escribes es otra cosa.

    Si tu única medida de valor es el código que escribes, no los problemas que resuelves, suena lógico que lo sientas como un ataque personal con carga emocional cuando alguien decide eliminar o modificar tu código.

    Matt Basta en su newsletter aborda un punto tangencial, pero igual de relevante, para el tema del que estamos hablando:

    A menudo escucho a gente bastante joven decir cosas como “Estoy aquí para crecer como ingeniero”. Crecer como ingeniero es mutuamente excluyente con cuánto duran tus contribuciones. “Crecer como ingeniero” significa convertirte en un mejor ingeniero, y convertirte en un mejor ingeniero (directa o indirectamente) significa mejorar en el uso de tus habilidades para crear valor. Al principio de tu carrera, el trabajo que realices probablemente tendrá mucha menos longevidad que el trabajo que realices más adelante, simplemente porque ganas madurez con el tiempo y aprendes a crear herramientas que tienden a ser útiles por más tiempo.

    A veces, el valor que generas se traduce en resultados técnicos. A veces, es la forma en que trabajas con las personas que te rodean (colaborando, asesorando, etc.). A veces, se trata de cómo apoyas al resto del equipo. Hay muchas formas de crear valor.

    Este es el verdadero aprendizaje: el código que escribes es únicamente una de las formas en las que se manifiesta el valor que agregas a tu equipo. ¿Por qué habríamos de darle un lugar tan prominente a algo que es inherentemente volátil, y que representa solo una de las muchas maneras en que nuestro valor profesional es manifestado?

    No te encariñes con tu código

    Como alguien que lo hizo profesionalmente por más de una década, reconozco lo satisfactorio que es escribir código que me gustaría viviera por siempre. Al mismo tiempo, como alguien que pasó por un arduo proceso de separar mi identidad personal de mi experiencia como desarrollador, reconozco que fomentar un apego emocional al aspecto técnico de nuestro trabajo no es una manera sostenible de llevar una carrera en esta industria.

    Sobre todo, si lo que quieres hacer es trabajar en lo que te gusta por mucho tiempo.

    Al final del día, tu impacto no son las líneas de código que escribes. Lo que realmente se queda es el problema que resolviste y cómo eso mejoró la experiencia del usuario o facilitó el trabajo de tu equipo. En ese sentido, tu trabajo es tan sustentable como los problemas que resuelves. Así que, la próxima vez que sientas un apego emocional hacia tu código, recuerda: no eres tus líneas de código; eres las soluciones que ofreces.

  • Elon Musk tiene un estilo de liderazgo que no deberías copiar

    La semana pasada salió la esperada biografía de Elon Musk, por Walter Isaacson

    Si me conoces, sabes que de mis principales intereses son la psicología y liderazgo. Esta es una rara oportunidad de descubrir lo que sucede en privado con una de las personas con más influencia en la industria de la tecnología. Sus modos (lo que se ve en público) no me encantan, pero el resultado a gran escala de sus esfuerzos es innegable.

    Compré la biografía porque quiero conocer los matices de su personalidad y estilo de liderazgo.

    Elon Musk Biography

    En el pasado ya ha habido libros que intentan contar una historia para prevenir a otras personas de seguir caminos que llevan a situaciones indeseables que tienen el efecto contrario.

    La pregunta es: ¿será que algunas personas van a leer esta biografía buscando justificación para ser igual de assholes que Elon?

    En el minuto 14 de la entrevista que le hicieron a Walter Isaacson sobre el libro abordan este tema, y su respuesta es bastante clara: nadie debería de intentar emular a Elon Musk; una biografía no es un libro de recetas. Sin embargo, no dudo que muchos vayan a leer esta biografía y sentirse validadas en sus modos hostiles de tratar a la gente que trabaja con ellas. Si a Musk le funciona, a mí debería funcionarme también.

  • Saber venderte como desarrollador no es echar mentiras

    ¿Alguna vez has intentado venderte, hablar sobre tus logros y habilidades, y te sientes inadecuado o incómodo? Si tu respuesta es que no, déjame entonces preguntarte: en tu currículum, ¿compartes ejemplos de cómo le ayudaste al negocio con tus habilidades de desarrollo, o simplemente tienes una lista de tecnologías como JavaScript, HTML y CSS?

    Ahí está.

    Es hora de enfrentar este problema.

    Auto-Sabotaje Técnico: por qué no sabes cómo venderte

    Muchos ingenieros, programadores y profesionales técnicos están alérgicos a la idea de “venderse”. Preferimos hablar en lenguajes de programación, no en el lenguaje del valor humano o del impacto en el negocio. Desde un punto de vista psicológico, es una forma de auto-sabotaje. Minimizamos nuestro valor al no saber comunicarlo de manera efectiva.

    Recuerdo una conversación con uno de mis mentores que cambió mi perspectiva. Me preguntó: “¿Por qué le tienes tanto miedo a venderte bien en la industria?” Mi respuesta fue rápida: “Porque no quiero echar mentiras.” Sin embargo, él me mostró que hablar de mis habilidades técnicas y el valor que agrego a los equipos, en términos que los responsables de presupuestos entienden, no es echar mentiras, sino traducción.

    Naturalmente, como yo no estaba acostumbrado a hablar en esos términos, cuando hablaba de “valor agregado” y en vez de “arquitectura de aplicaciones” sentía que estaba echando mentiras. Pero no: estaba hablando de exactamente lo mismo, solamente que desde otra perspectiva.

    Aprender a hablar el Lenguaje del Valor

    Traduce tu valor. Como desarrolladores de software, tenemos que comenzar a ver que vender nuestras habilidades no es manipulación, sino adaptación. No es cambiar lo que hacemos, sino cómo lo comunicamos. La clave aquí es entender que en una organización se hablan diferentes lenguajes, y que aprender a hablarlos aumenta nuestro valor y nos permite colaborar de manera más efectiva.

    Dominar el lenguaje del valor es esencial para tu desarrollo profesional. Esta habilidad no solo te beneficia diariamente como desarrollador de software, sino que se convierte en un factor decisivo al buscar un aumento, un nuevo trabajo o un rol más avanzado. Hablar en términos de valor puede ser la llave que abre la puerta a oportunidades que transformarán tu carrera.

    Consejos prácticos para venderte mejor

    Aquí hay algunos consejos prácticos para que comiences a perderle el miedo a venderte.

    Identifica y lista tus habilidades: Antes de poder traducir tus habilidades a un lenguaje más accesible, primero debes saber exactamente qué estás ofreciendo. Esto va más allá de las habilidades técnicas; piensa también en las habilidades blandas que has desarrollado. Por ejemplo, si eres bueno resolviendo conflictos dentro de tu equipo, eso es algo que también tiene gran valor.

    Consejo: usa el método STAR (Situación, Tarea, Acción, Resultado) para describir situaciones específicas donde demostraste tus habilidades, sea de liderazgo, trabajo en equipo o resolución de problemas.

    Encuentra un Traductor de Valor: Este puede ser un mentor, un colega de otra área o incluso un amigo que tenga habilidades para comunicar y entender tanto el mundo técnico como el empresarial. Ellos pueden ayudarte a encontrar las palabras y conceptos que transmitan tu valor de una manera comprensible para todos.

    Ejemplo: Si eres un experto en optimización de bases de datos, un “Traductor de Valor” podría ayudarte a describir esta habilidad como “mejorar la eficiencia operativa reduciendo los tiempos de espera para los usuarios”.

    Practica con Escenarios Reales: No basta con saber cómo traducir tus habilidades; debes practicar. Ya sea en entrevistas de trabajo, conversaciones con stakeholders o incluso en tus interacciones diarias con tu equipo, toma la oportunidad de hablar sobre tu valor. La próxima vez que tengas una revisión de desempeño o una conversación similar, intenta usar este nuevo lenguaje de “valor”. Prepara antemano cómo vas a describir tus contribuciones de manera que resuenen con tu audiencia, y después evalúa cómo fue recibido.

    Por ejemplo, la próxima vez que hables con un gerente de proyecto, un cliente o modifiques tu currículum, en lugar de decir que “implementaste un algoritmo de búsqueda eficiente,” podrías explicar que “mejoraste la experiencia del usuario al hacer que la búsqueda de información en la aplicación sea más rápida y precisa.”

    Recibe Retroalimentación y Ajusta: Después de cada intento de vender tu valor, busca retroalimentación. ¿Fue efectiva tu comunicación? ¿Hubo algo que pudiste haber dicho de una manera más clara? Utiliza estos aprendizajes para ajustar tu enfoque en el futuro.

    Aquí hay una oportunidad de ejercer la Mentalidad de Crecimiento: La habilidad de “venderse” es como cualquier otra habilidad: se puede aprender y mejorar. Mantén una mentalidad de crecimiento y estarás vendiéndote como un profesional en poco tiempo.

    Conclusión

    En definitiva, aprender a comunicar tu valor es mucho más que una técnica de negociación; es una inversión en tu crecimiento profesional y bienestar emocional. Al dominar el lenguaje del valor, no solo incrementas tus oportunidades para conseguir un mejor salario o avanzar a roles más prominentes. También ganas una nueva capa de autoconfianza, un sentido de propiedad sobre tu carrera que se traduce en un mayor cumplimiento personal y profesional.

    Así que no lo postergues; empieza hoy a traducir tus habilidades técnicas en términos de valor.

    No es solo un cambio de vocabulario; es una transformación completa que puede elevar tu carrera a nuevas alturas.

  • Finanzas personales para desarrolladores de software

    Hoy quiero hablar de finanzas personales y dinero. Particularmente, desde la perspectiva de un desarrollador de software en la industria de la tecnología.

    Las personas que trabajamos en la industria del software somos extremadamente afortunadas. Nuestras habilidades nos han puesto en posiciones privilegiadas donde, podemos asumir — o casi garantizar — que tendremos acceso a sueldos por mucho más altos que los del ciudadano promedio.

    De acuerdo con Glassdoor, el sueldo base promedio para un desarrollador de software en México ronda los $51,000 MXN mensuales (o un poco más de $600,000 MXN al año). Esta cifra no contempla otros tipos de compensación, como bonos de rendimiento y RSUs, que harían que la cifra real estuviera más cerca o sobre el millón de pesos anuales. Mientras tanto, datos oficiales de gobierno dicen que, durante el segundo trimestre de 2023, el sueldo promedio para profesionistas y técnicos en México fue de $7,300 MXN mensuales — o casi siete veces menos que un desarrollador de software.

    Finanzas personales y dinero. Gráfica que compara los sueldos mensuales promedio entre profesionistas y técnicos y desarrolladores de software en México.
    Gráfica que compara los sueldos mensuales promedio entre profesionistas y técnicos y desarrolladores de software en México.

    Con esta disparidad en mente, es evidente que como desarrolladores de software llevamos una ventaja significativa en la economía actual. Pero con este privilegio también viene una responsabilidad. La industria nos ha brindado un poder económico y una estabilidad que muchos otros no tienen, y es crucial reconocerlo y actuar con la seriedad y conciencia que esta posición merece. Hablar de promedios nos ayuda a notar tendencias, pero no nos habla de la experiencia de cada una de esas personas. Es esencial no olvidar que detrás de cada cifra hay historias individuales y luchas, y es nuestro deber como profesionales privilegiados actuar con responsabilidad.

    El problema con el discurso usual sobre finanzas personales

    Usualmente, cuando se habla de finanzas personales, el ángulo que se toma es el de cómo podemos maximizar el rendimiento. ¿Qué instrumento me va a traer más dinero? ¿Cómo le puedo ganar al mercado?

    El problema con el discurso usual sobre finanzas personales, creo, es que no aplica para desarrolladores de software. Ya le ganamos al mercado — simplemente por virtud de nuestra posición en la industria y los recursos a los que tenemos acceso. Nuestro sueldo base es 7 veces más alto que el del ciudadano mexicano promedio. De nuevo, sin contar bonos, ni otros tipos de estructuras de compensación comúnmente usadas en esta industria.

    Sanar mi relación con el dinero y finanzas personales requirió darme cuenta de la realidad

    Cuando comencé a ganar lo que yo consideraba “un buen sueldo”, allá por 2015, decidí que era hora de sumergirme en el mundo de las inversiones. Devoré un par de libros sobre finanzas, y me compré algunos cursos que, por un rato, me hicieron creer que ya estaba capacitado para manejar mi dinero. Pero esa sensación de competencia no duró mucho.

    Unos años después había multiplicado mi sueldo unas cuatro veces. A pesar de esto, sentía que el dinero se esfumaba aún más rápido, y mi percepción general sobre mi situación financiera era más negativa que cuando inicié a ponerle atención a esta área de mi vida.

    Por un tiempo seguí utilizando la misma estrategia de finanzas personales que había estado empleando hasta ese momento: buscar la manera de incrementar mi ingreso. Suponía que mi situación mejoraría con el siguiente aumento de sueldo. “Cuando por fin gane $50,000 al mes, ya no tendré estos problemas. No, cuando gane 60. No, 80.”.

    En 2021, a media pandemia, fue cuando encerrado y sin manera de ignorarlo, tuve que enfrentar el problema. Me seguía sintiendo descontento con mi salud financiera y mi relación con el dinero, y tenía la prueba empírica de que tener más no iba a ser la solución.

    Lo que sí me funcionó para mejorar mis finanzas personales: sanar mi relación con el dinero

    Decidí cambiar la forma en que estaba pensando resolver mi problema. Cambiar las tácticas por una visión más holística de la situación. Lo que tenía bastante claro es que no sabía por qué, aunque cada vez ganaba más dinero, no me sentía mejor, más completo o más feliz. Muchas veces, era al contrario.

    En mi caso, después de hablar con un par de asesores de finanzas personales, leer muchos libros, e intentar “descifrar el código”, entendí que lo que tuve que haber hecho era buscar cómo sanar mi relación con el dinero, y no elegir el vehículo de inversión que me diera mejor rendimiento.

    Descubrí que el dinero es un tema emocional y psicológico, no de números.

    El problema no era la falta de dinero, sino cómo verlo positivamente al tenerlo. Mis experiencias pasadas y la educación familiar sobre el dinero me dieron una perspectiva sesgada, impidiendo que lo disfrutara o me sintiera satisfecho con él.

    Entendí que estaba intentando resolver un problema emocional y psicológico con tácticas, lógica y matemáticas.

    Esto se manifiesta de manera diferente para cada uno, por supuesto. Pero te invito a reflexionar. ¿Qué narrativas e ideas con las que creciste pueden estar jugándote en tu contra? ¿Qué frases sobre el dinero creciste escuchando que ahora, sin darte cuenta, están interfiriendo con tu salud financiera?

    Los recursos que me ayudaron a sanar mi relación con el dinero

    A continuación te comparto los recursos que me ayudaron (y me siguen ayudando) a mejorar y mantener una relación positiva con el dinero, lo que da como resultado finanzas personales más sanas. Están en el orden sugerido de lectura.

    Empieza por The Psychology of Money de Morgan Housel. Si es tu primer acercamiento al mundo de las finanzas personales, y trabajas en esta industria, ese libro te ayudará a ganar un poco más de perspectiva sobre qué realmente significa invertir, más allá de tácticas, mercados, cuál es el “mejor instrumento”, etc. En este libro, Morgan Housel también habla sobre el aspecto social y psicológico que el dinero juega en nuestras vidas y sociedad.

    No desaproveches la oportunidad de iniciar sin vicios, malas experiencias, habiendo intentado “ganarle al mercado”, etc. Lo he leído por lo menos 3 veces durante los últimos dos años, y cada vez encuentro pasajes que me resuenan de maneras diferentes.

    El autor recientemente empezó un pódcast donde explora estos temas de manera más detallada. Te recomiendo comenzar con estos episodios:

    Define tu propia versión del éxito

    Lee Die With Zero de Bill Perkins para terminar de asentar el punto de que para tener “éxito en las inversiones”, primero tienes que definir qué significa ese éxito para ti. (Spoiler alert: no es una cantidad de ceros en el banco) Este libro toca temas un poco más profundos y filosóficos, como la muerte, el legado que quieres dejar en la tierra, y el factor que juega el ego en la toma de decisiones financieras. El argumento del autor es bastante claro aquí, deberías de optimizar tu vida para que cuando mueras, tu cuenta de banco esté en ceros. Interesante

    Si esta lectura se te hace muy rebuscada, o toca temas difíciles de digerir para ti, te recomiendo como alternativa que leas Your Money or Your Life. Este libro es un poco más táctico, pero la esencia de la idea principal está muy alineada a Die With Zero.

    Vuélvete más táctico con Ramit Sethi

    Finalmente, para definir las tácticas que realmente te funcionen a ti, te recomiendo el modelo mental de Ramit Sethi, en I Will Teach You to Be Rich. De manera práctica, el contenido de Ramit fue lo que me ayudó a salir de deudas, y comenzar a usar mi dinero de manera que me sintiera feliz, cómodo, y seguro. Actualmente, soy parte de su comunidad en línea, tomo las llamadas con él todos los meses, y participo en el canal de Slack.

    Las ideas sobre finanzas personales de Ramit pueden ser poco ortodoxas o hasta parecer contrarias de primera impresión, pero resonaron mucho conmigo y realmente fueron las únicas que me ayudaron a reconfigurar mis tácticas y estrategias financieras. Si quieres primero dar una probada de la filosofía de Ramit antes de comprar leer el libro, puedes ver su conferencia en Google (43 min), una de sus entrevistas con Tim Ferriss (1:27), o su show en Netflix (8 episodios de ~1 h).

    Ramit también tiene un pódcast donde entrevista a parejas y les ayuda con sus problemas de dinero. Es prácticamente terapia de pareja al rededor del dinero, en vivo. Se van bastante profundo.

    Todos estos libros los he comprado y regalado varias veces a mis amigos cercanos. Y planeo seguir haciéndolo. Actualmente, en mi librero tengo varias copias de cada uno, listos para ser entregados en un abrir y cerrar de ojos a alguien que crea le pueden servir.

    En resumen: si trabajas en software, ya le “ganaste al mercado”, y buscar cómo ganar un porcentaje extra de ganancia no va a hacer una diferencia real en tu vida si no sanas primero tu relación con el dinero.

    Por lo menos esa fue mi experiencia. Y si las charlas que he tenido con otras personas son indicador de algo, considero que muchas personas en esta industria estamos en la misma situación. Pero nos cuesta trabajo (o nos da pena) aceptarlo.

    Para resumir, mi recomendación es que primero trabajes en sentirte más segura de que tu relación con el dinero está sana, que entiendes por qué y para qué estás invirtiendo (más allá de agregarle ceros a tu valor neto).

    Ya que tengas eso claro, todo lo demás es aritmética básica. Ahora sí, enfócate en instrumentos, estrategias, etc. Si lo haces al revés y primero te metes a entender la mecánica de la inversión, puede que te encuentres en una situación como alguna de las personas que entrevista Ramit en su pódcast, que tienen 8 millones de dólares en el banco, pero como nomás acumularon sin un propósito, siguen batallando por comprar fruta orgánica porque cuesta 3 dólares más. 

  • Reactancia: lo que sientes cuando te hacen micromanagement

    Es probable que hayas experimentado una reacción emocional particular, aunque tal vez no sepas cómo se llama. Se llama reactancia, y es una reacción emocional que ocurre cuando sientes que tu libertad está siendo amenazada.

    La reactancia puede surgir en una variedad de contextos, pero en el mundo de la ingeniería de software, aparece cuando alguien en una posición de autoridad, como tu manager o líder de equipo, te dice exactamente cómo hacer tu trabajo. En nuestra industria, a esta práctica se le conoce coloquialmente como micromanagement. Seguramente habrás escuchado el término.

    La reactancia en acción

    Imagina que estás trabajando en un proyecto de software complejo. Has estado trabajando en él durante semanas, y has desarrollado un plan sólido para su implementación. Pero entonces, tu gerente, sin previo aviso, te dice que cambies tu enfoque y sigas un camino diferente sin una razón aparente. En lugar de considerar sus sugerencias de forma templada, sientes una ola de resistencia, frustración, o hasta enojo. Esto es la reactancia en acción.

    La reactancia es una respuesta natural a la amenaza percibida a nuestra autonomía. Como ingenieros de software, valoramos nuestra habilidad para resolver problemas y diseñar soluciones. Cuando alguien intenta imponer su camino, puede sentirse como una invasión a nuestra libertad para innovar y crear.

    De forma práctica, la reactancia se puede manifestar de diferentes maneras. Comúnmente, si estás experimentando reactancia, puede que sientas una fuerte resistencia a acatar las instrucciones y te sientas frustrado o hasta enojado. Puede también que comiences a procrastinar y dejar que el trabajo se apile. En casos extremos, la reactancia se puede manifestar como rebeldía, al sentirte obligado a hacer exactamente lo opuesto que te dijeron.

    La reactancia no se manifiesta igualmente para todos

    Es importante recordar que todos experimentamos esta reacción emocional de manera diferente. Al ser consciente de cómo se manifiesta en ti, puedes aprender a manejarla de manera más efectiva.

    Entonces, ¿cómo puedes manejar la reactancia?

    • 1. Reconoce tus emociones: Primero, tienes que ser consciente de que estás experimentando reactancia. Si te sientes frustrado o resistente después de recibir instrucciones, es posible que estés experimentando este fenómeno.
    • 2. Comprende la intención: A veces, las personas que nos dan instrucciones tienen buenas intenciones. Intenta entender por qué te las están dando. ¿Tienen experiencia que tú no tienes? ¿Están tratando de evitar un problema que han visto antes?
    • 3. Comunícate abierta y honestamente: Si sientes que tu libertad está siendo amenazada, habla con la persona que te está dando instrucciones. Explica cómo te sientes y propón alternativas que te permitan mantener tu autonomía. Recuerda que tú también puedes dar feedback a tus líderes. Si sientes lo contrario, analiza si es momento de cambiar de ambiente de trabajo.

    Si lo ves de esta manera, el estar consciente de la existencia de, y saber cómo manejar la reactancia es una cualidad importantísima en un desarrollador de software senior. Significa que son capaces de prevenir conflictos innecesarios, facilitar la implementación de nuevas ideas y mantener un alto nivel de motivación tanto en ellos mismos como en su equipo.

    Lo importante es que reconozcas cómo se manifiesta en ti

    La reactancia es una reacción emocional que todos hemos experimentado, especialmente cuando sentimos que nuestra libertad está siendo amenazada. En el ámbito de la ingeniería de software, esta amenaza puede presentarse cuando alguien en una posición de autoridad, como un gerente, nos dice exactamente cómo hacer nuestro trabajo, un fenómeno conocido como micromanagement.

    La reactancia puede manifestarse de varias formas, desde resistencia y frustración hasta procrastinación y rebeldía. Sin embargo, al reconocer estas emociones, comprender las intenciones detrás de las instrucciones que recibimos y comunicarnos de manera abierta y honesta, podemos manejar efectivamente la reactancia.

    Para un desarrollador de software, la capacidad de manejar la reactancia puede prevenir conflictos innecesarios, facilitar la implementación de nuevas ideas y mantener un alto nivel de motivación, tanto personalmente como dentro del equipo. Por lo tanto, entender y manejar la reactancia no solo te permitirá recuperar u sentido de autonomía, sino que también te equipa con las herramientas necesarias para prosperar en tu campo.

  • Problemas Zanahoria: la ilusión del éxito que percibimos en otras personas

    Hace unos días un amigo me compartió un artículo que exploraba una idea bastante interesante. Hablaba sobre la importancia de tener claro que lo que nosotros podemos percibir como éxito en otras personas, puede tener una agenda oculta detrás.

    Uri, en su blog:

    Durante la Segunda Guerra Mundial, cuenta la historia, los británicos inventaron un nuevo tipo de radar a bordo que permitía a sus pilotos derribar aviones alemanes por la noche.

    No querían que los alemanes supieran sobre esta tecnología, pero tenían que dar una explicación sobre sus nuevos e improbables poderes.

    Así que inventaron una campaña de propaganda que afirmaba que sus pilotos habían desarrollado una vista excepcional al comer “un exceso de zanahorias.”

    Si vas a engañar a la gente para que haga algo inútil, comer zanahorias en exceso parece ser una de las mejores opciones. Sin embargo, hay un problema: las personas que creían en la propaganda y trataban de obtener una super-visión estarían invirtiendo tiempo y esfuerzo en algo que no iba a funcionar.

    Llamo a esto “el Problema Zanahoria”.

    Me encanta cuanto es posible encapsular comportamientos sociales de manera tan sucinta en una idea.

    Continúa:

    Una vez que buscas Problemas Zanahoria, los ves en todas partes. Esencialmente, cada vez que alguien logra éxito de una manera que no quiere admitir públicamente, tiene que inventar una excusa para sus habilidades. Y eso significa engañar a un montón de gente para que (potencialmente) pierda su tiempo, o algo peor.

    Hay que hacer una nota aquí: el “éxito” no es absoluto, ni significa lo mismo para todos. Para mí, hoy en día el éxito significa tener la capacidad de moldear mi entorno en función de que me permita tener tranquilidad y la opción de tomar decisiones sin apuros. Pero sí, al inicio de mi carrera, “éxito” significaba otra cosa completamente diferente. El éxito para mí en aquel entonces estaba determinado por factores externos, como status, dinero, y “ser el mejor” en lo que hacía — programando.

    Además, que alguien no quiera admitir la razón de su éxito de manera pública no siempre es por malicia. A veces simplemente es porque genuinamente no lo sabe (falta de introspección y consciencia), o vergüenza (prefiero que creas que llegué a esa solución por mi gran genio, y no que anoche lloré de desesperación frente a la computadora intentando encontrar el problema).

    Por supuesto, una vez que sabes que tus supuestos modelos a seguir están haciendo [algo malo] para tener éxito, eso no significa que tú también tienes que hacerlo. Idealmente, encontrarás alguna otra manera de tener éxito en el mismo campo sin hacer cosas malas; si no, podrías simplemente decidir que este juego en particular no es uno en el que quieras participar.

    Una vez exploré este tema con mi terapeuta. Durante la sesión, le compartí mi enorme frustración por no ser “tan bueno” como algunos de mis compañeros de trabajo, y lo que me dijo en esa sesión me cambió la vida. “Si tuvieras la oportunidad, ¿cambiarías tu vida completa por la de esa persona simplemente para ser igual de bueno programando?” Mi respuesta fue no.

    Aprender a identificar Problemas Zanahoria me ha salvado de muchas frustraciones desde entonces. Ahora, cuando veo a alguien que considero un modelo a seguir haciendo algo a lo que aspiro, en vez de querer traducir de manera directa lo que yo percibo como “éxito”, procuro expandir mi perspectiva y ver la imagen completa.

    ¿Cambiaría mi vida completa por la de esa persona, simplemente para poder estar al mismo nivel en este aspecto particular?

  • Los peligros de depender de los referidos en la industria del software

    En la industria del software, es muy común encontrar trabajo a través de referidos, o referrals como se les conoce en inglés. Si no estás familiarizado con el término, un referido es básicamente cuando una colega o un conocido te recomienda para una vacante en su empresa o en una que conoce. Durante mucho tiempo, confié fuertemente en este método de conseguir trabajo.

    En este punto, es importante destacar que algunas empresas incluso incentivan a sus empleados a traer a personas con las que ya han trabajado antes. A primera vista, esto podría parecer una gran estrategia. Después de todo, ¿quién mejor para evaluar a un candidato que alguien que ya ha trabajado con él o ella? Sin embargo, estos incentivos a veces pueden resultar contraproducentes. Al animar a las personas a contratar dentro de sus propios círculos, pueden crear un ambiente de trabajo homogéneo y limitar la diversidad de pensamiento y experiencia.

    Los referidos te proporcionan una especie de falsa seguridad. En mi caso, ya no tenía que ir yo activamente a buscar oportunidades. Estas me llegaban a través de personas con las que ya había trabajado y que confiaban en mi capacidad y experiencia. Parece ideal, ¿no? Sin embargo, hay varios problemas en depositar toda nuestra confianza en este sistema.

    Primer problema de depender únicamente de ser referido: las experiencias no tan padres una vez que entras

    Uno de los problemas principales es que no siempre la experiencia laboral resulta tan padre como esperabas. Si cada parte de la empresa está contratando principalmente a través de referidos, sin un proceso de entrevistas estandarizado, es muy probable que te encuentres con una cultura laboral en la que cada quien está jalando para su propio lado.

    Las experiencias más retadoras de mi historia profesional han sido cuando he entrado a empleos por referidos, pero sin un proceso de validación de qué tanto era compatible con la cultura de la empresa. Si no hay un proceso de entrevistas donde se evalúe esto, probablemente no haya una cultura de la empresa definida. Entonces, te encuentras en un ambiente de “todos contra todos”, donde cada quien se va a tener que rascar con sus propias uñas.

    Piénsalo de la siguiente manera. En un ambiente de desarrollo de producto, si el departamento de ingeniería está contratando únicamente a través de referidos y sin un proceso de entrevistas estandarizado, es muy probable que los otros departamentos de la empresa también lo estén haciendo. ¿Cuál es el problema? Que cada grupo está creando, en esencia, cámaras de eco (echo chambers) que son incompatibles con las del resto de la empresa.

    Un producto exitoso se desarrolla a base de colaboración entre diferentes áreas de la empresa. ¿Cómo se podría lograr esto cuando ingeniería está impulsando una filosofía de desarrollo, al equipo de producto no le importa nada de eso y solo quiere sacar nuevas funcionalidades, y marketing solamente quiere vender?

    Créeme, no quieres estar en esa situación.

    Segundo problema de depender únicamente de ser referido: salir de tu zona de confort

    El segundo problema surge cuando quieres o necesitas cambiar de empleo, de industria, o crecer bajo tus propios términos. Te vas a sentir fuera de tu elemento. La industria cambia bastante rápido y te pueden correr en cualquier momento, sin necesidad de tener una justificación clara.

    No necesariamente tiene que suceder algo malo en el mercado para que las empresas hagan despidos masivos. Como lo expliqué en mi artículo, muchas empresas están despidiendo gente hoy simplemente porque empresas más grandes también lo están haciendo, y no les van a caer tantos problemas.

    Una amiga recientemente me comentó: “Además de la incertidumbre de no saber qué esperar, en mi vida me había entrevistado así, siempre había llegado por referidos”. Si siempre te mueves con referidos, cuando te toque enfrentarte al “mundo real” de las entrevistas y la búsqueda de empleo, puede resultar un shock bastante grande.

    ¿Entonces entrar por referidos es malo?

    No. Es perfectamente aceptable y, de hecho, beneficioso tener referidos y una comunidad de apoyo. Tener una reputación sólida en la industria que haga que la gente quiera trabajar contigo nuevamente es valioso. Pero si no tienes un contrapeso que te aterrice en la realidad de la industria constantemente, cuando tengas que salir a buscar tus propias oportunidades en horizontes no explorados, vas a pasarla mal.

    También es crucial no confundir ser el referido de alguien con tener un mentor. Un mentor es alguien que te guía, te da consejos y te ayuda a crecer profesionalmente, independientemente de si trabajas directamente con él o ella. Puedes aprender de las otras personas aun sin trabajar con ellas.

    Aquí te dejo algunos tips para mantener un equilibrio y que no te tome de sorpresa cuando no puedas contar con tu red de referidos para encontrar un trabajo:

    1. Desarrolla tus habilidades de búsqueda de empleo: No te limites a aceptar solo las ofertas de trabajo que llegan a través de tus referidos. Actívate en la búsqueda de empleo, prepara tu CV y practica entrevistas. Esto te mantendrá en sintonía con la realidad del mercado laboral.
    2. Cultiva una red diversa: No dependas únicamente de las personas con las que has trabajado antes. Asiste a eventos, haz networking, conéctate con personas fuera de tu círculo habitual. Esto te dará una perspectiva más amplia y te abrirá a nuevas oportunidades.
    3. Mantén una mentalidad de aprendizaje continuo: La industria del software cambia rápidamente. Asegúrate de mantener tus habilidades actualizadas y de estar al tanto de las últimas tendencias y tecnologías.
    4. No te olvides de la cultura de la empresa: Si bien es cierto que un referido puede abrirte la puerta a una nueva oportunidad, es crucial que también hagas tu propia investigación sobre la cultura de la empresa. No querrás terminar en un lugar donde no te sientas cómodo o valorado.
    5. Busca un mentor, no solo un referido: Un mentor puede proporcionarte orientación valiosa y perspectiva en tu carrera. Aunque un referido puede ayudarte a conseguir un trabajo, un mentor puede ayudarte a navegar los desafíos y a crecer en tu carrera a largo plazo.

    En resumen, los referidos pueden ser una herramienta importante en tu búsqueda de empleo, pero no deben ser tu única estrategia. Mantén un equilibrio y estarás preparado para enfrentar cualquier cambio o desafío que se presente en tu camino. Recuerda, en esta carrera no se trata solo de sobrevivir, sino de prosperar.

  • 3 claves para crecer tu carrera de desarrollador de software

    En el mundo del desarrollo de software, muchas veces nos centramos en la tecnología y en aprender nuevos lenguajes de programación o herramientas. Sin embargo, hay un aspecto que suele pasar desapercibido: la agencia que cada desarrollador tiene sobre su carrera profesional.

    En este artículo, exploraremos la importancia de tomar las riendas de nuestro propio crecimiento y éxito.

    Elegir dónde y con quién trabajar: un aspecto clave

    Es común que los desarrolladores pongan mucho énfasis en la tecnología con la que trabajarán, pero elegir dónde y con quién trabajar es igual o más importante. Un ambiente laboral tóxico o poco estimulante puede frenar nuestro desarrollo profesional, además de afectar nuestra calidad de vida y salud mental. Por ello, es crucial investigar y seleccionar cuidadosamente las empresas y equipos con los que colaboraremos, asegurándonos de que compartan nuestros valores y objetivos.

    Sí, está bien que una de tus metas sea trabajar con la tecnología de moda — llámese Elixir, Clojure, o TypeScript. Pero toma en cuenta que toda la tecnología es una ola, nada más. Se va a ir, y mañana habrá algo nuevo que será la sensación.

    ¿Sabes qué es lo que no se va tan fácil? El daño de sufrir burnout por haber trabajado en una empresa sin visión clara, con comunicación horrible, y con liderazgo tóxico.

    No te quemes de a gratis.

    El éxito es encontrar un camino hacia delante

    Todos enfrentamos obstáculos y desafíos en nuestra carrera profesional. El éxito no se trata de tener un camino perfecto y libre de problemas, sino de nuestra habilidad para encontrar soluciones y avanzar entre las opciones que realmente tenemos a nuestro alcance.

    Ser resilientes y adaptarnos a las circunstancias nos permitirá seguir creciendo a pesar de las dificultades.

    Las habilidades blandas: el secreto para crecer tu carrera

    Es fácil caer en la trampa de pensar que, como desarrolladores, solo necesitamos mejorar nuestras habilidades técnicas. Pero las habilidades blandas, como la comunicación, el trabajo en equipo y la empatía, son extremadamente importantes para nuestro crecimiento profesional. Estas competencias nos permiten colaborar eficazmente con nuestros colegas, resolver conflictos y generar soluciones creativas a los problemas que enfrentamos.

    Aparte, toma en cuenta que cada día que pasa, si lo único que sabes es programar, tu carrera está en más riesgo.

    Impacto vs. conocimiento: crecimiento exponencial

    Medir nuestro progreso solamente en función de cuánto sabemos puede hacernos crecer de manera lineal, es decir, mejorar poco a poco en nuestras habilidades técnicas sin realmente avanzar en nuestra capacidad para resolver problemas reales y generar valor. Sin embargo, si nos enfocamos en buscar tener un mayor impacto en nuestro trabajo y en la comunidad, nuestro crecimiento será exponencial. Colaborar en proyectos de código abierto, compartir nuestro conocimiento con otros y contribuir al desarrollo de nuevas soluciones nos ayudará a aumentar nuestra influencia y a expandir nuestras oportunidades profesionales.

    La responsabilidad de crecer tu carrera es tuya

    La responsabilidad de crecer en la carrera de desarrollo de software va más allá de aprender nuevas tecnologías y herramientas. Debemos elegir cuidadosamente dónde y con quién trabajamos, ser resilientes ante los desafíos, desarrollar nuestras habilidades blandas y buscar tener un mayor impacto en nuestro entorno. Al tomar las riendas de nuestra carrera profesional, no solo mejoraremos como desarrolladores, sino que también contribuiremos al crecimiento de nuestra comunidad y de la industria en su conjunto.

  • Inteligencia Artificial reemplazará 7,800 empleos en IBM; pausan contrataciones

    Reuters reporta que IBM busca reemplazar miles de empleos con inteligencia artificial:

    La contratación específicamente en funciones de oficina, como recursos humanos, se suspenderá o disminuirá, dijo Krishna, agregando que el 30% de los roles que no interactúan con clientes podrían ser reemplazados por inteligencia artificial y automatizaciones en cinco años.

    Definitivamente, estamos entrando en una nueva era del desarrollo profesional.

    El 2 de julio del 2021 escribí en este blog:

    Lo que uno como desarrollador de software está buscando constantemente es la automatización de tareas mecánicas y manuales. La ironía es que, en sí, programar también es una tarea mecánica y manual. Y como tal, eventualmente también será automatizada.

    En aquel entonces, hablaba sobre GitHub Copilot y sus implicaciones en la industria del desarrollo de software. Continúo:

    La tendencia es clara. La verdadera ventaja competitiva para un desarrollador de software no será la parte técnica, sino las habilidades interpersonales.

    Esto ya está sucediendo. Puede ser que los empleos de desarrollador de software aún no se vean directamente afectados por la automatización, pero el equivalente ya está sucediendo en otras industrias.

  • Evita frustrar aún más a tus usuarios con tu documentación

    Escribir documentación es una de las habilidades más importantes de un desarrollador.

    JustSimply.dev:

    Si alguien ha llegado a buscar algo que has escrito en Google, significa que está atascado. Estar atascado puede ser frustrante y molesto. Así que trata de no hacer que se sienta peor diciéndole lo fácil que debería ser encontrar lo que busca. Esto puede obstaculizar su capacidad para aprender lo que quieres que aprenda.

    Es probable que tengas la tentación de que al escribir documentación sobre tus proyectos, quieras usar palabras como “sencillo”, “fácil”, “simplemente”, “nada más”.

    Se entiende. Lo que quieres es contarle a tu usuario lo mucho que estás haciendo por él o ella, resaltando lo poco que tienen que hacer para resolver su problema ahora que va a utilizar tu solución.

    Desafortunadamente, con lo que tu lector se va a quedar es con un sentimiento de frustración e insuficiencia, pues en lo que ha estado atorado todo este tiempo, resulta ser “fácil” de resolver.

    Tenemos que ser más cuidadosos y compasivos al momento de escribir documentación. Si alguien la está consultando, es porque quiere aprender algo más. Lo menos que podemos hacer es procurar que las personas que nos leen no se queden con la idea de que, dhu, lo que estás buscando es OBVIO.

  • Trabajar en tecnología en tiempos de recesión: ¿deberías preocuparte?

    Si trabajas en la industria de la tecnología, es posible que hayas notado que muchas empresas están haciendo reducciones de personal. Pero ¿deberías preocuparte por tu trabajo en tiempos de recesión?

    En la industria de la tecnología, las reducciones de personal no solo ocurren ante o durante una recesión. Las empresas pueden hacerlas en cualquier momento, incluso en tiempos de crecimiento económico. Y aunque es común que las empresas sigan las tendencias de la industria, muchas de las que están haciendo reducciones de personal son aquellas que contrataron de manera indiscriminada durante la pandemia.

    En lugar de preocuparte por una posible recesión, es mejor centrarse en tomar oportunidades cuando se presentan. Si una buena oportunidad llega a tu puerta, no debes preocuparte por el futuro. Nadie puede predecir con certeza lo que va a pasar, y es mejor trabajar con lo que se tiene.

    Pero, ¿qué hay de tu trabajo actual? Si bien no puedes predecir si tu empresa hará reducciones de personal en el futuro, puedes tomar medidas para proteger tu carrera en la industria de la tecnología. Asegúrate de estar al tanto de las últimas tendencias y tecnologías, y busca maneras de mejorar tus habilidades y conocimientos.

    Busca oportunidades, mejora tus habilidades y conocimientos. Enfócate en ser alguien que agrega valor. Todo lo demás es circunstancial.