El Máster en Full Stack Developer se desarrolla con un esquema de diez módulos, que se corresponderán con las asignaturas, un trabajo final de máster y dos talleres voluntarios.
Bootcamp: Tecnologías para el desarrollo web 2,5 ECTS
Los estudiantes dan inicio al Máster en Full Stack Developer con este bootcamp que les introduce en el Full Stack development, a la vez que les proporciona los conocimientos técnicos necesarios para poder seguir adecuadamente el programa. En este curso, los estudiantes encontrarán recursos materiales que les permitirán profundizar en diferentes temas y realizarán exámenes tipo test que les servirán como guía para la evaluación de sus conocimientos. Concretamente, algunos de los temas que se abordarán son:
Leer más
Instalación de herramientas requeridas.
Gestión de dependencias.
Editores de texto.
Introducción al control de versiones.
Gestores de paquetes.
Introducción a Máquinas Virtuales.
Introducción a Contenedores y Orquestación.
Registro en plataformas Cloud.
Módulo 1 - Introducción a JavaScript/Typescript 2,5 ECTS
Durante este módulo se introducirán, al alumno, los lenguajes que se emplearán a lo largo del Máster: JavaScript y Typescript. Al ser Typescript un superconjunto del primero, se introducirán conceptos con ejemplos en ambos lenguajes y posteriormente características exclusivas de Typescript.
Variables, tipos y built-in methods.
Control de flujo.
Funciones.
Scope.
Interators.
Clases y objetos.
Módulos.
Async/Await. Promesas.
Módulo 2 - Metodología y gestión de proyectos 5 ECTS
En este módulo, los alumnos adquirirán una visión íntegra de las principales metodologías y procesos vinculados a la gestión de proyectos. Así, el alumno verá temas como:
Agile: Scrum y Kanban.
Épicas, User Stories y Criterios de Aceptación.
Sprints.
Revisión de código.
Git y Gitflow.
Buenas prácticas de documentación.
Módulo 3 - Introducción al Desarrollo Front-End 5 ECTS
En este módulo, los alumnos profundizarán en el proceso vinculado al desarrollo web, se hará una introducción acerca del funcionamiento de las webs, la renderización de páginas en los navegadores y el paso de prototipos a maquetado web.
Introducción a UX, UI e IxD.
La estructura web: HTML y el DOM.
El diseño y formato web: CSS.
Funcionalidad de los elementos web: JavaScript.
Interacción entre los lenguajes HTML/ CSS/JavaScript.
Maquetación Web.
Flexbox, CSS Grid.
Diseño para múltiples dispositivos.
Módulo 4 - Front-End Frameworks 5 ECTS
A lo largo de este módulo, los alumnos incidirán en el uso de los frameworks como espacio de trabajo, verán las ventajas que les proporciona el uso de los mismos durante el proceso de desarrollo web, así como conocerán de forma práctica los principales frameworks que imperan en el front end development. Algunos de los temas que se abordarán son:
Definición y beneficios de frameworks para el desarrollo web.
Gestión de paquetes y NPM.
Desarrollo orientado a componentes.
DOM vs Shadow DOM vs Virtual DOM.
React:
Componentes y props.
Hooks.
Contexto y estado..
Networking y navegación.
Módulo 5 - Arquitectura de servidores 5 ECTS
Es imprescindible tener una visión clara de la estructura de un servidor y todos los elementos que lo componen para tener una base sólida en el Desarrollo Full Stack. Es por ello que en este módulo se presentan todos los conceptos asociados a la creación de un servicio en NodeJS como son:
Gestión de paquetes (II).
Arquitectura de servidores.
Patrones asíncronos: Callbacks, Promises y Async/Await.
Event loop/ Event emitter.
Buffer y Streams.
Sistema de ficheros.
Módulos Web.
Introducción a Express.
RESTul API y OpenAPI.
Logs y autenticación.
Módulo 6 - Infraestructuras en la nube 5 ECTS
Cada vez es más normal que un desarrollo software se mueva a la nube, ya que proporciona múltiples ventajas frente a un despliegue tradicional como abstracción de la infraestructura, rápido escalado vertical y horizontal y aprovisionamientos y despliegues automáticos. En esta asignatura el alumno verá información acerca de:
Introducción a IaaS.
Principales servicios que aportan las IaaS:
Máquinas virtuales.
Contenedores y registro de contenedores.
Funciones Cloud.
Control de redes.
Introducción a BaaS.
Módulo 7 - Gestión de bases de datos 5 ECTS
Conocer los diferentes lenguajes de programación y frameworks es esencial para un Back-End Developer, pero también lo es saber gestionar e implementar diferentes bases de datos, ya que cada aplicación, servicio y sitio web requiere de un sistema de persistencia de datos. El objetivo de este módulo es proporcionar, a los/las alumnos/as, los conocimientos necesarios sobre gestión de bases de datos, así como introducirle las principales tecnologías. Algunos de los temas que se verán son:
Conceptos básicos de gestión de bases de datos.
CRUD
Data Modeling
ACID
Creación de bases de datos e inserción de datos.
Bases de datos no relacionales.
Bases de datos relacionales.
Módulo 8 - Principios del Testing y Seguridad 5 ECTS
Un desarrollo software sin una buena planificación de seguridad y una batería de tests que comprueben el correcto funcionamiento del producto es muy probable que tenga problemas una vez se realice el despliegue en producción. Estos problemas se pueden traducir en pequeños bugs en el comportamiento o en grandes fallos del comportamiento de nuestra página, que puede traducirse en cuantiosas pérdidas para nuestra empresa. Para profundizar en este tema, este módulo tratará temas como:
Test Driven Development.
Test Unitarios.
Test Funcionales.
Test de Integración.
Mock Data.
Desarrollo seguro.
Principales vulnerabilidades web.
Módulo 9 - Introducción a Contenedores y Orquestación 5 ECTS
Cada vez es más frecuente que los Contenedores sean un componente fundamental en el desarrollo software. La capacidad de crear entornos de producción auto contenidos que funcionen de forma indistinta al entorno donde se despliegan y que tengan mecanismos de gestión sencillos han hecho que sea cada vez más imprescindible conocer estas tecnologías. En éste módulo los alumnos verán los siguientes conceptos:
Máquinas Virtuales.
Contenedores.
Docker y Docker Compose.
Orquestación de contenedores.
Configuración y aprovisionamiento.
Módulo 10 - Integración Continua, Despliegue Continuo y Monitorización 5 ECTS
En el ámbito del desarrollo software, es cada vez más común emplear técnicas que favorezcan la comunicación entre desarrolladores y profesionales de las operaciones de IT. Es por ello que cada vez es más común usar nuevos métodos y técnicas que garanticen la máxima calidad del software y eviten riesgos o costes superfluos atacando la manera de desarrollar y desplegar el producto. Los/as alumnos/as de este módulo trabajarán los siguientes temas:
Introducción a CI/CD/CD.
CI: Build, Test, Merge.
CD: Despliegue al repositorio.
CD: Despliegue a producción.
Automatización con Jenkins.
Monitorización.
Talleres
Durante el Máster en Full Stack Web Development el o la estudiante tendrá la oportunidad de realizar dos talleres prácticos:
- Taller 1. Taller transversal: Proyecto Web
En este taller se aplicarán todos los conocimientos impartidos en las asignaturas para crear un proyecto web desde su fase inicial, siguiendo todas las etapas del ciclo de vida del desarrollo software.
- Taller 2. Gestión de proyectos, equipos, liderazgo y comunicación
El objetivo de este taller es que el estudiante trabaje de forma práctica las habilidades de gestión de proyectos y equipos, como el liderazgo y la comunicación.
Preparación a la Certificación en PSM® (Professional Scrum Master)
Es una certificación orientada a demostrar conocimiento de Scrum y las responsabilidades de Scrum Master. El objetivo de la certificación es validar los conocimientos y habilidades de los estudiantes. La certificación es reconocida y respetada mundialmente porque pone a prueba una verdadera comprensión de Scrum y como aplicarlo. Una vez que se obtiene no se necesita renovación.
Herramientas
A lo largo del programa los estudiantes trabajan con herramientas.
Proyecto final de Master 10 ECTS
Es un trabajo académico-práctico que los estudiantes realizarán, transversalmente. El objetivo de este trabajo es favorecer la aplicación práctica de los conocimientos, metodologías y herramientas vistos a lo largo de todo el máster.Leer menos