Portfolio de Proyectos
1. Sistema de Gestión de Usuarios con Autenticación y Autorización (OAuth2/Spring Security)
- Tecnologías: Spring Boot, Spring Security, OAuth2, JWT, React, PostgreSQL
- Descripción: Desarrolla una aplicación que permita la creación, autenticación y autorización de usuarios mediante OAuth2 y JWT, usando PostgreSQL como base de datos. Implementa diferentes roles de usuario con permisos específicos.
- Enfoque: Seguridad (autenticación/ autorización) y manejo de roles.
2. Microservicio de Facturación con Event-Driven Architecture (Kafka)
- Tecnologías: Spring Boot, Kafka, React, PostgreSQL, Docker
- Descripción: Desarrolla un sistema de facturación basado en microservicios, donde los eventos financieros son gestionados a través de Kafka. Usa PostgreSQL para almacenar las facturas generadas.
- Enfoque: Microservicios, arquitectura orientada a eventos, mensajería con Kafka.
3. E-Commerce con Manejo de Pedidos en Tiempo Real (WebSockets/RabbitMQ)
- Tecnologías: Spring Boot, RabbitMQ, WebSockets, React, MongoDB
- Descripción: Implementa un sistema de e-commerce con un panel en tiempo real para los administradores, mostrando pedidos en vivo usando WebSockets. Los pedidos son procesados con RabbitMQ.
- Enfoque: WebSockets para datos en tiempo real, colas de mensajes con RabbitMQ.
4. Aplicación de Monitoreo y Métricas de Sistema (Spring Actuator/Prometheus/Grafana)
- Tecnologías: Spring Boot, Spring Actuator, Prometheus, Grafana, React, PostgreSQL
- Descripción: Desarrolla una aplicación para monitorear el rendimiento del sistema, incluyendo tiempos de respuesta, carga del sistema, errores y más, usando Spring Actuator, Prometheus y Grafana.
- Enfoque: Observabilidad, monitoreo en tiempo real, métrica de aplicaciones.
5. Sistema de Blog con Búsqueda Avanzada (Elasticsearch)
- Tecnologías: Spring Boot, Elasticsearch, React, PostgreSQL
- Descripción: Implementa un sistema de blog donde los usuarios puedan realizar búsquedas avanzadas usando Elasticsearch. Los usuarios pueden crear y buscar artículos por palabras clave, categorías o contenido.
- Enfoque: Integración de Elasticsearch para búsquedas avanzadas, CRUD completo.
6. Plataforma de Gestión de Proyectos con Gestión de Tareas Asíncronas (Spring Batch/Spring Scheduler)
- Tecnologías: Spring Boot, Spring Batch, Spring Scheduler, React, MySQL
- Descripción: Desarrolla una plataforma para la gestión de proyectos donde las tareas se procesen de forma asíncrona mediante Spring Batch y Spring Scheduler. Las tareas pueden incluir generación de reportes y envío de notificaciones.
- Enfoque: Procesos en segundo plano, gestión de tareas asíncronas.
7. Sistema de Reportes con Integración Continua y Despliegue Automático (Jenkins/Docker/Kubernetes)
- Tecnologías: Spring Boot, Jenkins, Docker, Kubernetes, React, MySQL
- Descripción: Construye una aplicación que genera reportes automáticamente y los despliega mediante pipelines de integración continua usando Jenkins, Docker y Kubernetes. Configura pipelines automatizados desde el desarrollo hasta la producción.
- Enfoque: CI/CD, contenedorización y despliegue automatizado.
8. Aplicación de Finanzas Personales con Pruebas Automatizadas (TDD/JUnit/Selenium)
- Tecnologías: Spring Boot, TDD, JUnit, Selenium, React, PostgreSQL
- Descripción: Implementa una aplicación de finanzas personales donde los usuarios puedan gestionar sus presupuestos y gastos, aplicando el enfoque de desarrollo guiado por pruebas (TDD) tanto en backend como en la UI.
- Enfoque: TDD, pruebas unitarias y de integración, pruebas automatizadas de UI con Selenium.
9. API de Geolocalización con Caching Distribuido (Redis/Spring Cache)
- Tecnologías: Spring Boot, Redis, Spring Cache, React, PostgreSQL
- Descripción: Desarrolla una API de geolocalización que ofrezca información sobre ubicaciones, implementando un sistema de caching distribuido con Redis para mejorar el rendimiento.
- Enfoque: Caching distribuido, optimización de rendimiento, APIs RESTful.
10. Dashboard de Análisis de Datos con Big Data (Spring Data/Spark)
- Tecnologías: Spring Boot, Spring Data, Apache Spark, React, Hadoop
- Descripción: Construye un dashboard interactivo para visualizar y analizar grandes conjuntos de datos en tiempo real usando Apache Spark y Hadoop para el procesamiento de datos masivos.
- Enfoque: Big Data, procesamiento de datos a gran escala, visualización de datos.
Minio test:
https://lf-onap.atlassian.net/wiki/spaces/DW/pages/99057714/Spring+Boot+MinIO+Integration+Lab+and+Exercises