INFORMATION, PRE-REGISTRATION AND REGISTRATION
Continuing Education
Phone: 91 665 5060
Contact Academic Address:
Student attention: Student Help Box Suggestions, complaints and congratulations mailbox
Basic Information
Presentation
The Internet allows software developers to offer our users all kinds of services through web applications or REST APIs that will be used by mobile applications or different devices. Although the technology needed to implement these services has been greatly simplified in recent years, it is still a challenge for developers to know and master the tools and concepts that make them possible: web development frameworks and REST APIs, database access, REST API implementation and security aspects. All this without neglecting the quality with which the software must be developed, with a good software architecture to allow it to be maintainable and mastering automatic testing tools. But in addition, these types of services have to be scalable and fault tolerant. And one of the most used strategies today to achieve this is to build these services following the microservices architecture.
Theoretical concepts are essential to understand something, but as software developers, we know that the “devil is in the details”, so the practices are essential. In the course, these practices are carried out with Java, one of the most widely used programming languages in Spain for building Internet services. We will use Spring as a development framework. And accompanying these two great pillars, the tools and technologies that companies demand the most: IntelliJ, Visual Studio Code, Postman, OpenAPI, JUnit, Selenium, REST Assured, Artillery and many more. Likewise, microservice-based architectures will be studied in depth, both from a theoretical and practical point of view, studying various patterns and architectures: communications with REST, gRPC and messaging systems, Sagas, external API, DDD, CQRS, Event sourcing. In addition, strategies will be presented to convert monoliths into microservice-based applications.
Although we can all learn on our own, it is much more enjoyable if we do it in company, with teachers to ask questions to and classmates to reflect with. But it is very difficult to combine a face-to-face course with work and personal life. That is why in this course we strive to have the best of face-to-face training (asking the teacher and reflecting with classmates) with the ease of online training (being able to do it from anywhere). This course is taught in two live online classes of 3 hours each, on Tuesdays and Thursdays from 17:30 p.m. to 20:30 p.m. (so that it can be combined with work). During the live classes, debate and participation are encouraged. But if one day you cannot attend, no problem, they are available for you to watch at another time.
Objectives
- Students can develop web applications and REST APIs, with relational databases and user control. All this using some of the most widely used technologies at a professional level: the Java programming language and the Spring framework.
- That students implement services following the appropriate architectures and patterns that guarantee their maintainability.
- Students can control the quality of web applications and REST APIs with tests at different levels: unit, integration and system, both at functional and load levels.
- Students can develop software following a microservices architecture: following its patterns, with different communication technologies (gRPC and messaging systems), with saga-based transactions that guarantee integrity and applying the external API pattern.
- Students choose the most appropriate design and architecture techniques for their applications: Domain Driven Development (DDD), Command Query Resource Segregation (CQRS) and Event sourcing.
- That students can apply the most appropriate strategies to convert a monolithic application into a microservices-based application.
Program
- Web services and REST APIs (3 ETCS): Web applications. Databases. REST APIs. Security. Web services architectures.
- Web services tests (2 ECTS): Unit and integration testing. System testing: Web and REST. Load testing
- Microservices (3 ECTS): Microservices patterns. Communication. Transactions with sagas. External API. DDD. CQRS. Event sourcing. From monolith to microservices
Recipients
Access requirements:
To enroll in the course you must be in one of these two profiles:
- Recent graduate or final year student of a degree related to computer science or telecommunications.
- Software developer with professional experience
You need to have a basic understanding of: Linux command line, HTML, Java programming languages and Git version control systems. If you don't have any knowledge of any of these elements, you still have time until the course starts to search for information on the Internet, a tutorial, course, free book, etc. If you have any questions or problems, don't hesitate to ask us.
Selection criteria:
If the maximum number of places is reached, recent graduates will be selected based on their academic record and the affinity of their studies with the course content. Professional software developers will be selected based on their work experience.
No. of Places: 50 students.
Academic Management and Faculty
Micael Gallego Carrillo (Senior University Professor) - Course Director
He has extensive experience as a university professor and as a consultant to companies in the fields of web development, distributed application development, concurrent programming, scalability and fault tolerance, automated testing and software quality. He is the leader of the OpenVidu videoconferencing platform, leading the development team.
Michel Maes Bermejo (Assistant Professor)
He teaches university courses on web development, distributed systems, computer security and automated testing. His line of research focuses on the analysis of development-related processes.
Oscar Soto Sanchez (URJC Teacher Training Fellow)
He teaches university courses on web development and distributed systems. He collaborates with companies developing a web platform for process optimization.
Duration and development
Modality: online
Number of credits: 8
Contact hours: None
Place of delivery: Virtual Classroom
Opening hours: Tuesday and Thursday from 17:30 p.m. to 20:30 p.m.
Start and end date: 14/01/25 – 03/04/25
Reservation of place and enrollment
Pre-registration period: December 13th 2024
Enrollment deadline: December 16 to December 22, 2024
Title price: 1,500€
Possibility of scholarship (if applicable): No
Documentation to attach, forms and place of delivery
The applicant will present all the scanned documentation, in the formats allowed through the link https://www.urjc.es/estudiar-en-la-urjc/admision/276-formacion-continua#preinscripcion
The documentation that you will have to submit is the following:
Students with a degree obtained from a Spanish university or a Higher Education Institution belonging to another Member State of the European Higher Education Area that provides access to continuing education courses must submit the following documentation:
- National Identity Document or equivalent
- University Degree of the studies that give you access to the requested postgraduate degree. *
- Curriculum vitae
- Responsible declaration of veracity of the data provided in digital format
- Any other document required by the Academic Department of Continuing Education for acceptance.
Students with foreign qualifications must submit the following documentation:
- Passport or Residence Card
- Foreign Higher Education Degree (Graduate, Bachelor's Degree, Architect, Engineer, Doctor...) that gives access to continuing education studies. *
- Curriculum vitae
- Responsible declaration of veracity of the data provided in digital format
- Any other document required by the Academic Department of Continuing Education for acceptance
* A university degree (bachelor's or bachelor's degree) is required to access both Master's and Expert and Specialist courses. However, on some occasions the possibility is considered for people without a previous university degree but who can demonstrate professional experience related to the subject of the course to access it.
This possibility must be included in the corresponding academic report and will be subject in all cases to the decision of the Course Director. People who access through this route will only receive a Diploma or a Certificate of University Extension depending on the case.