Becas y ayudas disponibles
Rock{TheCode}
Programa de Desarrollo Full Stack
Conviértete en un Desarrollador Full Stack en 6 meses con el programa más completo del mercado.
3.499€
1 mes de garantía
Algunas de las empresas que confían en nosotros prefieren contratar a los programadores mejor preparados.






Aprende con el único método
que te permite seguir con tu vida




CLASES DE PRUEBA DISPONIBLES
Si te lo explican bien, aprender a programar es más fácil de lo que crees

Sin riesgos
Toma una decisión segura
PASO 1
Descubre si es para ti
Accede a nuestras clases de prueba para todos los niveles de conocimiento para que descubras si esto es lo que estás buscando.

PASO 2
Entrevista personal
Nuestros asesores resolverán todas tus dudas y te ayudarán a saber si este programa es perfecto para ti.


PASO 3
Elige como pagar
No queremos que el dinero sea un problema. Por eso ponemos a tu elección diferentes formas de pago.

PASO 4
Empieza el prework hoy mismo
El prework es un “curso cero” de preparación* que empiezas cuando quieras y que te permite validar si este programa encaja con tu ritmo de vida.
Si no te convence, te devolvemos el dinero.

*Si no cuentas con conocimientos previos, el prework te va a ayudar a que arranques el programa muchísimo mejor preparado!
El programa más
completo del mercado


Una de las preguntas que más nos hacéis es si el programa te prepara de verdad para encontrar trabajo. Y la respuesta es… SÍ.
Hemos creado un programa en base a las empresas demandan. Y por eso, con el objetivo de que salgas mejor preparado que nadie para superar las pruebas técnicas de selección, hemos creado un programa que te permite profundizar mucho más en las tecnologías para adquirir conocimientos de nivel Senior.
Conviertete en un Desarrollador Full Stack en 6 meses con el programas más completo del mercado
La mayoría de los bootcamps se quedan cortos. Por eso hemos creado un programa más profundo, que te permite adquirir más skills y tecnologías, y mejor adaptado a los requerimientos de los CTOS y de las Pruebas técnicas de los procesos de selección.
Hemos dividido el programa en 4 bloques: Prework, Desarrollo Full Stack, Perfil y Desarrollo profesional, y Contenido avanzado (para alumnos que quieren profundizar todavía más en las tecnologías)
💼 Bloque 1 : PREWORK
HTML
Estructuración de una web adecuada según las prácticas idóneas y elementos semánticamente correctos.
Objetivos del alumno
> Aprendizaje de las bases de HTML que habilitan la estructuración de webs
✅ Utilización de elementos semánticos para crear bloques de información.
✅ Utilización de los elementos de texto adecuados según el contenido a expresar.
✅ Utilización de enlaces para linkar webs y otros HTML con mi página.
✅ Creación de formularios con validación HTML para simular la recogida de información.
✅Creación de tablas para mostrar información estructurada.
CSS
Maquetación de una web con posicionamiento de elementos, realización de estilos necesarios para la creación de interfaces modernas y responsive.
Objetivos del alumno
> Aprendizaje de las bases de CSS que habilitan la maquetación de webs
✅ Utilización de selectores de CSS para aplicar estilos a elementos a través de clases e ids.
✅ Diferenciación entre píxeles y otros tipos de unidades de medida en CSS.
✅ Uso de colores y fuentes para maquetar mi texto de forma adecuada.
✅ Posicionamiento de los elementos web adecuados usando el modelo de cajas.
✅ Creación de variables de CSS para compartir colores, dimensiones…
✅ Utilización de media queries para la creación de una web responsive y adaptada a móvil y escritorio.
✅ Posicionamiento de elementos y estructuración del layout de mi web con Flex.
JavaScript Fundamentals
Programación con los conceptos básicos usando JavaScript. Condicionales, bucles, control de constantes y variables, manejo de arrays y objetos, uso de promesas.
Objetivos del alumno
> Utilización de JavaScript y bases fundamentales de programación
✅ Creación de variables de distintos tipos para almacenar datos.
✅ Manejo de los strings para almacenar texto y trabajar con algunos ✅ métodos de estos.
✅ Manejo de los numbers para almacenar números y trabajar con algunos métodos de estos.
✅ Manejo de los booleans para almacenar valores condicionales y trabajar con algunos métodos de estos.
✅ Utilización de condicionales if…else para dividir el flujo del código en distintos caminos según las necesidades d éste.
✅ Utilización de condicionales switch para alternar comportamientos entre distintos casos en mi código.
✅ Utilización de bucles for para iterar un valor entre un mínimo y un máximo.
✅ Utilización de bucles while para iterar un valor entre n veces hasta cumplir una condición límite. (Inclusive do…while).
✅ Creación funciones que almacenan lógica para reutilizar en otros lugares del código o en otro momento, evitando repetir código.
✅ Creación de variables utilizando let y const para la adaptación a JavaScript moderno.
✅ Utilización de arrays para almacenar colecciones de información e iterarlas.
✅ Utilización de objetos para la creación de variables complejas a modo de diccionario de información.
✅ Entendimiento de que las promesas son código asíncrono ejecutado de forma distinta al hilo principal.
JavaScript DOM
Interacción, inyección, modificación y borrado de elementos del navegador usando eventos de JavaScript. Aplicación template literals para simular componentes con estilo aproximado a React.
Objetivos del alumno
✅ Selección de elementos HTML con el código de JavaScript.
✅ Añadir eventos a elementos para que reaccionen a acciones del usuario.
✅Añadir eventos al elemento window para que reaccionen a acciones del usuario con el navegador.
✅ Creación de nuevos tags y añadidura dentro de otros con JavaScript.
✅ Añadir elementos complejos dentro de otro utilizando los tag templates.
✅ Creación de código que se ejecuta por medio de intervalos de tiempo a través de setTimeout y setInterval.
✅ Traer información de una API por medio del método fetch que existe en el navegador.
💼 Bloque 3 : Desarrollo profesional
Desarrollo Profesional
Orientación al alumno para que sea capaz de definir un perfil de desarrollador adecuado en las plataformas más conocidas para buscar proyectos. Pautas para la gestión de proyectos, división de responsabilidades, valoración del trabajo y precios, así como que tecnologías deben añadir a su mapa de aprendizaje para facilitar su evolución como desarrollador freelance con una explicación del por qué de cada una de ellas.
Objetivos del alumno
✅ Ser capaz de definir un perfil de desarrollador en GitHub y LinkedIn adecuado a buscar proyectos.
✅ Identificar herramientas de búsqueda de proyectos y valoración de precios y tiempo.
✅ Organizar los objetivos de un proyecto creando un dashboard y aplicando agile.
✅ Conocer herramientas que aprender para mejorar el alcance como freelance developer.
🚀 Bloque 4 : Contenido avanzado
Angular
Objetivos del alumno
✅ Comprender el patrón de diseño MVC y su implementación en Angular.
✅ Creación de componentes personalizados.
✅ Implementación de servicios y directivas personalizadas en Angular.
✅ Uso de enrutamiento para crear SPA.
✅ Aplicación de pruebas unitarias y de integración.
✅ Creación de aplicaciones con Angular Material.
✅ Creación de animaciones con Angular.
✅ Integración con APIs mediante HttpClient.
✅ Creación de aplicaciones con Angular Universal.
✅ Creación de aplicaciones con Angular en modo PWA.
VUE
Objetivos del alumno
✅ Comprender el funcionamiento de la librería.
✅ Crear componentes y uso de los mismos.
✅ Manejo de Props y JSX. Uso de UseState y UseEffect para crear aplicaciones.
✅ Navegación – Vue Router: SPA.
✅ Utilización de Vuex para manejar el estado de la aplicación.
✅ Creación de aplicaciones con Vue Material.
✅ Creación de animaciones con Vue.
✅ Integración con APIs mediante Axios.
✅ Creación de aplicaciones con Vue en modo PWA.
Flutter
Objetivos del alumno
✅ Comprender los fundamentos de Dart, el lenguaje de programación utilizado para codificar aplicaciones de Flutter.
✅ Familiarizarse con los widgets y las herramientas de diseño de Flutter.
✅ Crear una aplicación básica en Flutter.
✅ Aprender a utilizar los servicios y las API de Firebase en una aplicación de Flutter.
✅ Utilizar la cámara y las herramientas de geolocalización de un dispositivo en una aplicación de Flutter.
✅ Utilizar la biblioteca de notificaciones de Flutter para enviar y recibir notificaciones push.
✅ Desarrollar una aplicación completa en Flutter con múltiples pantallas y una interfaz de usuario atractiva.
Ionic
Objetivos del alumno
✅ Creación de aplicaciones móviles multiplataforma con Ionic.
✅ Conocimiento de los componentes nativos y personalizados de Ionic.
✅ Creación de aplicaciones con base de datos utilizando Firebase.
✅ Uso de plugins y características avanzadas de Ionic.
✅ Integración con APIs mediante HttpClient y otras herramientas de Ionic.
✅ Implementación de autenticación y autorización en aplicaciones de Ionic.
✅ Despliegue de aplicaciones de Ionic en dispositivos móviles y en la nube
React Native
Objetivos del alumno
✅ Comprender la estructura y sintaxis de React Native.
✅ Crear componentes y uso de los mismos.
✅ Manejo de Props y JSX. Uso de UseState y UseEffect para crear aplicaciones.
✅ Navegación – React Navigation: SPA.
✅ Integración con APIs mediante Axios.
✅ Creación de aplicaciones con base de datos utilizando Firebase.
✅ Utilización de Redux para manejar el estado de la aplicación.
✅ Creación de animaciones con React Native.
✅ Desarrollar una aplicación completa en React Native con múltiples pantallas y una interfaz de usuario atractiva.
Next JS
👨🏽💻 Bloque 2: FullStack Developer
Vite
Objetivos del alumno
✅ Creación de un proyecto nuevo de HTML, CSS y JavaScript con Vite.
✅ Utilización del servidor de desarrollo para trabajar más rápido y de manera más eficiente.
✅ Realización de una build de mi proyecto para crear una versión de producción.
✅ Subir el proyecto a Netlify para el despliegue en una web pública.
JavaScript Avanzado
Objetivos del alumno
✅ Uso de ternarios en vez de condicionales sencillos. Dominio de métodos de arrays.
✅ Optional chaning para acceder a propiedades y objetos cuando algún valor puede ser null o undefined.
✅ Utilización de null coalescing como alternativa a para filtrar únicamente.
✅ Aplicación de métodos Math para cálculos con números y decimales.
✅ Conocimiento de los métodos avanzados de los strings para el manejo de todo tipo de casos con texto.
✅ Trabajo con objetos de forma avanzada, creando arrays a través de sus claves y valores.
✅ Utilización del spread y rest operator en objetos.
✅ Utilización de el spread y rest operator en arrays.
✅ Trabajo con promesas por medio de async/await para hacer mi código más legible.
✅ Concepto Clousures y Hoisting. Qué son los prototypes. Axios.
✅ Local Storage & Session Storage como objetos de almacenaje web localStorage y sessionStorage permiten guardar pares de clave/valor en el navegador.
✅ Concepto de Cookies.
✅ Cross Origin (origen cruzado) es la palabra que se utiliza para denominar el tipo de peticiones que se realizan a un dominio diferente del dominio de origen desde donde se realiza la petición.
Javascript DOM Avanzado
Objetivos del alumno
✅ Manejo de componentes a alto nivel. Creación de aplicaciones bajo SPA.
✅ Reutilización de componentes nativos entre aplicaciones.
✅ Carga de recursos.
✅ Intersection observer.
Javascript Asincrono
Objetivos del alumno
✅ Manejo de Javascript asíncrono con fluidez y aplicaciones asincronas.
✅ Métodos para manejar la asincronia avanzados.
Typescript
Objetivos del alumno
✅ Anotaciones.
✅ Interfaces & Types.
✅ Functions.
✅ Genéricos y Casteo de Tipos.
✅ Tipado de objetos y Objetos globales.
Devtools
Objetivos del alumno
✅ Utilizar las herramientas de inspección de elementos para identificar problemas de diseño y código.
✅ Depurar código JavaScript utilizando la consola devtools.
✅ Mejorar el rendimiento de la página utilizando las herramientas de análisis de carga y rendimiento.
✅ Utilizar la herramienta de auditoría de seguridad para asegurar que la página es segura para el usuario.
VsCode
Objetivos del alumno
✅ Manejo eficiente del editor de código.
✅ Uso efectivo de los atajos de teclado y funcionalidades de VSCode.
✅ Personalización de la interfaz y configuración de extensiones.
✅ Dominio de la administración de archivos y proyectos.
✅ Implementación de snippets para aumentar la productividad.
GIT
Objetivos del alumno
✅ Conocimiento avanzado de Git y la línea de comandos de Git.
✅ Dominio de las buenas prácticas de Git Flow para trabajar en equipo y colaborar en proyectos.
✅ Utilización efectiva de las ramas de Git para gestionar y organizar el flujo de trabajo del proyecto.
✅ Comprender el proceso de merge y de rebase para integrar cambios entre ramas.
✅ Conocimiento de herramientas de Git como GitHub, GitLab, Bitbucket, entre otros, para trabajar en proyectos de software en equipo.
React Basics e Intermediate
Objetivos del alumno
✅ Entender el funcionamiento de la librería.
✅ Crear componentes y uso de los mismos.
✅ Manejo de Props y JSX.
✅ Uso de UseState y UseEffect para crear aplicaciones.
✅ Navegación – React Router: SPA
✅ Utilización de React Hook Form para crear formularios dinámicos y optimizados en React.
✅ Librerías de Styled.
✅ Utilización custom hooks cuando necesito abstraer lógica repetitiva en mis componentes de React o quiero crear utilidades que funcionen con el ciclo de vida de los componentes.
✅ Utilización de React.memo para memoizar componentes y evitar renders excesivos.
✅ Mejora de la performance.
✅ Uso de UseMemo y UseCallback.
React with Typescript
Objetivos del alumno
✅ Navegación – React Router: SPA
✅ Utilización de React Hook Form para crear formularios dinámicos y optimizados en React.
✅ Librerías de Styled.
✅ Utilización custom hooks cuando necesito abstraer lógica repetitiva en mis componentes de React o quiero crear utilidades que funcionen con el ciclo de vida de los componentes.
✅ Utilización de React.memo para memoizar componentes y evitar renders excesivos.
✅ Mejora de la performance.
✅ Uso de UseMemo y UseCallback.
Node
Objetivos del alumno
✅ Lectura de archivos y ficheros utilizando la librería FS.
✅ Escritura de archivos y ficheros utilizando la librería FS Lectura de un archivo JSON y convertir su contenido en CSV.
MongoDB
Objetivos del alumno
✅ Creación de colecciones y elementos a través de objetos en JavaScript.
✅ Lectura de documentos de una colección de MongoDB con los distintos métodos de mongoose.
✅ Borrado de documentos de las colecciones de forma general y específica.
✅ Actualización de elementos de las colecciones de forma general y específica.
✅ Relacionar elementos entre sí a través del campo _id de MongoDB
✅ Creación de una Seed de datos para poder reiniciar mi base de datos de desarrollo siempre que lo necesite.
API Rest
Objetivos del alumno
✅ Diferenciación entre los métodos de las APIs GET, POST, PUT y DELETE.
✅ Conocimiento del uso de callbacks y entendimiento de su función.
✅ Preparación de una carpeta de proyecto para el lanzamiento de un servidor de Express.
✅ Creación de un router en Express para la recogida de peticiones de un cliente a mi servidor.
✅ Conocimiento de los códigos de estatus de una petición HTTP. (200, 201, 404…)
✅ Utilización los parámetros de Query (query params) para el envío de información adicional a una petición de tipo GET.
✅ Utilización los parámetros de URL (url params) para la creación de subrutas y el envío de información adicional a la petición.
✅ Utilización de ThunderClient para hacer peticiones a mi servidor simulando un cliente.
✅ Lanzamiento de peticiones de tipo POST a mi servidor y envío de un Body para guardar información en una base de datos.
✅ Lanzamiento de peticiones de tipo PUT a mi servidor y envío de un Body para editar información de una base de datos.
✅ Lanzamiento de peticiones de tipo DELETE a mi servidor y envío de un Body para eliminar información de una base de datos.
✅ Configuración de los middlewares necesarios para controlar rutas no encontradas y errores generales de mi servidor.
✅ Conectar servidores a una base de datos de cualquier tipo y uso con ésta.
✅ Creación de un sistema de autenticación por medio de JSON Web Tokens.
✅ Creación de sistemas de registro y autenticación de usuarios en mis servidores y bases de datos.
✅ Configuración de las variables de entorno de mi servidor para cargar información secreta que no quiero subir a Github o hacer pública.
✅ Habilitación de la subida de imágenes a mi servidor utilizando rutas específicas para ello.
✅ Conocimiento de buenas prácticas y arquitecturas para que el servidor de Express esté bien configurado y sea mantenible.
Web Scrapping
Objetivos del alumno
✅ Utilización de selectores avanzados para buscar elementos dentro del árbol del DOM.
✅ Instalación puppeteer en mis proyectos de Node para abrir una instancia de Chromium y navegar de forma automatizada.
✅ Navegación hasta una página de forma automatizada y lanzar eventos mediante puppeteer.
✅ Recogida de información del HTML de una web con puppeteer y la utilizo en mi código de Node.
✅ Guardado de la información estructurada en mi propia base de datos.
Auth JTWT
CI | CD
Objetivos del alumno
> Netlify
✅ Uso de Netlify para desplegar mis proyectos en JavaScript.
✅ Uso de Netlify para desplegar mis proyectos en React.
> Vercel
✅ Uso de Vercel para desplegar mis proyectos en Next.
> Mongo Atlas
✅ Uso de Mongo Atlas para desplegar mis bases de datos MongoDB.
> Fly
✅ Uso de Fly para desplegar mis bases de datos PostgreSQL.
✅ Uso de Fly para desplegar mis servidores en Express.
> Render
✅ Uso de Render para desplegar mis servidores en Express.
> Github Action
✅ Uso de una Github Action para automatizar el despliegue de una API en Express en Fly.
✅ Uso de una Github Action para automatizar el testing de mis Pull Request.
✅ Creación de una Github Action que despliega el código únicamente cuando han pasado los tests y se ha hecho una build de mi proyecto con éxito.
por qué han elegido nuestros programa y
cómo les ha cambiado la vida.
“Es el programa más completo que he visto. Y eso que yo había hecho un bootcamp”
Juan José Molina,
Nuclear Engineering Manager en Iberdrola
“Es el único programa que me permite seguir trabajando”
Natalia Danobeitia,
Marketing and Communications Director en 20minutos
“No solo es el programa más completo, también es el que mejor precio tiene”
María Hurtado,
Sales Representative en L’Oréal
desarrolladores en activo
Desarrollador Full Stack y…

…accede a algunas de las siguientes profesiones
Maquetador y diseñador Web

Web analytics









Desarrollador Frontend








