Archivos de la categoría Desarrollo Profesional

No tienes que convertirte en Manager después de ser Senior

El otro día, un amigo que ya estaba trabajando como programador cuando yo apenas iba en 6° de primaria, se sinceró conmigo.

A pesar de que en su trabajo le pagan bastante bien, y bajo todos los estándares, es un buen empleo, está extremadamente frustrado. “Ya estoy harto de hacer diario lo mismo.” Me platicó que su día a día se ha vuelto tan monótono, que hasta las ganas de programar se le están quitando.

“No hay nada interesante para hacer. Puros forms, maquetado, y resolver bugs de renderizado.”

Cuando le pregunté si había algo que pudiera hacer para cambiar su situación, su respuesta no me sorprendió en absoluto.

“Sí, ser manager. Pero me caga la gente.”

Algunas personas, cuando llegan a cierto nivel de seniority como desarrolladores, dejan de preocuparse por su carrera. Le dejan de prestar atención a su crecimiento profesional porque creen que el único paso que está delante es el convertirse en management. Algo que no quieren hacer.

Opino que esto viene de la idea de que únicamente existe un camino de crecimiento profesional. Como mencioné en la última Sesión Grupal de Soft Skills para Devs, esto es completamente erróneo.

Llegar a cierto nivel de seniority como desarrollador no significa que no puedes seguir avanzando en tu carrera. Después de convertirte en experto en tu tecnología, tendrás más oportunidades de aportar valor de una manera mucho más amplia. Si no te quieres convertir en manager, después de ser Senior, te podrás convertir en Staff Engineer. Y si quieres continuar por la ruta de contribuidor individual, es decir, sin tener que manejar personas, puedes incluso llegar a convertirte en Principal Engineer.

En la empresa correcta, una vez que eres Senior, convertirte en manager no es “lo que sigue”.

Pero hay una trampa: mientras más creces en tu carrera como contribuidor individual, menos se mide tu impacto en líneas de código. Habilitar a otros desarrolladores, aportar valor a otros equipos y áreas de negocio, dar visibilidad a problemas. Todas estas son competencias clave que vas a tener que desarrollar, sí o sí. Todas ellas, van a requerir que le pongas atención, de alguna u otra manera, a tus Soft Skills y a tus habilidades de colaboración con otras personas.

Está bien que no te guste (o te cague) la gente. No todas las personas somos sociales por naturaleza.

Pero la oportunidad de mejorar tu carrera ahí está. Si no quieres convertirte en manager, no tienes que hacerlo.

Lo que sí tienes que hacer, es asegurarte de estar en la empresa correcta para seguir creciendo sin tener que tomar tareas administrativas. Y trabajar en tus Soft Skills.

“A esta empresa se viene a trabajar, no a ponerse sentimental”

Una de las banderas rojas más grandes es si tu jefe te contesta “a esta empresa se viene a trabajar, no a ponerse sentimental” cuando le comentas que una situación de tu trabajo te está afectando a nivel personal.

Para mí, esa es una señal inequívoca de estar en el lugar incorrecto para crecer profesional y personalmente.

https://twitter.com/Swanros/status/1472986970947080193

Como líder de un equipo, tengo claro que mi objetivo principal no es exprimir el talento de las personas con las que tengo el privilegio de colaborar. Mi trabajo es propiciar las condiciones necesarias a nivel organizacional para que ese talento florezca por sí solo, y luego potenciarlo. Desafortunadamente, muchos “líderes” de equipo realmente funcionan como jefes, exigiendo sin aportar, promulgando sin poner el ejemplo. Y la frase “a esta empresa se viene a trabajar, no a ponerse sentimental” es el reflejo de esa mentalidad, donde lo que importa es el resultado y no la persona. Un medio para un fin.

Hace unos meses escribí:

Tú y yo somos parte de un sistema que, hora tras hora, está buscando exprimir la mayor cantidad de productividad de cada uno de nosotros. Eficiencia, dicen, es lo principal. Ser eficientes. Ser productivos. Si no estás siendo productivo, estás desperdiciando recursos. Si no maximizas tus horas de trabajo, estás siendo irresponsable.

Gran parte del reto es el contexto cultural en el que nos desarrollamos — especialmente en Latinoamérica, donde muchos hemos crecido con la idea de que lo que importa es el trabajo duro, y que reprobar (o que te corran) es lo peor que te podría pasar. Peor incluso que vivir angustiado, amargado o con ansiedad. Y cada día que paso trabajando con personas y buscando la manera de honrar su individualidad, metas y objetivos personales, me doy cuenta de la mucha falta que hace que los líderes en esta industria sean más humanos.

Si logras identificar las banderas rojas en tu empleo, y estás inseguro sobre si deberías buscar otro camino, déjame decirte que tienes muchas cosas a tu favor. El mercado está más caliente que nunca, y hay muchas empresas y organizaciones que están decidiendo apostar por la persona, más que por el output que generan. Solo tienes que levantar la cabeza y buscarlas.

Primero, hazte consciente de tu valía como persona, analiza tu propuesta de valor y, como dice Vicente Plata, no aceptes abusos.

Por qué hacer over-engineering

Luis Lira, escribiendo en su nuevo blog:

Over Engineering es cuando nos gusta complicarnos la vida, algo como ser masoquistas, pero programando. Cuando estamos creando un proyecto y queremos sufrir por voluntad propia porque para un problema sencillo usamos una solución compleja. De hecho, este sitio es una muestra de eso.

En mi pueblo hay un dicho: salió más caro el caldo que las albóndigas.

Continúa:

Este Portafolio/Blog que hice aproximadamente en 10 días — aunque aún le falten cosas — pude haberlo hecho en unas horas y solo con unos cuantos clics, comandos en una consola o simplemente pagando una suscripción en algún sitio que me diera todo esto listo.

En vez de irse por la solución “integrada”, Luis decidió experimentar ensamblando su blog manualmente.

Se dice que algo está over-engineered (o diseñado de más) cuando la solución tiene cuesta más (tiempo, recursos, esfuerzo) que el problema mismo. Pero existe una distinción importante que me gustaría recalcar: construir algo desde cero cuando existe ya un paquete que resuelve el problema no es hacer over-engineering.

El término over-engineering es inherentemente negativo. Expresa que el diseño de tu solución está over, o de más. Es inútil, extra. Te lo pudiste haber ahorrado.

Lo que está haciendo Luis es algo sumamente positivo: tomar un problema que pudo haber resuelto con unos cuantos clics, desmenuzarlo y explorar creando una solución que se adapte exactamente a lo que él quería. Eso no es over-engineering, eso es engineering. 

A través de este ejercicio, Luis no solamente está aprendiendo y explorando nuevas herramientas de desarrollo, sino que está razonando un dominio de problema al que no estaba expuesto anteriormente. Este razonamiento seguramente le ayudará a comprender mucho mejor 1) la complejidad real del problema, y 2) la toma de decisiones que juegan un papel importante en hacer que WordPress, Ghost, Tumblr, etc., sean exitosos.

Eso es verdadero aprendizaje.

La cultura de desarrollo de software actual empuja a las personas a creer que entender las premisas básicas de los problemas que resuelven es algo negativo. ¿Para qué invertir tiempo en eso, si ya hay un paquete de JavaScript que lo resuelve? Sin embargo, es refrescante ver que aún hay personas que intentan comprender el problema antes de obviar el entendimiento del mismo y correr a implementar soluciones sin fundamentos.

Razones comunes para que los desarrolladores busquen nuevos empleos

StackOverflow compartió en su blog los resultados de una encuesta que aplicaron a 500 desarrolladores de software. La idea era encontrar los factores que  actualmente están jugando un papel importante en el mercado laboral de desarrolladores.

Las respuestas podrían parecer obvias para cualquier persona que trabaje en el medio. Sin embargo, creo que es buena idea analizarlas un poco más allá simplemente compartir el número de personas que prefieren tal cosa en lugar de otra.

Los resultados

Why are you looking for, or open to, a new job? 65% Better salary/pa, 39% wanting to work with new technologies, 36% Better work /life balance, 35% Growth or leadership opportunities

Para buscar nuevas oportunidades, 65 % lo hacen por un incremento de salario. Esto no debería de sorprenderle a nadie. En los últimos meses, sobre todo, se ha visto un incremento sustancial en la inflación de los salarios para personas que trabajamos en software. Hay varios factores que podrían estar influyendo en esto: la pandemia, la devaluación de la moneda, que cada vez hay empresas con más recursos para “quemar”.

Al momento de considerar empresas para unirse, el 56 % quieren que la empresa le ponga atención al developer experienceEste dato sí me sorprendió, pero tiene sentido. Conforme los retos se van haciendo más complejos y los equipos se van haciendo más distribuidos, lo que quieren los desarrolladores es que las empresas realmente inviertan en la infraestructura para soportar sus esfuerzos.

Hace unos años, la discusión sobre el developer experience era relativamente sencilla, porque había un alto grado de probabilidades de que los problemas se mitigaran simplemente eligiendo el cliente de git adecuado para el equipo. Hoy en día, los desarrolladores esperan que haya una infraestructura para colaborar, empujar código a producción, resolver conflictos, recabar datos, y más. Y no solo eso, sino que esperan que haya un equipo encargado de soportar dicha infraestructura.

Aquellas empresas que reparen en invertir en mejorar y facilitar el trabajo de los desarrolladores la van a tener muy difícil contratando reteniendo talento.

Lo que hace que una empresa sea poco atractiva tiene que ver con el nivel de micromanagement de la organización. Me sorprendió conocer que hay algunas organizaciones prohíben a sus desarrolladores usar Stack Overflow. Fuera de eso, la mayoría de los desarrolladores están de acuerdo en que lo que quieren es que la cultura de la empresa no esté basada en el control y la desconfianza.

También me sorprendió la tercera razón más popular que hace que una empresa no sea atractiva para un desarrollador: que no tengan los recursos para darle confianza en su trabajo. ¿A qué se refiere esto? Algunas ideas:

  • Que no haya un proceso de retroalimentación establecido
  • Opacidad en el proceso de toma de decisiones
  • Una estructura organizacional demasiado plana
  • Y, retomando el punto anterior, indiferencia por el developer experience

La reputación de la empresa es primordial para el descubrimiento inicial de oportunidades. De acuerdo con los resultados de la encuesta, 47 % de los desarrolladores toman más en serio las recomendaciones de oportunidades que vienen de su red personal (familiares y amigos) que cualquier otro medio. Hace poco escribí sobre este fenómeno:

Es mucho más importante, para tu desarrollo profesional y tu superación personal, estar con las personas correctas, que en la compañía con el nombre más conocido.

Bien dicen que la publicidad de boca en boca es la más efectiva.

Conclusiones

El mercado laboral está más “caliente” que nunca. Y veo que muchas de las conversaciones al rededor del tema se enfocan en cómo se puede hacer para contratar más personas, pero lo que leo entre líneas de estas respuestas es que deberíamos estar hablando mucho, mucho más de cómo retener el talento que ya tenemos en nuestras compañías.

Si pudiera hacer sugerencias accionables para 1) retener al talento que tienes y 2) hacer tu compañía más atractiva para otros desarrolladores, te diría, en orden de importancia:

  • Invierte en facilitar el trabajo de tu equipo. Desarrolla infraestructura que ayude a que tus desarrolladores se puedan enfocar más en el qué, y no el cómo de hacer su trabajo. Pule los procesos de desarrollo, despliegue y revisión de código. Establece procesos claros par resolver conflictos.
  • Mejora tu cultura de colaboración. Promueve el dar y recibir feedback de manera orgánica y constante. Asegúrate de que los desarrolladores tienen la visibilidad necesaria para tomar decisiones y hacerse responsables de sus acciones. Empodera a tu equipo.
  • Hazlos sentir orgullosos de trabajar en tu compañía. 
  • Súbeles el sueldo. Índice de inflación anual, multiplicado por 2. Al menos.

Google Summer of Code no estará limitado a estudiantes en 2022

Stephanie Taylor, escribiendo en el el blog de Summer of Code:

Durante los 17 años de GSoC, el ecosistema del código abierto ha crecido y evolucionado, y nos dimos cuenta de que el programa necesita evolucionar también. Con eso en mente, tenemos algunos cambio smayores para la edición de 2022, diseñados para poder servir mejor a la comunidad de las comunidades de código abierto, y dar un poco más de flexibidilidad a los proyectos y contribuidores, para que cualquier presona puede unirse y contribuir a grandes comunidades de código abierto.

Acá están los cambios resumidos:

  1. La participación ya no está limitada a estudiantes. Cualquier persona mayor de 18 años puede participar.
  2. Los proyectos ya no están limitados en cuanto a su tamaño. Ahora puedes parcipar con proyectos medianos (~175 horas) y proyectos grandes (~350 horas).
  3. Mayor flexibilidad en el tiempo que le dedicas al proyecto. Ahora puedes expandir tu GSoC hasta 22 semanas.

Tip: Si quieres un crash course de cómo trabajar con personas con diferentes perspectivas, pariticpar en proyectos de código abierto es tu solución.

Gatekeeping: qué es y cómo combatirlo

Gatekeeping. Cuidar ranchos. Creer que la forma en que tú ves el mundo es la única válida que existe.

Últimamente he empujado mucho este concepto en mis redes. Para mi sorpresa, cada vez que lo toco me lleno de menciones de personas que 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 creo 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

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. Como publiqué en Twitter, una de las características más importantes para trabajar en esta industria es tener la mente abierta.

