La tecnología ha protagonizado una de las última revoluciones de la historia. No sólo ha cambiado nuestras vídas, sino que ha supuesto la creación de cientos de nuevas profesiones dedicadas al desarrollo de estas nuevas tecnologías.

La programación es una de las profesiones más demandadas de los últimos años. Estos profesionales son los responsables de dar vida a los millones de páginas web, aplicaciones para móviles, programas de ordenador, de ciberseguridad o videojuegos con los que luego disfrutamos los usuarios. Pero, ¿qué se necesita para conseguir trabajo como programador?

Es una profesión en la que la creatividad, paciencia y dedicación son primordiales, pero los conocimientos son lo primero que exigen las empresas para dar una oportunidad a un candidato. Estar siempre en constante aprendizaje de los lenguajes de programación y nuevas tecnologías es una práctica que define a los mejores programadores. Pero vamos paso a paso, ¿qué es lo que debes saber para adentrarte en este mundo.

Objetivos: ¿qué tipo de programador quieres ser?

Como en casi todas las profesiones existen distintos sectores en los que podemos centrar nuestra experiencia. Decir que quieres ser médico quedarse algo corto, según vayas adquiriendo conocimientos tendrás que especializarte en alguna rama de la medicina, no es lo mismo ser pediatra que cirujano. Lo mismo pasa con el mundo de la programación, estas son algunas de las especialidades más populares a las que puedes dirigir tu carrera:

  • Desarrollador de páginas web: Pueden ser desarrolladores front-end, los responsables de escribir el código que determina el aspecto de un sitio web y cómo se estructura su contenido; y los desarrolladores back-end, es decir, los que escriben las aplicaciones web y otros programas que proporcionan el marco para que el sitio web se ejecute.
  • Programador de software: toman un diseño o un concepto que alguien más ha ideado y escriben el código para convertirlo en realidad.
  • Científico de datos: Recogen grandes cantidades de datos, los organizan y los analizan. Si te gustan las estadísticas este podría ser un ámbito y necesitarás la programación para trabajar más rápido.
  • Desarrollador de aplicaciones móviles: Es un gran mercado en auge junto al Big Data, además es uno de los sectores en los que es más común trabajar por cuenta ajena.

Aunque siempre es recomendable apostar por aquel mercado o profesión que más nos apasione, pues de esta manera trabajar será menos costoso, también es importante tener en cuenta cuáles son los trabajos más demandados.

La Fundación Telefónica realizó el año pasado un estudio con las ofertas de empleo publicadas en España en InfoJobs y Tecnoempleo, así como las regiones donde se solicitaban. En él se indica que los especialistas en ciberseguridad, analistas de datos o de Business Intelligence no son perfiles demasiado demandados, como tampoco son los científicos de datos.

También indican en este estudio los lenguajes de programación solicitados por las compañías y de los que hablaremos más adelante.

Formación: mil y un cursos que puedes hacer

Una vez decidida la rama en la se quiere uno enfocar, el siguiente paso es estudiar y formarse desde lo más básico hasta la parte más compleja y específica de ese campo. Si resulta muy complicado decidir una especialización, no es problema, según se va conociendo más sobre el mundo de la programación más fácil resulta detectar aquellos aspectos o materias que nos son más interesantes y atrayentes.

Los programadores tienen a adquirir un gran porcentaje de sus conocimientos de forma autodidacta. Sin embargo, para las empresas los títulos son una forma directa y rápida de confirmar que conocemos la labor para la que nos están contratando.

Tener un título en Ingeniería Informática o Telecomunicaciones puede ser un buen comienzo. También existen otro cursos de formación como los llamados bootcamps, cursos intensivos donde se adquieren conocimientos de desarrollador digital en poco tiempo y por menos dinero del que nos costaría la matrícula durante cuatro o cinco años de universidad. Eso sí, no todas las empresas van a valorar lo mismo un título universitario que de otro tipo.

10 juegos para aprender a programar online gratis

Al final lo que importa de verdad, no sólo para decorar el CV, son los conocimientos que sepas demostrar. Para ello, puedes encontrar inspiración en las ofertas de trabajo que hay publicadas en internet. En ellas las empresas resumen los conocimientos que busca en sus empleados y así es más sencillo hacerse una idea de aquello que aún no dominamos o los campos que nos faltan por tocar.

Podemos buscar en redes sociales de búsqueda de empleo como LinkedIn o InfoJobs, como la que te mostramos arriba. Otra fuente de inspiración es Google, una de las grandes empresas para trabajar y que desvela en esta página web la innumerable lista de conocimientos que exige a sus ingenieros.

Puede abrumar al principio, pero es una lista muy completa que si se completa en su mayor parte nos asegura una mayor oportunidad de conseguir las mejores ofertas de trabajo.

  • Curso de Introducción a la Ciencia de la Computación. Por ejemplo, éste que ofrece Udacity
  • Saber programar en al menos uno de estos lenguajes orientados a objetos: C++, Java o Python
  • Aprender otros lenguajes de programación: JavaScript, CSS y HTML, Ruby, PHP, C, Perl, Shell script, Lisp, Scheme
  • Testear tu propio código: saber encontrar bugs, crear test de prueba, y ponerlo al límite hasta romperlo
  • Desarrollar el pensamiento lógico con el aprendizaje de matemáticas discretas
  • Desarrollar conocimientos de algoritmos y estructuras de datos
  • Conocimientos avanzados de sistemas operativos
  • Conocimientos de Diseño UX (Diseño de Experiencia de Usuario)
  • Conocimientos de Inteligencia Artificial
  • Aprender a construir compiladores de programas
  • Conocimientos de criptografía
  • Conocimientos de programación paralela
  • Trabajar en proyectos prácticos: diseñar y mantener una web, construir un servidor o un robot
  • Leer y entender el código escrito por otras personas, mediante debug
  • Trabajar en proyectos conjuntos con otros programadores
  • Practicar tus conocimientos de algoritmos y código en competiciones como CodeJam o ACM IC PC
  • Convertirte en asistente académico: ayudar a otros estudiantes a aprender programación
  • Acumular experiencia en cursos de verano