voidR escribió:Pero bueno yo creo que estoy a tiempo de arreglarlo, tengo unos 5 meses antes de empezar las prácticas. Pongamos que quiero especializarme en backend, ¿qué debería aprender?
Te están dando muy buenos consejos la verdad. Opino igual que los compañeros. Yo estuve 3 años y medio como "Full Stack", aunque era más de backend la verdad.
El problema es el principio, donde no sabes nada, no sabes cómo se trabaja en una empresa, qué tienes que hacer en el día a día, cómo es eso de programar con compañeros, etc... Cuando lleves un mes irá todo rodado, ya lo verás

Si quieres coger conocimientos de backend, un consejo que siempre funciona es que te metas en infojobs/linkedin/tecnoempleo y mires cómo va el mercado. Pones "Programador", "Desarrollador" o sinónimos en el buscador y ves de lo que hay más oferta.
Actualmente de lo que más hay es de Java, y a mi me siguen llamando día sí y día no para nuevas ofertas de empleo, porque hay muchísimos puestos de Java con Spring y no los pueden cubrir.
Como primer empleo yo haría caso de los compañeros, hablaría con RRHH en Indra, Everis, Accenture o alguna cárnica de ese estilo (es entrar en la web, buscar el correo y explicarles tu situación). Estarás un poco jodido con las condiciones, pero aprenderás muchísimo, y cuando te sientas preparado das el salto a una empresa mejor.
Yo ese salto lo hice por medio de una consultora de recursos humanos. Son empresas que se dedican a buscar perfiles y enchufarlos en distintas empresas. Al tener un perfil de Java con un año ya era algo goloso para ellos, así que yo hablaba con el recruiter de esta empresa y le decía lo que iba buscando (Cliente final, etc...). Él se encargaba de buscarme ofertas de ese estilo, prepararme para la entrevista, pelearme el salario...
Como conocimientos, imaginando que partes de muy pocos conocimientos, yo aprendería:
- Git, es clave. Lo bueno es que da igual en qué lenguaje te toque programar, Git lo usarás sea cual sea, incluso para frontend. Si aprendes Git y en la empresa a la que vayas resulta que usan SVN, lo harás con la gorra, puesto que es mucho más sencillo.
Yo hice un curso de Git en Udemy con SourceTree que fue una castaña, no te lo recomiendo, pero el otro que hay relacionado con GitHub parece que es muy muy bueno. Si no, siempre puedes tirar de tutoriales gratuitos.
A partir de aquí, ya depende de la tecnología que quieras ver. Existen muchos lenguajes, Python, C#... Yo te voy a comentar en el que empecé yo y en el que sé que todavía hay mucho movimiento.
- Java se pide mucho, yo te recomendaría hacer un curso básico. Seguramente en el ciclo ya habréis dado Java, por lo que este paso te lo puedes medio saltar. Nunca está de más seguir mirando cosas, se puede seguir aprendiendo mucho. Un punto a favor de esto es que te sirve para programar en Android, que es un plus.
- Hoy día se sigue usando mucho el framework Spring. Al principio aprenderlo es una bestialidad, parece muy complicado, pero luego no lo es tanto.
En los cursos de Spring normalmente se dan pinceladas de Maven, Hibernate, y te enseñarán a manejar algún IDE como Eclipse o Intellij.
Por ejemplo, acabo de hacer una búsqueda en infojobs, y está esta oferta:
Dejando de lado que piden dos años de experiencia, las tecnologías que te he comentado no distan mucho de lo que se pide.
Java es Java, si le ponen el subtítulo "8" es porque seguramente quieren que sepas algo de Lambdas y eso.
Spring Boot, Spring Security y Spring Batch se aprenden en cualquier curso moderno de Spring, y no son nada complicados. Una vez entiendes la base de Spring, aprender los distintos módulos es bastante sencillo (aprenderlos, que no dominarlos).
JPA es cómo trata Java los datos de una base de datos, transformándolos a objetos, etc... Normalmente lo verás también en cualquier curso de Spring, en el módulo de Spring Data.
Jira es cómo se gestionan las tareas en un proyecto real, no es nada complicado esto vaya.
Jenkins se pide ahora mucho junto con Git, ya que ayuda mucho a automatizar tareas. Es algo que seguramente veas mejor en el trabajo.
Si buscas otro tipo de frameworks (como .NET) no te puedo ayudar tanto porque los controlo mucho menos. Si tienes cualquier duda y no quieres que te ensucie el hilo, como siempre digo, me puedes escribir por MP y estaré encantado de echarte una mano (ya sea para ayudarte con el CV, buscar cursos, o lo que necesites).
¡Un saludo compañero!