Tercero, haz las paces con tu yo del pasado 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 sigue adelante.

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. Porque 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, te invito a asimilar este concepto y agregarlo a tu vocabulario. También, comienza a 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 más “aportan” es cuando se sienten su identidad amenazada (p. ej., 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.

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.

Cómo vencer el síndrome del impostor

Todos sufrimos del síndrome del impostor.

Tan solo basta con hacer una búsqueda en Twitter para darte cuenta de que no estás sola. A unos nos vuelve paranoicos. A otros nos paraliza completamente, mientras que a varios simplemente nos atormenta en cada decisión que tomamos en nuestra vida profesional.

Cuando hablamos del síndrome del impostor también estamos hablando, hasta cierto punto, de vergüenza. Seguramente a ti también en tu niñez te dijeron que estar mal es algo que deberías de evitar a toda costa. Probablemente en varias ocasiones te dijeron, como a mí, que si no tenías algo bueno que aportar, mejor no aportaras nada.

Vivir el día a día con síndrome del impostor es agobiador. Sobre todo si trabajas en equipo. Y aún más, si trabajas en un ambiente ultra competitivo como lo es el desarrollo de software. El miedo de exponer una idea y quedar mal, como el que no sabe. El síndrome del impostor hace que nada de lo que tienes que aportar pueda salir a la luz. Pero todo esto se puede prevenir.

Considera lo siguiente: así como no mandarías código a producción sin probarlo o validarlo, tampoco deberías de convertir ideas en código sin antes pulirlas con tu equipo.

La próxima vez que sientas miedo de quedar “mal parada” por compartir tu idea de solución con el resto del equipo, recuerda: eso también es hacer software. Estás probando la viabilidad de la idea. Si escribir tests te ayuda a confiar más en tu implementación, exponer tus ideas con tu equipo y recibir feedback de ellas te ayuda a confiar más en que vas por el camino correcto.

Vencer el síndrome del impostor es tarea de todos

Si bien cada quien lo experimenta de manera diferente, todos en algún momento de nuestra vida nos hemos identificado (o nos vamos a identificar) con este síndrome. Creo que es una de las pocas cosas en las que todos podemos estar de acuerdo: el síndrome del impostor es algo que tenemos que tratar.

Y considero que es responsabilidad de todos los que estamos en esta industria buscar maneras de erradicarlo.

Recientemente, me compartieron una técnica que ha hecho maravillas para mí y mis equipos. Nos ha ayudado a bajar la barrera de entrada a discusiones, y al mismo tiempo, ha ayudado a que las soluciones a las que llegamos como equipo sean más diversas y ricas en perspectivas. La técnica se llama Wrong Answers Only, o “respuestas incorrectas únicamente”, pero me gusta más el nombre en Inglés.

Wrong Answers Only se trata de poner como regla, en cualquier discusión de equipo, que únicamente se vale compartir respuestas incorrectas.

La barrera de entrada ahora es mucho más baja, porque ahora lo que no quieres es estar en lo correcto. Dale rienda suelta a tu imaginación, y di lo primero que se te venga a la mente. Conforme va avanzando la reunión, la abundancia de ideas que no están atadas a la expectativa de tener que estar bien comienza a ofrecer un panorama mucho más amplio y diverso de soluciones posibles.

Poco a poco, utilizando esta técnica, los miembros del equipo ganamos confianza en nosotros mismos y aprendemos que estar mal es parte del proceso de aprendizaje. Y mientras más nos demos cuenta de lo anterior, más se rompe la asociación de que estar en lo incorrecto es un juicio directo sobre nuestra valía y capacidades como profesionales.

Las 4 fases del conocimiento: aprende a identificar en cuál estás

La semana pasada participé en un taller donde aprendimos el valor de escuchar sin intentar resolverle los problemas a otras personas. En la explicación que dio el facilitador, compartió un concepto que me voló la cabeza: las fases del conocimiento.

Durante el taller, usó esta idea para recalcar la importancia de mantenerse receptivo ante los sentimientos de los otros.

No lo había escuchado nunca, pero se me hizo una forma extremadamente práctica de entender cómo es que el conocimiento se vuelve parte de nuestra vida. Y hoy te quiero compartir ese concepto para que lo utilices cada que quieras aprender algo nuevo.

El conocimiento puede existir en 4 fases dentro de nosotros: Punto Ciego, Aprendizaje, Aplicación y Encarnación.

Las fases del conocimiento: Punto Ciego, Aprendizaje, Aplicación y Encarnación

Cada una de estas 4 fases se vive de manera consciente o inconsciente.

  1. Punto Ciego: Inconsciente. No sabes lo que no sabes. Asumes y supones, pero no te cuestionas por qué de las cosas. Simplemente, aceptas la realidad tal cual. Caes en dogmas y vas por la vida sin preocuparte por los efectos de tus acciones en el mundo que te rodea.
  2. Aprendizaje: Consciente. Por alguna razón, te diste cuenta de tu punto ciego y estás buscando, de manera consciente, expandir tu conocimiento. Estás estudiando, investigando, encontrando maneras de desbloquearte. Haces preguntas, investigas y te vuelves más receptivo a nuevas ideas.
  3. Aplicación: Consciente. Estás cristalizando tus aprendizajes de la fase pasada. Tomas lo que estudiaste, lo que aprendiste, y lo aplicas para terminar de asimilar el conocimiento. La aplicación de lo que has aprendido, a su vez, genera más preguntas. En esta fase es donde descubres tu propia versión de la verdad.
  4. Encarnación: Inconsciente. Lograste dominar tu craft y ahora puedes ejecutarla sin pensar — logras aplicar tu conocimiento de manera inconsciente. En esta fase es donde el conocimiento se vuelve sabiduría. Vuelves a no saber por qué sabes lo que sabes.

Si tienes la suficiente astucia, te darás cuenta de que este no es un proceso lineal, sino cíclico. Cuando logras encarnar el conocimiento, en tu mente se libera espacio para poder ponerle atención a otros aspectos de tu vida. Es ahí donde descubrirás más puntos ciegos, y podrás comenzar el camino de nuevo.

Esta forma de pensar también encaja perfectamente con el efecto Dunning-Kruger (el inverso del síndrome del impostor): “mientras menos sabes, más crees que sabes.” Te hice una gráfica.

La próxima vez que rechaces una idea, pregúntate:

  • ¿Es este mi punto ciego?
  • ¿Hay algo más que pueda aprender de este tema?
  • ¿Podré aplicar lo que aprenda de esto?

Cómo trazar tu futuro en el desarrollo de software y alcanzar tus objetivos

Para las personas que pensamos de manera lógica es tan divertido programar, que tendemos a enfocarnos únicamente en ello.

El prospecto de aprender una nueva tecnología o herramienta es suficiente para que la adrenalina nos mantenga despiertos hasta altas horas de la madrugada. Pero cuidado: no caigas en el shiny new toy syndrome.

Es válido aprender por mera curiosidad. Después de todo, así es como muchos descubren sus verdaderas pasiones. Sin embargo, hay una delgada línea entre explorar ideas con el objetivo de ganar nuevas perspectivas y ser complacientes.

Yo dibujaría esa línea en el punto en que el tiempo que pasas aprendiendo cierta tecnología se convierte en potencial y esfuerzo desperdiciado. Por ejemplo, yo sabía desde un inicio que quería trabajar haciendo iOS de bajo nivel. ¿Me habría servido ponerme a estudiar Kubernetes?

Probablemente sí, para conocer la herramienta y entender las implicaciones. Pero no tanto como para haber buscado una certificación, o invertir tiempo y dinero en un curso para dominarlo.

Para alguien con Cerebro de Programador™ puede resultar bastante complicado ver un poco más allá de la parte práctica y técnica — programar. La idea de definir qué es lo que quieres hacer probablemente te parezca completamente ajena. Y con razón — la industria te ha hecho creer que tu tarea es resolver tickets. No es hasta que te topas con la necesidad de poner los pies en la tierra y decidir qué es lo que realmente quieres hacer, que se comienza a poner interesante.

Aunque no es sencillo, definir para qué quieres aprender tal o cual tecnología es un proceso asequible. Lo único que necesitas es un poco de dedicación, y autocompasión.

La manera más sencilla que te puedo compartir para resolver este problema es que diseñes tu progresión de carrera — y lo hagas lo antes posible.

Para comenzar, plantéate las siguientes preguntas:

  • ¿Qué tipo de problemas te gustaría resolver?
  • ¿En qué industria?
  • ¿Rodeado de qué tipo de personas?

Una vez que tengas tus respuestas, tendrás una estrella norte para seguir. Ahora tu tarea es hacer ingeniería inversa, y buscar las herramientas, experiencias y contactos que necesitarás para llegar a ella.

Haz este ejercicio cada 3 o 5 años.

Hacer soporte es trabajo de un desarrollador

Si tomas tu carrera en software en serio, deberías de buscar hacer soporte regularmente.

Como ingenieros tendemos a creer que hacer soporte no nos corresponde. Después de todo nosotros ya cumplimos escribiendo el programa; que el lidiar con los clientes se lo lleve el equipo dedicado a eso. Pero hoy estoy aquí para decirte que podrías obtener muchísimos más beneficios si cambias tu actitud, y si en vez de evitar hacer soporte, lo buscas.

Hacer soporte es parte integral del desarrollo profesional de cualquier ingeniero de software.

A través de la exposición a comentarios, preguntas, frustraciones y retroalimentación en general de las personas usando tu producto, ganarás más empatía por tus usuarios. También tendrás una mejor actitud cuando estés intentando arreglar problemas en tu producto, porque tendrás mejor visibilidad de cómo tus decisiones afectan a otras personas — directa, o indirectamente.

Además, afilas tus habilidades de comunicación a la hora de reportar bugs por tu cuenta. Algo cambia cuando parte de tu trabajo es intentar exprimir información de un cliente que solamente manda un “no funciona” con una captura de pantalla de un 404. Tu próximo reporte de un bug será mucho más claro, conciso y completo. Te lo garantizo.

Hacer soporte no es sencillo. Tienes que aprender a leer entre líneas para entender qué es lo que realmente te están reportando. Pero los beneficios de desarrollar esas habilidades son tangibles. Después de cumplir un tiempo haciendo soporte, tendrás un mejor entendimiento de lo que realmente valoran tus usuarios. Así, cuando vuelvas a trabajar en crear tu producto, sabrás exactamente a qué ponerle atención y cómo darles más valor agregado.

Ser un ingeniero de software encargado de hacer soporte es un ejercicio de humildad. Te darás cuenta de que tus preconcepciones sobre cómo se usaría tu producto son erróneas, y de que, por más que te cueste aceptarlo, no puedes predecir cómo alguien va a interpretar tus propuestas de solución. Eres humano, y hay cosas que ignoras. Esos espacios en tu conocimiento se hacen más obvios cuando te toca ayudar a otra a persona a desbloquearse.

Haz soporte. Te conviene.

5 Soft Skills para dominar si desarrollas software

Los Soft Skills son imprescindibles para cualquier desarrollador de software. Puede que seas capaz de codificar mientras duermes, pero si no tienes la capacidad de comunicarte te encontrarás en una situación incómoda. Y a menos que pretendas trabajar por tu cuenta para siempre, no es lo ideal.

Un estudio en el estado de Sonora demuestra que los mismos desarrolladores de software dicen que los Soft Skills son igual o más importantes que conocer ciertas tecnologías.

Este artículo te enseñará los Soft Skills principales que pueden ayudarte a hacer o deshacer tu carrera como desarrollador de software.

Comunicación

La buena comunicación es una habilidad esencial para cualquier trabajo profesional. Pero es especialmente importante para los desarrolladores de software que son serios con su trabajo. Desarrollar software, a final de cuentas, se trata de resolver problemas — para y con otras personas.

No importa si trabajas por tu cuenta como freelancer o en un equipo de desarrollo, vas a tener que comunicar ideas complejas a otras personas. Lo único que cambia es el medio. El diseño de una API comunica cómo debería ser utilizado tu servicio. Cómo redactas reporte de un bug comunica muchas veces no solamente lo que se debe de resolver, sino cómo debería de resolverse.

Los desarrolladores de software, como personas lógicas que somos, tendemos a pensar en términos de unos y ceros. Pero tener esta misma mentalidad al momento de comunicarnos con otras personas, especialmente personas que no tienen nuestra misma formación, no hace otra cosa más que perjudicar nuestra carrera.

Aprende a comunicar, y verás cómo tu código e ideas se vuelven 100% más efectivos.

Negociación

Los desarrolladores de software también tendrán que negociar con personas. Es raro el escenario en el que no tendrás la necesidad de discutir con otra persona para resolver un problema.

Si trabajas eres freelancer, por ejemplo, tendrás que negociar fechas de entrega, alcance del proyecto y hasta tu compensación. Si eres parte de un equipo, tendrás que encontrar la manera de llegar a acuerdos con respecto a metodologías de trabajo, herramientas y hasta qué convenciones seguir.

¿Usarás tabs o spaces?

¿Por qué deberíamos de usar Ruby y no Elixir?

¿Deberíamos desarrollar este feature antes de refactorizar el sistema?

No hay manera de que te escapes de tener que negociar cuando desarrollas software. Incluso, si lo piensas, diseñar una API se trata meramente de negociar qué es lo que el usuario te debe de dar vs. lo que tú le vas a regresar.

Ser excelente negociando hará tu vida desarrollando software mucho más productiva. No

Habilidades interpersonales

Empatía, tacto, persuasión, liderazgo, entre otras. Las habilidades interpersonales son importantes cuando hay que interactuar con otros miembros del equipo para que no se sientan molestos o disgustados por tu presencia. No es divertido tener un compañero grosero, combativo, que se queja de todo y no sabe cómo adaptarse al grupo.

Pero, yo diría, son mucho más importantes porque desarrollar software, al final del día, se trata de resolverle problemas a las personas.

Muy rara vez se desarrolla un software para que funcione en un vacío. Es casi seguro que si estás desarrollando una aplicación o sistema, o implementando un algoritmo, es porque alguien, en algún lado, necesita resolver un problema. Es aquí donde las habilidades interpersonales marcan la diferencia entre un software mediocre (dogmático, apegado a las ideas del programador) y un software realmente útil (usable, que resuelve los problemas del usuario).

Cuando desarrollamos software tenemos que tener siempre en mente a nuestro usuario. Por más novedosa que sea nuestra arquitectura, o más eficiente sea nuestro algoritmo — nada de eso importa si no estamos resolviendo el problema de la persona que usará nuestro desarrollo.

Sucede exactamente lo mismo en el contexto del equipo de desarrollo: ¿de qué sirve que seas el que más sabe de algún tema si nadie quiere trabajar contigo?

Eres una persona, y te mueves en un mundo de personas. No dejes que tus habilidades interpersonales se echen a perder.

Trabajo en equipo

Complementando a las habilidades interpersonales, viene el trabajo en equipo. Que es similar, pero no lo mismo. El trabajo en equipo es uno de los Soft Skills más citados en currículums, pero no muchos saben realmente qué significa.

Más allá de poder comunicar ideas complejas a tus compañeros, y de poder “llevar la fiesta en paz”, la habilidad de trabajar en equipo se podría resumir en la siguiente frase: tú no eres lo más importante del equipo.

Debes de ser capaz de observarte dentro del contexto del equipo, y ver cómo puedes apoyar, no cómo puedes obtener más control. Un desarrollador que sabe trabajar en equipo gestiona soluciones, delega responsabilidades y apoya en lo que puede. Pero nunca bloquea esfuerzos, acapara responsabilidades o tiene actitud de “quítate, yo lo hago”.

Seguramente has escuchado el término 10x Programmer — hace referencia a un programador que hace el trabajo de 10 personas, presumiblemente porque es tan bueno. Pero piénsalo de esta manera: un 10x Programmer no solamente hará el trabajo de 10 personas, sino que hará que 10 personas no quieran trabajar con él o ella. Y, a largo plazo, esa es una posición en la que no quieres estar. Muy bueno tirando código, pero insoportable al momento de colaborar.

No seas ese rockstar.

¿Quieres ser un 10x Programmer? Trabaja en equipo y haz que 10 personas crezcan para cumplir sus metas y objetivos.

Paciencia

Seguido me preguntan qué es lo que se necesita para poder desarrollar software profesionalmente. Muchas personas no se esperan que la respuesta que usualmente comparto es: paciencia. Un Soft Skill que usualmente pasa desapercibido porque es personal.

Desarrollar software es como armar un rompecabezas en tu cabeza. Solamente que no sabes cómo se debería de ver el diseño final, ni qué tamaño debería tener, ni si está en la orientación correcta. Si te frustras fácilmente, no sabes cómo lidiar con incertidumbre, y buscas la gratificación inmediata de todas tus experiencias, probablemente serás miserable desarrollando software.

No solamente deberás ser paciente con tus propios problemas — cuando estés intentando encontrar un error en un programa o aprendiendo una nueva tecnología. También deberás de ser paciente con personas que no hablan el mismo idioma que tú, o que no tienen la misma experiencia empírica. Tendrás que explicar conceptos complejos a personas que no saben de lo que estás hablando, y te harán preguntas sin sentido. Deberás lidiar con cientos de intentos fallidos para configurar alguna parte de tu stack.

Desarrollar software es un ejercicio de paciencia constante.

Si no eres paciente contigo mismo, y con las personas que te rodean en tu industria, probablemente la pasarás mal.

Y si estás leyendo esto porque apenas estás considerando iniciar tu carrera desarrollando software, te ofrezco una disculpa. Sé que puede sonar nada divertido, y hasta como una advertencia de que no lo hagas. Pero, por experiencia propia te digo: hasta las veces que perdí la paciencia y lloré porque no podía configurar una simple tabla en mi aplicación de iOS valieron la pena. Porque durante los siguientes 10 años pude aprender de los mejores, viajar por el mundo, hablar en conferencias y mi código hoy corre en cientos de millones de dispositivos. Porque fui paciente.

Cómo rechazar una oferta de trabajo de manera decente

Hace un par de semanas me integré al equipo de ingeniería de Homie (estamos contratando ?) y tuve que detener un proceso de reclutamiento que tenía con otra empresa. Esto me puso a pensar en este tipo de interacciones y en cómo el discurso de la industria está seriamente sesgado hacia los procesos desde el punto de vista de la empresa.

  • ¿Cómo hacer que tu currículum se vea atractivo? Pone a la empresa primero
  • ¿Cómo crear un portafolio? La empresa va primero
  • ¿Cómo venderte? Es para la empresa

Mucho se habla de cómo buscar un trabajo, y de cómo atraer a los reclutadores. El objetivo, a final de cuentas, es que esa conversación desemboque en una oferta laboral. Pero la vida real es impredecible, y hay ocasiones en las que ya tendremos al reclutador o empresa de nuestro lado y tendremos que tomar la decisión de decir “gracias, pero no gracias”.

¿Por qué rechazarías una oferta de trabajo?

“Estoy buscando trabajo” es una frase que me da escalofríos. Creo que todos hemos pasado por esa incertidumbre de querer hacer un cambio, por la razón que sea. Y encontrarse en ese limbo entre iniciar una búsqueda mientras estás atendiendo el trabajo que ya tienes no es sencillo.

Entonces, ¿por qué rechazarías una oferta de trabajo que tanto te costó conseguir? La respuesta puede variar de persona a persona. Durante una llamada con los miembros de la comunidad exclusiva hicimos esta pregunta, y algunas de las respuestas que se mencionaron fueron las siguientes:

  • La cultura no empata
  • Maltrato durante el proceso de entrevistas
  • El puesto no está alineado con lo que buscas a largo plazo en tu vida personal
  • Ya tenías otra oferta de trabajo
  • No te ofrecieron el rango salarial que buscabas

Pero también caímos en cuenta que esto es solamente la mitad de la ecuación: saber que no se quiere continuar con el proceso de reclutamiento es una cosa. Salirse del mismo es otra completamente diferente.

Durante la llamada, también se tocó el punto de que los latinoamericanos somos mucho más reacios a decir que no — a cualquier cosa. Simplemente nos cuesta negarle algo a alguien. Esto nos puede costar muchísimo profesionalmente, sobre todo cuando se trata de “no dejar ir una oportunidad”.

¿Cómo decir “no, gracias”?

Creo fielmente que todos nos beneficiaríamos de tener un manual de cómo lidiar con situaciones a las cuales no estamos acostumbrados. Decir que no a una oferta laboral o un proceso de reclutamiento es una de ellas. Por eso, le pregunté a los miembros de la comunidad si habían tenido que parar algún proceso de reclutamiento con alguna empresa, y si sí, cómo lo habían hecho.

“En mi opinión la mejor forma de rechazar una oferta laboral es siendo directo y honesto explicando el por qué,” me comentó un, argumentando que “el feedback es algo que no solo debemos recibir, sino también dar.” Creo que todos en alguna ocasión nos hemos quejado de que un proceso de entrevistas no se concreta (es decir, no nos dijeron ni sí ni no, que en realidad es un no), pero que no supimos por qué. Es algo que nos gustaría que se mejorara de los procesos de muchas empresas, pero creo que rara vez nos preguntamos si nosotros estamos haciendo algo para resolver ese problema de nuestro lado. Si queremos que algo cambie, empecemos por lo que nos toca.

“Pienso que de manera muy formal y siempre dejando las puertas abiertas (vaya uno a saber las vueltas que da la vida)”, comenta otro miembro de la comunidad, tocando un punto bien importante. Salir de un proceso de entrevistas de la mejor manera posible es algo que como profesionales no nos cuesta mucho trabajo. Sin embargo, habla muy bien de nosotros e incluso podría generarnos más oportunidades de las que nos quita.

Desde que iniciamos un proceso tenemos una idea de qué tantas ganas tenemos de que nos acepten. “… es válido decir el motivo, y aprender a decir no, no quiero, no me interesa,” opinó otro miembro, haciendo hincapié en que también es nuestra responsabilidad ser honestos con nosotros mismos al momento de decidir si iniciar un proceso de reclutamiento. Si desde un inicio sabemos que muy probablemente no es la opción para nosotros, podríamos ahorrarle tiempo a todos los involucrados y parar el proceso cuanto antes.

Los procesos de reclutamiento son arduos para todos los involucrados. La persona que está buscando empleo se prepara para más de una entrevista, seguramente. Mientras que la persona conduciendo la entrevista tiene que entrevistar a más de un candidato — probablemente durante el mismo día. No es un proceso fácil para ninguna de las partes involucradas, y hacer un esfuerzo, por más mínimo que sea, puede ahorrar muchos disgustos e incertidumbres.

Conclusiones

Las perspectivas, experiencias y recomendaciones fueron variadas. Pero todas se centraban al rededor de las mismas ideas.

De manera concreta, te puedo decir que para detener un proceso de reclutamiento, o rechazar una oferta de trabajo, estarás cubierto si sigues las siguientes recomendaciones.

  • Habla con honestidad. No hay herramienta más útil para promover el cambio que la honestidad. ¿No estuviste de acuerdo con alguna parte del proceso? Dilo. ¿Tienes otra oferta más atractiva? Dilo. ¿Simplemente no te sientes identificado con la misión de la empresa, o no te gusta lo que harás? Dilo.
  • Habla a tiempo. A nadie le gusta que le hagan perder el tiempo. El mejor momento para salirte de un proceso que ya sabes que no te gusta fue cuando te diste cuenta de eso. El segundo mejor momento es ahora.
  • Habla con respeto. La persona con la que hablaste no es la compañía. Muy probablemente ni siquiera estén en sus manos los términos o condiciones que guiaron tu proceso. Sí, es frustrante, pero no es justificación para faltarle el respeto a nadie.
  • No te prives de futuras oportunidades. Si cumples con los 3 puntos anteriores, tendrás una ventaja competitiva importante. Asegúrate que no se arruine todo haciendo comentarios como “de todos modos ni quería trabajar en su empresa toda fea”. Ya llegaste hasta aquí con la frente en alto, de la manera más profesional posible. Honra tu propio esfuerzo dejando las puertas abiertas para posibles futuras oportunidades.

Siempre volvemos a lo que nos gusta

Desde que tengo memoria consciente de lo que me gusta y de lo que no, siento una gran inspiración por todo lo que tiene que ver con el periodismo y el reportaje de noticias. Mi gusto por la tecnología tiene casi el mismo tiempo conmigo.

Por allá de 2009 inicié un canal de YouTube donde subía hacía reseñas de aplicaciones para el iPod touch. Me gustaba hablar mucho sobre cómo modificarlo, qué hacer y cuáles repositorios de código bajar. Instalar tweaks y temas era un pasatiempo que me gustaba compartir en video. Ese proyecto quedó inconcluso, un día simplemente dejé de subir videos — no recuerdo por qué.

Años después, cuando cursaba la preparatoria, volví a sentir las ganas de hacer algo para tener un pretexto de hablar sobre tecnología. Inicié SwanrosTech, un proyecto que también tuvo un canal de YouTube como componente importante, pero ahora a lo que dedicaba la mayor parte mi tiempo era a escribir noticias para el portal de internet. Ese proyecto murió cuando entré a la universidad, cientos de miles de visitas después. Pero mi entusiasmo por la tecnología y todo lo que sucede al rededor de ella vivió para contarlo.

Dos proyectos similares en inspiración, pero diferentes en implementación. A ambos los recuerdo con gran cariño porque fueron los periodos en que me sentí más inspirado. Esa inspiración es la que cada que me hace (hacía) pensarlo dos veces cada vez que volvía a sentir ganas de hacer algo para tener un pretexto para seguir hablando sobre tecnología.

Hasta el domingo pasado.

Salí a pasear a mis perros y a hacer ejercicio mientras escuchaba un podcast. No es raro que mi mente divague intentando encontrar pretextos para convertir lo que más me gusta en una carrera. Después de todo, así me pasó en con el desarrollo de software. Algún feedback positivo ha de tener mi cerebro.

Entre sprints, mientras intentaba recuperar mi aliento, sentí ese impulso de volver a correr, pero no a darle otra vuelta al jardín, sino a mi computadora a crear algo nuevo.

Cuando regresé a casa después de hacer ejercicio, no me podía sacar la idea de la cabeza.

Parecía que todo encajaba perfecto. Ya tengo un flujo de trabajo que me permite escribir y compartir mis ideas por correo electrónico. Además, identifico un vacío en el mercado. Y por último, creo que tengo algo que aportar a la discusión.

Así que cualquier duda si debía o no iniciar un nuevo proyecto salieron volando por la ventana, y puse manos a la obra. Un par de horas más tarde había decidido en el nombre, comprado el dominio, y hasta creado un logo que me gustaba. Así nació LasNoticias.tech. Mañana se publica la cuarta edición.

LasNoticias.tech
LasNoticias.tech

Por el futuro inmediato, quiero experimentar con el formato. Darme cuenta si puedo hacer que crezca y que funcione.

Te cuento esta historia porque, además de presentarte el proyecto me gustaría compartirte la realización a la que llegué: siempre sabemos qué queremos. De lo que se trata esto que denominamos “agarrar experiencia” es simplemente de encontrar las herramientas que necesitamos para poder expresarnos de una manera que nos convenza a nosotros mismos.

Hace 10 años estaba intentando resolver el mismo problema: tener algún pretexto para hablar de tecnología. Hoy sigo siendo ese geek que tiene una opinión acerca de algo que pasó a cientos de kilómetros de mí. La única diferencia es que hoy tengo 1) herramientas más sofisticadas a mi disposición, y 2) varios intentos bajo la manga.

No estoy diciendo que LasNoticias.tech ya es automáticamente más exitoso que mis otros proyectos, o que le podré dedicar el 100% de mi tiempo pronto. Lo que sí estoy diciendo es que me agrada la idea de saber que, de alguna manera, siempre he sabido qué quiero hacer con mi vida.

Steve Jobs dijo alguna vez que es imposible conectar los puntos viendo hacia el futuro. Lo que nos pasa solamente tiene sentido si lo vemos en retrospectiva.

Es nuestro trabajo crear tantos puntos como nos sea posible.

Cómo incrementar tus probabilidades de tener suerte

¿Qué es la suerte? ¿Si tengo éxito en qué medida se lo debería atribuir a suerte y mi propio esfuerzo?

Hace unos días publiqué este Tweet, queriendo exponer lo que yo creo es la distribución de componentes que conforman el “éxito”, independientemente de lo que eso signifique:

Seneca, filósofo estoico romano, dijo que “la suerte es cuando la preparación se encuentra con la oportunidad”. Y de acuerdo a esta lógica, podemos entender que no podemos fabricar la suerte, pero sí podemos propiciarla.

Tú y yo podemos incrementar nuestras probabilidades de tener suerte. Y para hacerlo, nos basta conocer los 3 principales ingredientes: preparación, trabajo y comunidad.

#1: Preparación, no fortuna divina

Un atleta profesional de alto rendimiento haciendo su deporte, un músico en el pináculo de su carrera tocar su instrumento, un científico al borde de realizar un descubrimiento con implicaciones generacionales. Todos tienen algo en común: hacen que su disciplina parezca sencilla.

El talento puede ser importante: da una ventaja al inicio de cualquier carrera. Pero la realidad innegable es que las personas que eventualmente adquieren la cualidad de lograr hacer que su arte parezca sencillo se lo deben a una sola cosa: la práctica.

Tanto el talento como la técnica pasan a segundo plano ante una práctica constante e intencionada.

“Si tuviera que acotar la receta para la genialidad en una oración, sería la siguiente: tener una obsesión desinteresada por algo que realmente importa”, dijo Paul Graham en su ensayo The Bus Ticket Theory of Genius.

Una obsesión, en el mejor sentido de la palabra, es la clave para poder dedicarle energía, esfuerzo, y sobrepasar todos los obstáculos que aparecen al intentar dominar cualquier disciplina.

Por ahí de 2004, cuando tuve mi primer contacto con el internet, se abrió ante mí un mundo de posibilidades, nuevas experiencias, e ideas. Me obsesioné, pero no de manera que pudiera sacar provecho.

Mi obsesión con internet nacía desde las ganas de estar “conectado” en MSN Messenger para poder platicar con mis compañeros de clase. De la emoción y el peligro de descubrir música nueva en LimeWire, Ares o eMule. Esta obsesión no me daba una ventaja competitiva, sino todo lo contrario. Me hacía sentir miserable.

Unos años después, cuando la novedad inicial del internet había pasado, y ya que contaba con un criterio más amplio, encontré una nueva obsesión: programar.

Esta nueva obsesión también me hizo sufrir: varias veces me encontré con lágrimas frente a la computadora por no entender un concepto que en mi mente debería dominar. Pero también me hizo ponerme a trabajar, estudiar, aprender, experimentar y, eventualmente, crearme una carrera profesional.

¿Cuál fue la diferencia? Que la segunda vez, me dediqué a trabajar para poder “domar” mi obsesión. No me quedé en el sentimiento de impotencia y frustración.

Existen obsesiones buenas y malas.

Una obsesión mala es aquella que incita a esperar gratificación inmediata: bajar música, chismorrear con amigos, ver videos de caídas chistosas. Este tipo de obsesiones nos llevan a sentirnos mal con nosotros mismos, a despreciar cada uno de los momentos en los que nos damos cuenta de que fuimos sus víctimas.

Por el contrario, una obsesión buena es aquella que nos inspira a retarnos a nosotros mismos con el fin de elevar nuestras habilidades y consciencia. Una obsesión saludable nos impulsa a hacer algo por materializar nuestros ideales, cimentar nuestros principios, y vivir nuestros valores.

Tener bien clara esta distinción también es clave para comprender si debemos de seguir o resistir nuestros instintos.

#2: Trabajo constante, no coincidencia

Al tener bien calibrada nuestra brújula obsesiva, podemos utilizar esa fuerza sobrenatural que viene de tener un interés desregulado por un tema en particular para ponernos a trabajar.

Es increíble lo mucho que podemos lograr si simplemente lo intentamos.

El interés inicial, con un poco de talento, te hará dar el primer paso. Una obsesión bien atendida te hará seguir intentando.

Contrario a lo que muchas personas pueden pensar, los éxitos no llegan de la noche a la mañana. Todas las historias de éxito repentino tienen un prefacio de años de esfuerzo, dedicación, paciencia y perseverancia.

Kobe Bryant usó su talento para inspirarse, y su implacable ética de trabajo para llegar la cima del mundo de los deportes. Las 8 lecciones de Garry Kasparov para mejorar en el ajedrez se resumen en una sola: práctica.

La sociedad sobrevalora el talento. Cualquier habilidad se puede ejercitar. Pero dedicarle el esfuerzo necesario a hacer el trabajo que te corresponde de manera consistente es donde realmente está el valor. Perseverar para materializar ideas, compartir conocimiento e inspirar a otros, sin importar la reacción del mundo.

Recuerda que “la suerte es cuando la preparación se encuentra con la oportunidad”. Y no hay mejor forma de estar preparado que tener las cicatrices para demostrar que hemos hecho nuestro trabajo.

#3: Comparte tu trabajo, no estás solo

En 2011 yo estaba buscando mi primera posición de tiempo completo en alguna casa de software. Quería integrarme a la comunidad de programadores de mi ciudad porque había algo en mí que me decía que ahí encontraría mi primera gran oportunidad.

Aún recuerdo cuando le dije a mi mamá que quería ir a la oficina de una empresa que no conocía, con un grupo de personas mucho más mayores que yo, a compartir una presentación sobre una tecnología que apenas estaba aprendiendo. Nunca se me va a olvidar su cara de incredulidad mezclada con miedo. Aquella noche, de la cual aún tengo fotos, me paré frente a un grupo de extraños a hablar de desarrollo móvil durante 25 minutos sin pretender otra cosa más que compartir algo que me apasionaba.

Esos 25 minutos, en retrospectiva, han sido los 25 minutos mejor aprovechados de mi vida. Aún al día de hoy, varias de las personas que conocí esa noche están en mi vida. He podido colaborar con algunas de ellas trabajando en proyectos interesantísimos. A otras tengo el gusto de llamarles amigos. Esos 25 minutos definieron, en gran medida, la trayectoria profesional que marcaría por los próximos 10 años, y que me llevarían a viajar por el mundo, dar conferencias, y, finalmente, escribir estas palabras.

Pero esos 25 minutos, donde me expuse a compartir y conectar con otras personas no aparecieron de la nada. Poder crear esos 25 minutos de contenido me tomó 2 años de trabajo.

La pieza final de la ecuación para incrementar las probabilidades de tener suerte es simplemente compartir lo que hacemos: el fruto de nuestra pasión combinada con el esfuerzo y constancia.

Cuando algo nos apasiona se nota. Nuestras pupilas se dilatan, no notamos el paso del tiempo. Creamos una atmósfera de creatividad, honestidad y genuina felicidad. Una órbita se materializa al rededor de nosotros, y ella naturalmente, casi por ley física, comienza a atraer a personas con los mismos intereses, las mismas pasiones, y las mismas ganas de crecer.

Contar con orgullo tus logros, aprendizajes, y hasta tus tropiezos va a atraer mucha más suerte que levantarte todos los días por el lado derecho de la cama.

La receta para tener más suerte

En el mundo del desarrollo de software es común encontrarse con la idea de que no hay valor en la interacción con otras personas. Desde hace unos meses he tenido el privilegio de apoyar a varias personas de esta industria con temas de productividad (agenda tu llamada hoy), y un tema recurrente es la desconexión entre lo que hacemos y nuestros usuarios.

Es demasiado fácil caer en la trampa de creer que nuestro trabajo, ya sea desarrollar software o diseñar materiales de construcción, existe en un vacío.

Todo trabajo, bien o mal hecho, terminará impactando a otras personas.

Bajo esta premisa, podemos deducir que hay dos componentes de cualquier esfuerzo que hagamos: la calidad del resultado, y a quienes impacta, para bien o para mal.

Dicen que la mejor publicidad es la de boca en boca. ¿Qué crees que sucedería si 1) procuras hacer trabajo excelente, y 2) lo compartes con más personas?

¡Felicidades, qué suerte tienes!

La diferencia entre el freelancing y el trabajo remoto

Se dice que alguien hace freelancing, o que es contratista, cuando la relación con el cliente tiene fecha de expiración. Se trabaja por proyecto, y puede que al terminar la encomienda actual no se vuelva a trabajar con el cliente.

Se dice que alguien trabaja de manera remota cuando la persona tiene un rol definitivo, de largo plazo, dentro de una organización.

Un freelancer rara vez puede influenciar a la organización, pues se le contrató para un trabajo en particular. Sus contribuciones están acotadas al dominio del problema actual que tiene el cliente.

Sin embargo, una de las implicaciones más importantes de la diferencia entre ser freelancer y un trabajador remoto es realmente cuál es tu trabajo.

Aunque parezca raro, la principal habilidad que un freelancer debe de desarrollar no es aquella por la que lo están contratando. Es la de ponerle precio a sus contribuciones y, aún más importante, la de cobrar.

Aprendiendo a valorar y cobrar por tu trabajo

Un error común que todos cometemos nuestras primeras veces haciendo freelancing es creer que todo va a salir bien. Que entendimos la idea del cliente, y que nos aceptará nuestras soluciones sin ediciones.

Pensamos que la transacción concluirá en tiempo y forma. Cuando la realidad es que cuando tomamos un proyecto de freelancing, es casi seguro que durante la marcha saldrán imprevistos que alterarán el costo, tiempo, o complejidad del proyecto.

Teniendo esto en cuenta, ¿cómo abordar la creación de un presupuesto de un trabajo, en tiempo y dinero?

Recientemente alguien me preguntó esto por correo electrónico. Esta persona acababa de tener su primera experiencia con un proyecto que no salió como esperaba.

¿Qué posibles soluciones u opciones darle al cliente para que salgamos en buenos tratos? Por último, supongo que es casi imposible no caer en este tipo de situaciones, pero ¿habrá una manera de disminuir el riesgo a que sucedan?

La diferencia entre el trabajo remoto y el freelancing es que, en realidad, el trabajo del freelancer es dominar el arte de realizar estimaciones y cobrarle al cliente.

Para bien o para mal, vas a tener que lidiar con muchos proyectos y clientes antes de que te conozcas lo suficiente como para determinar cuál es tu punto justo en cuanto a estimaciones. Desafortunadamente, esta es una habilidad que no puedes aprender en un libro, o experimentar en cabeza ajena. Vas a tener que hacerlo muchas veces hasta que entiendas cuáles son tus límites.

¿Cómo estimar proyectos para clientes?

No hay una solución definitiva para este problema. Por naturaleza, cuando tomas un proyecto nuevo no sabrás con qué te vas a encontrar. Así que, más que pensar en una solución particular para este problema, propongo pensar en términos de un marco de trabajo que puedas usar para lidiar con estas situaciones.

El marco de trabajo que más me ha funcionado, en particular, es el de “ser eficiente comunicando”. Sobrecomunica. No te esperes a la fecha de entrega para avisar que algo no va a estar listo. Da todos los detalles en cuanto los tengas disponibles.

Maneja las expectativas de manera correcta.

Esto te hará parecer mucho más profesional con tus clientes, y te ayudará a ganar una reputación que en el futuro te dará una ventaja competitiva sobre otros contratistas.

Ganando experiencia

Algo que le digo a las personas que trabajan conmigo es “enfócate en el proceso, no en los resultados”. Trabajar en modalidad de freelancing es complejo, y no es para todos. Pero puede ser bastante redituable para aquellas personas que saben cómo navegar sus altibajos. Enfocarte en el proceso, y no en el resultado de un proyecto en particular, te ayudará a aprender más sobre tu práctica, y cómo le puedes sacar más provecho.

En este artículo, Curtis Hebert comparte su experiencia con un freelancer novato. Leerlo te puede ayudar a comprender cómo se ve todo desde el otro lado de la mesa.

Después de todo, si no costara trabajo, la experiencia no se ganaría.

Cómo destacar tu currículum en el mundo del desarrollo de software

Lo he dicho en algunas ocasiones, en mi pódcast y en mis seminarios web: si juegas bien tus cartas, tu currículum solamente lo necesitarás la primera vez que busques empleo. Al inicio de tu carrera.

Aun así, probablemente te verás en la necesidad de mandar un CV, currículum, carta de vida, o como le digas, a una empresa para solicitar empleo. Y por eso te quiero regalar un consejo como alguien que constantemente revisa currículums de candidatos: cuéntame una historia.

Al contarme una historia, tu currículum te hará ver muchísimo más atractivo, y podremos entablar una conversación. Si todo sale bien, te ofreceré un empleo.

Te explico.

No digas lo obvio

Imagina conmigo la siguiente situación: entro a una tienda de deportes porque quiero comprar una bicicleta. ¿Crees que alguien me va a convencer de comprar una bicicleta diciéndome que tiene dos ruedas?

Por supuesto que no.

Sucede exactamente igual con un currículum. Cuando aplicas a una posición que requiere habilidades especiales, y dentro de tu CV solamente listas que sabes esas habilidades, no estás diciendo nada. No me estás llamando la atención. No te estás diferenciando.

¿Qué te hace diferente?

Ahora imagina que el vendedor se toma el tiempo de preguntarme para qué quiero una bicicleta, si ya tengo experiencia, y demás. ¿Qué pasaría si aprovecha esa información? Me ofrecería una bicicleta que me ayudará a cumplir mi meta de hacer ciclismo de montaña. Me contaría cómo el marco de fibra de carbono es más ligero pero más resistente, y por qué eso es bueno para mí. Haría una demostración de por qué el tamaño de la rueda de esta bicicleta en particular me ayudará a cansarme menos.

El vendedor entendió mis necesidades, y creó una historia al rededor de ellas para vender el producto. Jugó bien sus cartas, y el resultado es que yo salí de la tienda con mi bicicleta nueva.

Te invito a cuestionarte si realmente listar que sabes usar Photoshop e Illustrator le agregan valor a tu propuesta como diseñador gráfico. O si decir que sabes hacer balances de cuentas te diferencia como contador.

 

Cómo contar una historia en tu currículum

En mi artículo ¿A los 36 ya soy muy viejo para buscar trabajo en TI?, compartí lo siguiente:

Te aconsejaría tomar nota de cuáles sí son tus habilidades que te distinguen, y aprender a venderlas mejor a empresas que sí busquen lo que tienes que ofrecer.

Regla #1 del marketing: conoce a tu cliente. ?

Es una pena que las escuelas actualmente hagan ver la creación de un currículum como algo burocrático, cuando en realidad es 100 % marketing. Recuerda, el marketing se trata simplemente de vender.

Y la regla #1 del marketing es conocer a tu cliente.

Volvamos al escenario del vendedor de bicicletas. Yo quería comprar una bicicleta para hacer ciclismo de montaña. ¿Crees que habría comprado una bicicleta en esa tienda si me hubieran ofrecido una bicicleta de pista? Obviamente no. Pero el vendedor hizo algo crucial: investigó cuáles eran mis necesidades.

¿Sabes qué es lo que quiere la empresa para la que estás aplicando? Porque por ahí deberías comenzar. Y una vez que sabes por qué están buscando nuevos integrantes para su equipo, puedes comenzar a crear una propuesta de valor adecuada.

En este punto debería de comenzar a hacerte sentido lo que te digo. No simplemente listes tus habilidades. Evita decir cosas obvias. Enfócate en vender tu historia, y responder las siguientes preguntas:

  • ¿En dónde culminan tus habilidades?
  • ¿Cómo las has usado antes?
  • ¿Qué resultados favorables hubo?

Habiendo dicho esto, a continuación te muestro cómo puedes traducir una lista de habilidades en un párrafo que hará que tu currículum sobresalga.

 

  • Proceso creativo: esto es lo que te hace diferente. Tienes un proceso creativo, y gracias a él es que eres tan prolífico con tus contribuciones.
  • Tanto gráfico, como web y de correo: les estás diciendo que tus habilidades de diseño son multidisciplinarias. Implicas que conoces varias herramientas y sabes cómo utilizarlas para su propósito específico.
  • Incrementar sus ventas en un 35 %: esto es lo que ata con moño tu historia. Es por esto que todas tus habilidades son relevantes para la empresa. En este caso, les estás diciendo por qué te deberían contratar. Contigo en el equipo aumentan sus probabilidades de vender más.

El conjunto de esos tres factores, aderezados con datos particulares de tu perfil, es la historia que te va a hacer sobresalir.

Esto es casi una plantilla. Úsala a tu conveniencia.

Notas finales

Recuerda que un buen currículum no hará que te contraten. La idea de un currículum es entablar una conversación. Vender la idea de por qué vale la pena enviarte un correo pidiéndote una llamada. Hacerte parecer lo suficientemente interesante para que cuando te hablen, te pregunten por tu proceso creativo, no por comandos de Photoshop.

Pero sobre todo, ten en cuenta que el mejor currículum no es el que se envía, es el que se demuestra. Como dije al inicio, si juegas bien tus cartas, tus contribuciones, aportaciones, experiencia, y colegas hablarán por ti.

Que tu trabajo sea excelente.

Una receta: tú decides cómo la adaptas

Quieres preparar el platillo favorito de tu niñez, pero no tienes la receta. ¿Qué haces? Probablemente llames a tu mamá o a algún familiar para pedírsela. Seguramente, después de unos cuantos minutos al teléfono, reconocerás ese aroma que te recuerda a casa.

Analicemos la situación:

  1. Querías preparar algo de comer, pero no sabías cómo.
  2. Alguien que tenía la experiencia apreciable para decirte cómo llegar al resultado que esperabas.
  3. Seguiste la receta al pie de la letra y ahora estás disfrutando tu platillo favorito.

Felicidades, acabas de descubrir la metodología para resolver absolutamente cualquier problema que se te pueda presentar.

En algún momento de nuestra vida nos encontraremos con situaciones retadoras. Una nueva experiencia, una decisión a tomar, o un conflicto a resolver. Podrías recurrir a tu mentor por ayuda, o podrías buscar una síntesis de cómo atacar el problema.

Una receta.

Sigues la receta al pie de la letra, intentando atacar la situación paso a paso. Una pizca de metodología por aquí, y un pasón de creatividad por allá. Poco a poco el platillo va tomando forma.

La belleza de una receta es que se adapta a nosotros. “Sal al gusto”. Exactamente esa es la misma filosofía con la que deberíamos tomar las recetas que nos encontramos para resolver problemas.

A la receta podemos modificarla a nuestro gusto para satisfacer nuestras necesidades. Decidimos qué agregar, qué quitar, y las cantidades de los ingredientes a usar para que nos resuelva nuestro problema en particular.

Cuando pidas consejo o guía de cualquier persona, recuerda: te están dando la receta que les funcionó a ellos. La sal siempre es al gusto.

¿Qué cambia cuando dejas de estudiar y comienzas a trabajar?

Recientemente, un grupo de estudiantes universitarios agendaron una llamada conmigo para pedirme consejo sobre desarrollo profesional. Durante 40 minutos, tuve la oportunidad de compartir algunos insights de lo que se iban a enfrentar cuando por fin terminaran la escuela. La última pregunta que recibí en esa llamada me llamó la atención: ¿cuál es la diferencia más grande entre estudiar y trabajar?

Una pregunta tan simple, pero que nunca me la habían hecho. Creo que de hecho, ni yo mismo la había pensado. Pensé un momento, y di la respuesta que consideré apropiada en el momento: la principal diferencia entre estudiar y trabajar es la responsabilidad.

Cuando estudias, dentro del gran esquema de las coas, lo peor que puede pasar en primera instancia si no eres responsable es que repruebes. Como tal, las implicaciones del reprobar pueden tener significados diferentes para cada uno de nosotros. Sin embargo, las consecuentes directas de reprobar se podría decir que palidecen cuando se comparan con las consecuencias directas de no asumir tu responsabilidad en tu empleo.

Definiendo “responsabilidad”

Todos tenemos responsabilidades, queramos o no. A veces estas responsabilidades se nos son dadas. Y desde muy chicos fuimos condicionados a que si no cumplíamos con ellas, no podríamos disfrutar de aquello que más nos gusta.

Si no lavamos los trastes, no podemos salir a jugar con nuestro mejor amigo. ¿No arreglamos la habitación? Entonces no podemos ver televisión o usar el internet. Para ganarnos el derecho a comer postre en la cena, debemos de asearnos por la mañana.

man in black t-shirt and blue denim jeans sitting on tree branch

Foto por Zhang Kenny en Unsplash

Se nos enseñó que para poder hacer lo que nos gusta, aquello que nos trae gozo y que nos motiva, necesitamos cumplir con “nuestras responsabilidades”. Pero nunca se nos dijo que en la vida real, si no cumplimos con nuestras responsabilidades, contar con lo más básico que necesitamos para vivir, como tal, se vuelve un reto.

No se nos dijo que en el mundo real no hay nadie que te esté buscando para que te hagas responsable. Porque la realidad es simple: en un ambiente profesional, si no funcionas, pero tampoco se ve que estés haciendo algo por mejorar, las consecuencias son severas. Yo aprendí esto a la mala.

Se nos incentivó de manera incorrecta, dándonos a entender que una responsabilidad era un medio para hacernos merecedores a un premio. Lo que se nos debió de haber inculcado es que asumir responsabilidades es el tipo de cambio por defecto en la vida real y profesional.

Si quieres un aumento de sueldo, ¿crees que te van a pagar más sin exigirte lo proporcional?

¿Algún día te gustaría dirigir una empresa o equipo? Debes tener claro que el esfuerzo del equipo que estás lidereando tenga éxito será tu responsabilidad. Jocko Willink lo expresa de manera muy concreta en Extreme Ownership, cuando dice que el éxito o el fracaso de un equipo es la única responsabilidad del líder.

Si tienes la siguiente idea de aplicación que es “como Uber, pero para…” y que revolucionará alguna industria, ¿quién se va a encargar de que sea un éxito?

¿De quién es la responsabilidad?

Ser responsable y asumir las consecuencias de nuestras acciones no es un medio para conseguir un premio. Es un estilo de vida que, aunque duro, paga con interés compuesto ((El interés compuesto, en contabilidad y finanzas, es el interés de un capital al que se van acumulando sus réditos o intereses para que produzcan otros. El interés compuesto permite la capitalización de intereses periódicamente -día a día, mes a mes, etcétera. Wikipedia)).

Asumir la responsabilidad

“Sé responsable y asume las consecuencias de tus actos.”

Es un infortunio que esta frase sea usada casi exclusivamente en situaciones desagradables. Recuerdo que mi mamá me la llegó a decir en varias ocasiones, regularmente después de que había hecho algo indebido.

El contexto de las cosas importa. Y si se nos inculcó que asumir las consecuencias de nuestras acciones tenía una connotación negativa, ¿cómo podríamos esperar que viéramos el ser responsables como algo bueno?

Nunca se nos dijo que las consecuencias de nuestros actos también pueden ser buenas. Que ser responsable es más que algo que se debe hacer para recibir un premio. ¿No te habría gustado que desde los pocos años de vida te dijeran que los beneficios que obtienes por ser responsable son mucho más duraderos que el postre que te prometieron?

Se nos chantajeó.

Afortunadamente, asumir la responsabilidad de nuestras acciones es un hábito que se puede fomentar, y en el cual podemos trabajar todos los días.

Fomentando el ser más responsable

Hay una serie de cosas que podemos hacer activamente para fomentar ser más responsables. Los siguientes tips que te voy a compartir no solamente funcionan personalmente; los puedes aplicar también con tu equipo en caso de que estés en una posición de liderazgo.

Primero, asegúrate de no morder más de lo que puedes masticar. Tus metas deben de ser realistas, y lo suficientemente asequibles como para que el reto sea importante, pero no imposible.

Como cualquier hábito, lo que queremos en primera instancia es darnos cuenta de que podemos hacerlo si nos lo proponemos. Mi terapeuta le llama a esto “obtener las pruebas duras de que sí puedes lidiar con ello”. Después, podremos ir incrementando el nivel de complejidad hasta llegar al punto en el que deseemos mantenernos.

Así que en primera instancia, no te preocupes si sientes que no tienes el mismo sentido de responsabilidad que el CEO de Apple. Las circunstancias son completamente diferentes. Si comienzas a hacer este tipo de comparaciones, lo más probable es que te frustres.

Comenzar pequeño es la clave.

Segundo, debes de mantener la conciencia de hacer una revisión de tu esfuerzo. Ya que te adjudicaste cierta responsabilidad, buscarle respuesta a las siguientes preguntas te ayudará a entender mucho mejor lo que sigue:

  • ¿Qué tanta presión sentí con este nivel de responsabilidad?
  • ¿Del 1 al 10, qué tanto se me complicó cumplir?
  • ¿De lo que no salió como esperaba, qué estuvo dentro de mi control?
  • ¿Qué puedo cambiar en mi estrategia en un futuro?
  • ¿Estoy listo para incrementar la apuesta?

Estas respuestas pintarán una imagen mucho más clara sobre qué es lo que sigue para ti. Lo más importante es responder con honestidad, e intentar aprender de la experiencia. Una experiencia de la que no aprendemos fue tiempo y esfuerzo desperdiciados.

Tercero, incrementa lo que está en juego. Y repite. Repite hasta que ver tu desarrollo profesional y personal en términos de la responsabilidad que asumes se vuelva un hábito. Un estilo de vida.

Recuerda que el sentido de responsabilidad, y de asumir las consecuencias de tus actos, es un estilo de vida, no algo que puedas simplemente acotar a tu desarrollo profesional.

Carácter, le llaman algunas personas.

Cómo crear una red de conexiones para crecer tu carrera profesional

Un lector y miembro de la comunidad me pide consejo para virar su carrera hacia un área específica del desarrollo de software, sin tener conocidos:

Como por el momento mi plan de acción es trabajar como freelance y en proyectos personales afines al tema, me ha surgido una pregunta importante: ¿Cómo hacer para mejorar mis habilidades y técnicas de programación si es que no tengo a algún conocido dentro de este campo de la industria que me pudiera ayudar y trabajo solitario en mi casa?

Yo sé que mucho se puede aprender por los libros e internet, cosa que actualmente hago, pero sabemos que siempre hay alguien que ya recorrió el camino y puede hacerte varias cosas much más digeribles.

Por lo que he pensando, contestando a mi pregunta, intentar buscar y contactar por internet, quizá por Twitter, a gente que ya ejerza profesionalmente en la industria de la programación en audio y proponerle pagar por sesiones 1 a 1 donde él pudiera checar código hecho por mi y darme feedback sobre asuntos para mejorar. ¿Qué piensas al respecto?, ¿Sería buena idea?, ¿Cuál es tu opinión?

Mi respuesta:

Una de las cosas más difíciles de trabajar de manera remota es precisamente esa: volverse miembro de una comunidad que soporte nuestros objetivos. No es imposible, pero sí es bien difícil. Algo de lo que me da mucho gusto darme cuenta es que tienes bien reconocido esto, así que vas por buen camino.

La estrategia que yo te recomendaría es la siguiente: encuéntrate un mentor al que le puedas aprender. Tal como escribo en este artículo, tu mentor será tu ventaja competitiva. Lo que vale la pena recalcar acá es que un mentor no necesariamente es alguien que tenga que estar al pendiente de ti: tú puedes adoptar a un mentor, y esa persona ni se entera.

La clave acá es que debes de tener bien claro qué es lo que estás buscando. ¿Aprender sobre la industria? ¿Aprender sobre cuestiones técnicas? Hay un espectro enorme de ámbitos en los que te puedes enfocar. Habiendo decidido esto te ayudará a entender mejor qué es lo que deberías de estar buscando en ese mentor.

Es importante comenzar a buscar e integrarte a tu comunidad. Empaparte de todo el conocimiento que eventualmente te va a dar tu ventaja competitiva, mientras más pronto lo hagas, mejor.

A continuación te comparto una estrategia muy particular que puedes seguir para encontrar tu comunidad de nichos.

  1. Identifica un par de empresas que desarrollen aplicaciones que te gusten. Puede que te gusten por su estilo de desarrollo, la calidad de sus productos, o su mercado. No importa. El chiste es que admires su trabajo.
  2. Identifica a quienes trabajan ahí. Stalkealos. Casi todas las empresas van a tener en su página un directorio con la lista de personas que trabajan ahí. Apréndete sus nombres y el rol que tienen dentro de la empresa. (Si la página de la empresa no tiene una lista de colaboradores disponible, siempre puedes meterte a LinkedIn y buscar ahí.)
  1. Comienza a seguirlos. Probablemente, la misma página donde los encontraste tengan ligada su cuenta de Twitter ((En la industria del desarrollo de software tenemos una gran ventaja. A casi todos nos gusta usar Twitter para compartir las cosas interesantes que nos vamos encontrando.)) o su blog.
  2. Pon atención a lo que comparten. Esto te va a dar una idea de qué es lo que están haciendo. Y si bien seguramente no van a publicar un pedazo de código que puedas estudiar, seguramente sí van a publicar muchas cosas relacionadas con el tema que a ti te interesa.
  3. Pon atención con quienes interactúan. Esto te ayudará a encontrar personas similares dentro de la industria, y podrás comenzar a seguirlos también y así crearte una red de mentores a distancia.

Aparte, claro, te puedes acercar a las diferentes comunidades de desarrolladores que existen en México y América Latina. Entre todos nos apoyamos bastante a resolvernos nuestras dudas, y seguramente a través de ellas puedes hacer conectes bastante interesantes. En este artículo te pongo algunos enlaces que puedes usar para unirte a estas comunidades.

Otro recomendación poco conocido que te comparto, es que la industria es enorme. Por más que creas que tu área de negocio o de especialización es demasiado pequeña, seguramente hay una conferencia al respecto que sube sus videos a YouTube. Solamente es cuestión de saber buscar.

Comentando sobre tu idea de pedirles que te revisen el código en sesiones 1 a 1, cuidado. No digo que sea imposible, pero sí debes de tomar en cuenta el tiempo que alguien le debe dedicar a analizar una pieza de código para darte comentario que sea realmente útil. Va a ser una labor difícil. Si encuentras a alguien que esté dispuesto a hacer eso, te ganaste la lotería. Pero yo no lo tomaría como mi estrategia principal.

¿Cómo sé si mi empresa realmente me valora?

Envía tu pregunta por correo electrónico a pregunta@swanros.com. Te responderé en privado, y probablemente publique esa misma respuesta en esta página.

Un lector y miembro de la comunidad me pregunta por correo electrónico cómo puede detectar si para su empresa es solamente un recurso.

Nota: edité un poco la pregunta original por brevedad.

Mi pregunta es ¿COMO SABER SI SOY UN RECURSO O UN ASSET?, lo digo porque en un momento en mi empresa sentía que solo valoraban lo que hacía solo para tener el producto o la app terminada, y en cambio en la consultora, me mandan cositas y regalos y me siento que ahí si me quieren. Espero y me puedas ayudar con esta parte, y la verdad muchas gracias por todo esto, saludos.

Mi respuesta:

Es una pregunta muy interesante, y creo que vale la pena dedicarle un tiempo para poder descomponer la premisa.

Comencemos por lo siguiente: si eres un recurso o un asset no lo determinas tú, sino la empresa. Si bien puedes influenciar la situación a tu favor, dependiendo de qué es lo que quieras, muchas veces no es algo que tú puedas decidir en primera instancia.

Lo que debes de tener claro es que esto es una cuestión de cultura, no necesariamente de estar bien o mal. 

Ahora, analicemos la palabra misma, “recurso”. Wikipedia es bastante claro:

Un recurso es una fuente o suministro del cual se produce un beneficio. Recurso se refiere a cuando alguien tiene algo.

Para estar en la mentalidad adecuada, lo primero es tener clara la implicación de lo que significa que te consideren un recurso. En este artículo hablé un poco al respecto. Ahí exploré el concepto de las empresas de línea de producción, que se caracterizan por llegar a la meta de ventas mecánicamente. Este tipo de empresas son bastante propensas a caer en la mala práctica de tratar a sus miembros como recursos.

¿Cómo sé que solo soy un recurso?

Por más increíble la respuesta más sencilla es: te sientes usado y reemplazable.

Para dar un poco más de detalle, estos son algunos de los síntomas de que estás en una empresa que te ve simplemente como un recurso.

  • No sientes que tus contribuciones aportan más allá de un número en una hoja de cálculo.
  • No recibes feedback de cómo podrías mejorar en tu trabajo.
  • Sientes que la distribución de responsabilidades no va de acuerdo con las habilidades de las personas.
  • No hay un camino de crecimiento claro dentro de la organización.
  • Las tareas que se te asignan parecen no tener una justificación objetiva; no sabes por dónde te va a llegar la siguiente fuente de incertidumbre. (Algunas empresas le llaman a esto ser “dinámicos”)

La característica principal de un recurso como tal es que es completamente transigente. Un tornillo deja de servir en el momento en que se “barre”. Una escoba deja de servir en el momento en que las cerdas son demasiado suaves. Un colaborador deja de servir en el momento en que su desempeño no es el que se espera de acuerdo a metas arbitrarias. O peor aún, en el momento en el que el colaborador decide levantar la mano para decir “no me parece justo”. En ese momento, muchas veces se les pone la etiqueta de que son difíciles de trabajar con ellos. “No se ponen la camiseta”.

Por otro lado, me gustaría creer que no todas las organizaciones son iguales. Fantaseo con la idea de que todos los directores de empresas en algún momento se den cuenta de que procurar que sus equipos puedan crecer dentro de la organización no les da otra cosa más que beneficios directos.

El argumento más común que he escuchado para no promover el crecimiento profesional de las personas es “que se me van a ir”. Y mi respuesta es ¡que se vayan!

Piénsalo de esta manera, asumiendo que mi empresa trabaja en una industria específica. Si yo entreno a mi equipo con los estándares más estrictos del mercado y procuro su bienestar, tengo una ventaja competitiva bastante grande. Si esas personas se van de la empresa, significa que yo no estoy haciendo un buen trabajo y tengo una oportunidad de mejorar. Además, si esas personas se van a la competencia, eso solamente significa que mi mercado es lo suficientemente grande como para que haya competencia en primer lugar. Y cualquier organización decente, creo, tiene clara la noción de que la competencia sana solamente trae beneficios. A largo plazo, pero beneficios.

El peor pecado que podemos cometer como profesionales es caer en el cinismo de creer que no necesitamos seguir trabajando para mejorar constantemente.

Ahora, ¿cómo sé que sí me valoran?

Porque sientes que les importa tu crecimiento profesional. Exactamente todo lo contrario de ser tratado como un recurso.

Algunos síntomas de que estás en una empresa que quiere que seas el mejor de tu industria:

  • Sabes que tus contribuciones pueden tener un impacto no solamente en el producto, sino en la organización como tal.
  • El feedback que se te da es con el objetivo de hacer que mejores, no de recalcar dónde cometiste tu error.
  • La cultura de la empresa promueve la noción de que subir de puesto no significa que eres mejor que otras personas, sino que tienes lo que se necesita para tomar más responsabilidades.
  • Sabes exactamente los hitos que te pueden hacer merecedor a un avance de carrera.
  • No hay incertidumbre, ni en los proyectos que se te asignan, ni en la razón por la cual se te asignan.
  • Se promueve un sano balance trabajo/vida.

¿Te identificas? Felicidades.

¿Qué hago con este conocimiento?

Lo importante acá es recalcar lo que compartí al inicio de este correo: si eres un recurso o un asset no es decisión tuya. Tu parte de la ecuación es cómo te sientes con la situación actual, y si crees que si un ambiente en el cual quieres seguir.

Claramente hay personas que simplemente quieren llegar, hacer su trabajo, y continuar con su vida. Se vale. Pero como compartía hace unos días en el canal de Telegram de El Podcast DEV, si tú en primer lugar no tienes interés por mejorar en tu carrera y crecer tu skillset, y resumes tu trabajo y contribución a “una transacción entre la empresa y yo”, entonces no te puedes quejar de que te traten como un recurso. Simplemente no se puede. Porque esa es la mentalidad con la que estás llevando tus contribuciones.

Congruencia.