Actualmente el perfil de "programador experto" es uno de los más demandados y a las empresas no siempre les resulta fácil cubrir estas vacantes.
Los cambios que se producen continuamente en la tecnología, hacen que tanto a principiantes como a veteranos les cueste mantener el dominio de una tecnología y al mismo tiempo progresar en su carrera profesional. Son muchas las personas que optan por aprender la tecnología o el lenguaje que en ese momento esté de moda para poder añadir otra "muesca" en su perfil de LinkedIn. Así nos encontramos con perfiles de 4 años de experiencia donde dicen dominar 4 lenguajes diferentes, 3 frameworks y 2 plataformas... produciendo un efecto contrario al deseado en el reclutador.
Para evitar este tipo de situaciones, aquí encontrarás 10 consejos para convertirte en un gran programador que te ayudarán a mejorar tus oportunidades de carrera.
1. Practica, practica y practica
Fotografía por Jessica Cross bajo la licencia CC BY 2.0
No hay excusas, no puedes ir a una entrevista de trabajo y decir que lo que más te gusta en el mundo es programar y sin embargo al mismo decir que ¡nunca has hecho nada relevante en programación! Invéntate tus propias aplicaciones, empieza mirando lo que hacen los demás, pero practica, practica y practica. Como indicaba Malcolm Gladwell en su libro titulado “Outliers. (Fueras de Serie, en castellano)”, para alcanzar la excelencia, se debe tener una acumulación de 10.000 horas de práctica.
Si estás empezando debes dedicarle muchas horas para mejorar tus habilidades de programación. No se trata sólo de aprender a usar algo y saber cómo funciona. Hay que profundizar más. Debes averiguar cómo y por qué se hace así. Comprender bien las cosas. Si te limitas a aprender cómo se usa, el día que te encuentres un problema complejo no sabrás resolverlo, pues te faltarán los conocimientos de base. Por eso nuestros cursos nunca dan simples recetas, sino que persiguen que de verdad comprendas lo que estudias, aunque sea más duro.
Puede utilizar GitHub para compartir públicamente los proyectos o ejercicios en los que estás trabajando (procura que sean útiles para los demás) y hacer que otros desarrolladores de la comunidad revisen tu código y te proporcionen comentarios sobre dónde puedes mejorar o cómo puedes abordar las cosas de manera diferente.
2. No te cases con nadie
Todas las personas que programan por alguna extraña razón tienen un lenguaje favorito, con el que se sienten más cómodos trabajando. Sin embargo esto no quiere decir que deben estar con él “hasta que la muerte los separe”. De hecho, tal y como hemos comentado al inicio del artículo, la tecnología está en constante evolución, y se desarrollan nuevos lenguajes y plataformas constantemente. El lenguaje o la plataforma no deja de ser una herramienta más dentro de este trabajo, y como tal, es importante conocer y dominar de verdad más de uno, empleando el más adecuado en cada momento.
Con esto no estamos diciendo que debas conocer de forma exhaustiva tropecientos, pero solo uno es un poco limitante, ¿no crees?
3. Especialízate
Seguimos insistiendo en lo rápidos y profundos cambios que se producen en la tecnología. Es evidente que resulta imposible seguirles la pista a todos ellos, por eso te recomendamos que escojas un “pequeño” campo en el que centrarte: desarrollador front-end, desarrollador back-end (a estas alturas todos sabemos que el desarrollador full-stack "de verdad" es una quimera), de aplicaciones móviles, experto en administrador de bases de datos,…
Si estás buscando trabajo, un buen reclutador valorará más a un candidato experto en X que además es honesto al reconocer que desconoce Y, que a otro candidato que afirma conocer X, Y, Z, y no sé qué más pero no realmente no domina ninguno.
4. Tómate en serio la revisión de código
Revisar el código no es sólo una forma efectiva de detectar errores, sino que también es una gran manera de generar discusión y compartir conocimientos entre los miembros de un equipo.
A la hora de revisar el código puedes encontrarte en dos situaciones:
- Recibes la crítica: en este caso debes tener una actitud receptiva, no debes tomártelo como una crítica negativa de tu trabajo. Debes aprovechar la experiencia del equipo del que formas parte para mejorar.
- Revisas el código: hazlo de manera constructiva, como a ti te hubiera gustado que te lo dijeran. Aprovecha la oportunidad para difundir mejores prácticas, y por qué no, incluso puedes aprender algo nuevo del código que estás revisando.
5. Trabaja en otro proyecto en paralelo
Si tu trabajo te resulta la mayoría de las veces estresante, pensar en abordar otro proyecto en paralelo intimida a cualquiera, de hecho creerás que más que un consejo es una locura. Sin embargo, en contra de lo que pueda parecer, programar algo que realmente te guste es fundamental para tu desarrollo profesional. Cuando llevas a cabo un proyecto con el único objetivo de divertirte y aprender, te sorprende lo que eres capaz de hacer por ti mismo.
No hace falta inventar la rueda, puedes intentar aprender un nuevo lenguaje de programación, hacer una aplicación para pulir tus conocimientos y mejorar tus habilidades a la hora de llevar a cabo un desarrollo, también puedes contribuir un algún proyecto que ya esté en marcha. Por ejemplo en GitHub puedes encontrar cientos de pequeños y grandes proyectos en los que todas las contribuciones son bienvenidas.
6. Aporta tu granito a la comunidad
Únete al grupo de usuarios que tengas más cerca y participa en los eventos que se celebren de forma activa. Al principio, serás “un parásito” que intentará chupar el máximo conocimiento de los que más saben, pero con el tiempo tú también podrás compartir tu experiencia y conocimiento con los demás. ¡Quién sabe si te convertirás en un gurú de la programación!
También hay muchas comunidades online muy activas, las más conocidas son las comunidades de cada tecnología (por ejemplo, Java, React,…) y la comunidad por excelencia, Stack Overflow. Si no conoces Stack Overflow ya estás tardando; y si lo utilizas como la gran mayoría para resolver problemas de tu trabajo, pero no contribuyes, también estás tardando en aportar tu granito de arena.
Otra forma de ayudar a la comunidad es escribir de forma regular en un blog, puede ser en uno propio o puedes hacer contribuciones explicando cosas interesantes en blogs que ya están en funcionamiento.
Todo esto será un catalizador para avanzar tu carrera.
7. Pule tus cualidades no-técnicas
En general las personas que llevan a cabo trabajos técnicos cualificados acaban por descuidar otras cualidades, quizás más personales, que también afectan a su trabajo pero que normalmente no forman parte de las asignaturas impartidas en las escuelas técnicas a las que han asistido. Sin embargo, a la hora de escoger entre dos personas con parecido bagaje técnico lo único que las va a diferenciar son sus cualidades personales.
A medida que creces profesionalmente las habilidades interpersonales que exigidas van cambiando. Así por ejemplo, cuanta mayor sea tu responsabilidad, mejor debe ser tu capacidad de comunicación, valorándose especialmente la habilidad de hacer de puente entre programadores y personal no-técnico dado no hablan el mismo idioma.
8. Aprende el negocio
Tu trabajo técnico será mejor cuánto mejor conozcas el sector para el cual trabajas. Evidentemente no es lo mismo trabajar para el sector de los seguros, que para una empresa logística o para una plataforma de anuncios online.
Si además de los requisitos que debe cumplir tu aplicación conoces por ejemplo: los objetivos a largo plazo de tu empresa (parece una obviedad pero no todo el mundo sabe responder a esta pregunta), quiénes son tus clientes y qué esperan, quién es la competencia y cómo lo hace; esta información te ayudará a dar un nuevo enfoque a tu trabajo y quizás comprendas cómo tus aportaciones impactan directamente sobre los resultados de la empresa.
9. Lee todo lo que caiga en tus manos...
O casi... pues todos sabemos que ciertas lecturas tan sólo matan neuronas, además de nuestros queridos árboles.
En este punto no nos vamos a extender, pues ya hemos dedicado todo un artículo a los libros que todo buen programador debería leer a lo largo de su vida.
10. Persevera, no te rindas
Puedes decirlo como quieras... ”el que algo quiere algo le cuesta...”, “no hay atajo sin trabajo”, “no se pescan truchas a bragas enjutas”, “no se puede hacer el carro sin pisar el barro”... la conclusión es la misma. ¿Necesitas más pistas?