6 cualidades que debe tener todo buen programador

Por Teodoro López
Talent Acquisition Manager de OpenSistemas

En Opensistemas nos importa mucho que un programador haga bien su trabajo, pero además valoramos ciertas cualidades que hacen que un programador destaque por encima del resto, y no todas ellas son conocimiento técnico. Existen ciertas habilidades sociales necesarias para un trabajo como el que se realiza en un entorno como el nuestro. El trabajo en equipo es esencial, y por ello no sólo hay que ser un buen programador, sino también un compañero con el que todos quieran trabajar y que sepa ser funcional.

1. Parsimonia

La parsimonia, es decir, la calma o la ligereza, entendida como contraposición a trabajar por trabajar, es una característica que tiene todo excelente programador. Y es que cierta dosis de parsimonia ayuda a economizar el esfuerzo, centrándose más en buscar la solución más sencilla a los problemas, evitando utilizar la última solución conocida, aunque sea compleja y ocupe más tiempo. Lo conozcas como “la navaja de Ockham” o el “principio KISS” (‘Keep It Simple, Stupid!’), lo cierto es que se trata de un clásico que conviene no olvidar.

2. Resiliencia

No importa lo simple que sea el proyecto en el que estés trabajando, siempre aparecerán dificultades que pondrán a prueba tu paciencia. Pueden ser plazos excesivamente cortos, errores inesperados, fallos del que se desconoce la causa… En estos casos, necesitas ser un programador resiliente. Con esto, nos referimos a anteponerse al estrés y a las emociones negativas y afrontar las dificultades tomando decisiones inteligentes.

3. Pensamiento lógico y planificación

Por suerte, minimizar estos problemas es posible. Aplicando la lógica en su debido momento (antes de comenzar a programar)se reducen la cantidad de errores inesperados, se plantean alternativas y posibles problemas y soluciones que puedan surgir, y además facilita lo hablado en el primer punto, mantener un enfoque sencillo hacia la solución.

4. Enfoque hacia otras personas

Esta tiene trampa y es normal que a muchas personas se les pase. Un buen programador nunca debería obviar el entorno al que pertenece, ya sea con el equipo, el cliente, los jefes de proyecto o las personas a su cargo, lo cierto es que estamos en contacto constante con gran cantidad de personas con las que hemos de trabajar. Mantener esto en mente, documentando para nuestros colegas, comentando el código, aprendiendo a explicar lo que hacemos al personal no técnico y transmitir las limitaciones y las posibilidades de nuestro trabajo de forma clara y concisa es una parte fundamental para distinguir a alguien “que pica código” de un gran profesional.

5. Curiosidad

La tecnología es un sector en constante crecimiento, tan constante que incluso es exponencial, por lo que tanto una aplicación como un currículum pueden quedar obsoletos en cuestión de años, a veces incluso meses. Tu especialidad puede estar tan pronto en la cresta de la ola como condenada al olvido por un concepto mejor o más moderno. Para superar esto necesitamos mantener viva la curiosidad que sentíamos cuando escribimos nuestras primeras líneas de código y todo era nuevo, no hay que trabajar siempre en lo mismo o en lo que nos consideramos expertos. La nuestra es una industria en constante movimiento, tu debes moverte con ella. Un buen programador debe mantenerse actualizado, saber hacia dónde se mueve el mercado y que nunca le pillen ‘con los pantalones bajados’.

6. Pasión

Lo último y lo más importante, es la pasión por el trabajo bien hecho. Sin ella mantener vivo el espíritu y cumplir con los puntos anteriores se convertiría en una labor tediosa y realmente difícil. Para ‘mantener la magia’, es necesario plantearse cada nuevo objetivo como un reto, intentar mejorar cada día, intentar ser más rápido y seguir no sólo las tendencias útiles, sino las que más nos interesan a nivel personal. De este modo, podremos seguir trabajando de forma constante y superar los obstáculos que aparezcan en nuestro camino para que, por mucho que avance la tecnología, nosotros vayamos un paso por delante de ella.

Obviamente quedan muchas cosas en el tintero y podrían escribirse decenas de líneas en torno al tema pero he preferido predicar con el ejemplo y mantener una filosofía KISS.

Y vosotros, ¿qué creéis que es fundamental para ser un buen programador?