¿Cuáles son las habilidades más importantes para un desarrollador web?
El título de este artículo podría tener variaciones y, desde mi punto de vista, aún así tendría sentido. Si eres desarrollador web, desarrollador de aplicaciones móviles, ingeniero o desarrollador de software este artículo es para tí.
Por eso, sin perder más tiempo, te digo ya cuales son la habilidades más importantes, para que no te entre la ansiedad ;). ¡Las habilidades más importante que debe tener un desarrollador web son las habilidades de comunicación! Estas habilidades te ayudarán a ser un miembro funcional del equipo, te ayudará a ti en tu dia a dia - y a crecer profesionalmente -, y a tu equipo a desarrollar mejor sus funciones.
¿Cuándo tengo que usar mis habilidades de comunicación?
Tus habilidades de comunicación son necesarias cuando tienes que escribir la documentación para alguna API, framework o biblioteca, cuando tengas que enviar emails o mensajes a tus compañeros o colaboradores, o incluso te veas obligado a levantarte de tu silla para hablar con alguno de ellos, por alguna duda tuya o suya.
Las habilidades comunicativas son importantes si quieres transmitir conceptos complejos a otra persona y poder colaborar con ella como buen desarrollador de software. Además, si las tienes bien desarrolladas “jugarás con ventaja” en el mercado laboral, pues las empresas te las pueden pedir en las entrevistas de trabajo.
Por tanto, ya no puedes considerar estas habilidades, como habilidades “secundarias”, aunque sean soft skills. Esto significa que las habilidades de comunicación son importantes si quieres tener una carrera exitosa como desarrollador - posicionándose como un miembro valioso del equipo - y ser capaz de comunicar ideas complejas a personas que no son tecnólogas, como por ejemplo comunicando directamente con tus clientes humanos. ¿Hay algo más humano que la comunicación?
Como sé que tienes algunos “problemas de comunicación”, y necesitas ser capaz de comunicar conceptos técnicos a personas no-técnicas, hoy repasaremos cinco (5) de las características, y aspectos esenciales para que mejores tu comunicación. Son elementos que te ayudarán a comunicar mejor como desarrollador.
1.Trabaja tus habilidades de la escucha
Creo que no hay mejor forma de empezar a ser un gran comunicador que estar dispuesto en ser un gran oyente (“escuchador”). De la misma forma que antes de empezar a solucionar un problema técnico, necesitas el máximo de información posible antes de proponer la mejor solución, la comunicación también necesita acceso a toda la información previamente y sólo será efectiva cuando ambas las partes alcancen un punto de entendimiento mutuo.
Solamente de esta forma podremos hablar de gran comunicación. Estamos hablando de conceptos técnicos, que pueden variar según formación - biblioteca vs librería -, framework - módulo vs plugin -, enfoque, paradigma - función vs método -, arquitectura, idioma, etc, para decir lo mismo.
No escuchar en este contexto puede resultar en diferencias de comprensión, implementación, errores de programación, plazos de entrega extendidos, o desilusiones por expectativas no satisfechas.
Para que seas un buen oyente, utiliza las siguientes tácticas:
1.Asegura que has entendido lo que está diciendo la otra persona
Después de escuchar lo que ha dicho una persona, pára, piensa en lo que ha dicho, y después coméntalo con tus propias palabras lo que ha dicho. Es una buena oportunidad para que le presentes tu interpretación de lo que ha dicho, y para que la otra persona pueda corregir algo que tu no hayas entendido correctamente.
2.Escucha hasta el final
Reconozco que que saber escuchar hasta el final sin interrumpir es de las habilidades más complicadas de trabajar, por lo menos para mí. Sobretodo en el aquellos momentos que crees que ya sabes lo que va a decir, y crees que ya tienes la solución. :)
Esto se trata de una conversación, por tanto es importante darle al otro tiempo suficiente para decir todo lo que tiene que decir y luego aportar con tu idea, pregunta, o duda. Esta acción muestra que eres cortés y evita problemas futuros con tus compañeros de trabajo, o colaboradores.
3.Usa lenguaje corporal positivo
Muy importante. No es lo mismo hablar con alguien que está físicamente interesado en la conversación que hablar con alguien que no. Utilizar un lenguaje corporal positivo, como el contacto visual “equilibrado”, una buena postura, centrarse en la conversación puede ser muy productivo para ambos.
2.Comparte tus ideas, hablando en público
Una de las formas más comunes que los desarrolladores de software usan para expresar o compartir sus ideas es hablando en público. Hablar en público no significa necesariamente hacerlo en un congreso o conferencia, puede ser simplemente en la presentación de algún producto que tu equipo haya desarrollado, y tengas que hacerlo con diferentes personas al mismo tiempo.
Esto es interesante, pues si avanzas en tu carrera tendrás más oportunidades o posibilidades de hablar en público y a veces tu público no tendrá conocimientos técnicos, otras veces tendrás público con mucho conocimiento técnico. Mi recomendación es que independientemente de las dos, no dejes de practicar mucho antes de la presentación.
3.Cuida tu tono en la escritura
Creo que los mensajes escritos están muy bien y han ocupado su lugar en nuestra era digital. Es muy fácil enviar un email o mensaje por slack o basecamp, pero con esta facilidad también viene una gran responsabilidad.
Aunque no queramos hacer daño, lo que escribes puede causar un impacto negativo en la otra persona - cliente, colaborador -, o crear conflictos si el tono en la escritura no es cuidado. Es casi imposible saber cómo está emocionalmente el otro en el momento que va a leer tu mensaje, y si el tono no está cuidado puede causar problemas, sobretodo porque el otro tampoco sabe cómo estás tú emocionalmente. Por eso es importante empatizar con los demás.
4.Empatiza con los demás
La empatía es ponerse en el lugar de otra persona e intentar entender lo que piensa y lo que siente. Como desarrollador debes tener empatía porque estás desarrollado productos con personas y para personas. Por un lado es importante que sepas comunicar entendiendo el rol de cada colaborador - otros desarrolladores, diseñadores, directores -, y por otro entender las necesidades de las personas que utilizarán tu producto para que este producto sea bueno para ellas.
Empatizar con los demás te permite entenderlos y comunicar de forma más efectiva. Por eso, en tu equipo es importante, por ejemplo, conocer las motivaciones, pasiones, procedencia de las demás personas - no todos los técnicos conocen todos los acrónimos que usas internamente y todos los no-técnicos necesitan contexto para entender términos y conceptos técnicos - para que puedas adaptar tu forma de comunicar si es necesario.
Te dejo un ejercicio básico: Repasa tus últimos emails enviados e imagina por minutos que lo que dices a alguien, alguien te lo dice a ti. ¿Qué tal? Si crees que hace falta llamar a alguien, ¡hazlo ahora!
5.Practícalo
“La practica hace al maestro”, ya decía el refrán. De la misma forma que debes practicar tu puesta en escena públicamente, también debes practicar las demás habilidades de comunicación en entornos controlados - en casa, solo, con alguien de confianza-, o incluso con alguien que no conoces, y no hay ningún problema en fallar una u otra vez. Lo importante es mejorar, practicándolo es la fórmula, pues “nosotros somos lo que hacemos repetidamente”.
Conclusión
Para concluir, creo que las habilidades de comunicación deben ser tan o más importantes que las habilidades técnicas, ya que desde mi punto de vista, y hablo por experiencia, muchos de los problemas en los equipos de desarrollo de software tienen origen sobretodo en problemas de comunicación, más que en problemas técnicos.
Si eres desarrollador de software, o eres responsable por un equipo de desarrollo de software, te animo a mejorar o invertir en esta área practicando los puntos comentados en este artículo. Hay muchas más habilidades, pero estas te ayudarán a establecer una buena base para que comuniques de forma efectiva con otras personas.
¡Es posible y los resultados pueden tremendos, ya que permiten que proyectos avancen y organizaciones avancen!
¿Qué otras formas conoces para que los desarrolladores puedan mejorar sus habilidades de comunicación? ¡Coméntalo abajo!
Foto: Anastasia Gepp from Pixabay
Fuentes: