Sobre como ser mejor developer
2015-03-21
En abril pasado mi amigo Froilan Irizarry publicó un blog post hablando de sobre como convertirse en un “senior developer” y hace unos días en Facebook me encontré con un post preguntando “¿Cuál ha sido su estrategia para sobresalir en el campo laboral?”
Ambas publicaciones me hicieron pensar en cual es mi respuesta a esta pregunta de sobre como mejorar y sobresalir en la industria de desarrollo de software.
A continuación los factores que considero más importantes para lograr ser un mejor developer y con suerte sobresalir.
Enfocarse en el usuario y su experiencia
Todos mis
proyectos comienzan con dibujos detallados de lo que será la solución final y
de ahí trabajo para determinar cuales son los requisitos técnicos para lograr
la solución. El diseño define los requisitos técnicos. Al cliente no le
importa si usas C#, Haskell, PHP, VBScript o “whatever” para solucionar el
problema. Lo que importa es la solución y en eso hay que enfocarse.
Los “soft skills” son tanto o más importantes que las capacidades
técnicas
Entender el problema que quiere resolver el cliente, poderlo explicar a
otros, poder plantear posibles soluciones, escuchar otros puntos de vista con
respeto y empatía, ponerse en los zapatos de otros y ser tolerante.
Saber de lo que estás hablando
Ningún argumento le gana
a una experiencia del mundo real en un escenario similar.
Hacer muchos proyecto es la mejor forma de tener éxito. Todos los proyectos
tendrán problemas y serán difíciles de completar pero si tienes muchos por lo
menos algunos serán buenos y poco a poco con el tiempo aprenderás a reconocer
y utilizar los patrones que te llevan a lograr proyectos exitosos.
Compartir lo que has aprendido
Para mi la mejor forma de
aprender y aclarar ideas es tratando de compartirlas. Trato de compartir lo
que aprendo con todo el que le interese. Para esto escribo blog posts, hago
presentaciones en “meetups” y conferencias y recientemente rants en Twitter.
“Under promise and over deliver”
Ser conservador en
cuanto a estimados de tiempo y “features”. Luego si el tiempo permite,
sorprender al cliente con una experiencia mejor a la esperada. Este funciona
todas las veces.