Skip to content
View jdomdev's full-sized avatar
🎯
:octocat: Focusing
🎯
:octocat: Focusing

Block or report jdomdev

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
jdomdev/README.md

¡Hola Gente! 👋

Soy Juan Domingo, Fullstack Developer y Analista de Datos, apasionado por crear soluciones innovadoras que combinan desarrollo de software con análisis de datos. Con sede en Madrid, España, tengo experiencia en una variedad de tecnologías para proyectos complejos y colaborativos.


💻 ¡Hola Gente! 👋

Soy Juan Domingo, un Full Stack Developer y Analista de Datos apasionado por crear soluciones innovadoras que combinan desarrollo de software y análisis de datos. Con sede en Madrid, España, tengo experiencia trabajando en una variedad de proyectos complejos y colaborativos. Además, puedo trabajar como freelance y estoy abierto a nuevas oportunidades.


📚 Sobre Mí

  • 💼 Experiencia: Full Stack Developer con más de 2 años de experiencia y Analista de Datos.
  • 🎓 Formación: Curso de Ciencia de Datos de 600 horas (6 meses), donde desarrollé habilidades avanzadas en análisis y limpieza de datos.
  • 🌍 Trabajo como Freelance: Desarrollo de aplicaciones completas y robustas, desde el backend hasta el frontend.

Proyectos en curso

🚀 Sistema de Gestión Empresarial con Arquitectura de Microservicios

Este proyecto es una aplicación web empresarial desarrollada utilizando Spring Boot para el backend y React para el frontend. Diseñada para gestionar múltiples operaciones internas de negocio como notas de gasto, autenticación de usuarios, gestión de inventarios y administración de empleados. Cada funcionalidad está implementada como un microservicio independiente.

🛠️ Tecnologías Clave

  • Backend: Spring Boot (JDK 17), PostgreSQL, APIs RESTful, OAuth2 + JWT.
  • Frontend: React, Redux, Material-UI, Axios.
  • DevOps: Docker, Kubernetes, CI/CD (GitHub Actions/Jenkins).
  • Pruebas: JUnit (backend), Jest y React Testing Library (frontend).

🌟 Características Destacadas

  1. Gestión de Notas de Gasto:
    • Empleados pueden gestionar sus propias notas de gasto.
    • Los administradores tienen acceso completo a todas las operaciones CRUD.
  2. Autenticación y Gestión de Roles:
    • Control de acceso basado en roles utilizando tokens JWT.
    • Roles: Admin y Usuario.
  3. Gestión de Inventarios:
    • Seguimiento y control de dispositivos electrónicos y otros activos de la empresa.
  4. Gestión de Empleados:
    • Administración de registros, roles y accesos dentro de la organización.

⚙️ Arquitectura

  • Microservicios: Cada funcionalidad de negocio está aislada en un microservicio independiente.
  • APIs RESTful: Comunicación entre microservicios, promoviendo un acoplamiento débil.
  • OAuth2 & JWT: Seguridad en la autenticación y control de acceso por roles.

📈 Futuras Mejoras

  • Incorporar un microservicio de e-commerce.
  • Integrar una pasarela de pago para habilitar transacciones seguras.
  • Añadir reportes analíticos para la gestión de inventarios y notas de gasto.

📌 Repositorio: Bizflow Web App


🦷 Sistema de Gestión de una Clínica Odontológica

Una aplicación web diseñada para gestionar las operaciones de una clínica dental. Facilita la programación de citas, la administración de pacientes y los horarios de los dentistas, proporcionando una experiencia eficiente tanto para secretarias como para dentistas.

🌟 Características Principales

  • Gestión de Pacientes: Registro de datos personales, métodos de pago (seguro o privado) y asignación de responsables para menores de edad.
  • Programación de Citas: Validación automática según disponibilidad de dentistas y horarios definidos.
  • Gestión de Dentistas: Configuración de horarios y registro de observaciones tras cada cita.
  • Roles de Usuario: Acceso seguro para secretarias y dentistas con funcionalidades específicas.
  • Reportes: Estadísticas como pacientes atendidos, citas diarias y desglose por seguros.

🛠️ Tecnologías Utilizadas

  • Backend: Java EE 8, JDK 21, JPA para ORM.
  • Frontend: JSP, HTML, CSS.
  • IDE: NetBeans 23.
  • Base de Datos: MySQL o PostgreSQL.

📌 Repositorio: Dentist Office Management System


💼 Sistema de Control de Gastos

Expense Note App es una aplicación backend monolítica desarrollada con Spring Boot y Java JDK 11 (actualmente migrada a JDK 17). Está diseñada para gestionar notas de gasto y datos de nóminas de empleados, permitiendo un control eficiente y centralizado de los procesos administrativos.

🌟 Características Principales

  • Arquitectura Monolítica: Simplifica el control y la implementación de la aplicación.
  • API RESTful: Endpoints expuestos para la gestión de empleados, usuarios del sistema y nóminas.
  • Patrones DTO y DAO: Facilitan el procesamiento y la persistencia de datos.
  • Control de Acceso Basado en Roles (RBAC):
    • Roles: ROLE_ADMIN y ROLE_USER.
    • Autenticación JWT: Acceso seguro mediante tokens.
    • Soporte para empleados que no sean usuarios del sistema.
  • Persistencia: Almacenamiento confiable de datos en PostgreSQL.

🛠️ Tecnologías Utilizadas

  • Backend: Spring Boot 2 (migración futura a Spring Boot 3), Java JDK 17.
  • Base de Datos: PostgreSQL.
  • Seguridad: JSON Web Token (JWT) para autenticación y autorización.
  • Pruebas: Uso de Postman para pruebas de endpoints.

📈 Mejoras Futuras

  • Migración a Spring Boot 3 para aprovechar nuevas optimizaciones.
  • Integración con un frontend para facilitar la interacción.
  • Ampliación de pruebas unitarias con JUnit.

📌 Repositorio: Expense Note App


Curso de Ciencia de Datos

Este año, he finalizado un curso en Ciencia de Datos financiado por la UE y los servicios públicos de empleo:
📍 Colegio Tajamar, Madrid (Presencial)
📅 Mar. 2024 – Sep. 2024 (600 horas)
🏛️ Data Science, IFCT156PO, Fondo Social Europeo

🧠 Tecnologías del Curso de Ciencia de Datos

Módulo 1 - Fundamentos de Data Science

🔑 KPI, Big Data, Madurez Digital, Roles en DS, CRISP-DM
💻 Máquinas Virtuales


Módulo 2 - Terminal Linux

🐧 Linux: Comandos, Shell Scripting, Creación de Entornos Virtuales


Módulo 3 - Git y GitHub

🌲 Git: Repositorios, Ramas, Cambios, Etiquetas
🤝 Colaboración: Pull Requests, Forks, Clonar
🔄 Integración Continua
📒 Jupyter Notebook: Gestión de Datasets


Módulo 4 - Bases de Datos Relacionales. SQL

🗄️ SQL:

  • DDL/DML: Operadores, Agregaciones, Relaciones y Claves
  • JOIN: Inner, Left, Right, Full
  • Funciones Ventana y Subconsultas
    📁 Repositorio: SQL Prácticas

Módulo 5 - Storytelling

📈 Storytelling with Data: Visualización para Negocios
📘 Basado en el libro de Cole Nussbaumer Knaflic
📁 Repositorio: DS Storytelling


Módulo 6 - Python

🐍 Python:

  • Fundamentos, POO, Regexp, Excepciones
  • Programación Funcional: Lambdas, Map, Reduce y Filter
    📁 Repositorio: DS Python

Módulos 7 y 8 - Numpy y Pandas

📊 Numpy & Pandas:

  • Data Wrangling: Series, DataFrames, Filtrado
  • Limpieza Avanzada: Missing Data, Outliers
  • Operaciones: Merge, Concat, Melt, GroupBy, JSON, Time Series
    📁 Repositorios: DS Numpy | DS Pandas

Módulo 9 - Visualización de Datos

📊 Matplotlib: Gráficos de Línea, Área, Barras, Columnas, Dispersión, Caja-Bigotes
🎨 Seaborn: Mapas, Boxplots, Violin Plots, Regresión
📊 Plotly: Visualizaciones interactivas


Módulo 10 - Estadística y Probabilidad

📐 Estadística: Exploración, Correlación, Distribuciones, Muestreo
📊 Inferencia: ANOVA, Chi-Cuadrado, Valores p, Pruebas t
📈 Regresión: Lineal, Polinómica, Pronóstico


Módulos 11 y 12 - Machine Learning

🤖 Machine Learning:

  • Supervisado:
    • Clasificación: Regresión Logística, K-NN, SVM, Naive Bayes
    • Árboles: Decisión, Random Forests, Boosting
    • Regresión: Lineal, Polinómica
  • No Supervisado:
    • Clustering: K-Means, PCA, Hierarchical Clustering
  • Semisupervisado: Autoencoders, Métodos de Propagación de Etiquetas

💼 Experiencia Laboral

🧑‍💻 Full Stack Developer & Data Analyst (Freelance)

📍 Madrid, España (Remoto)
📅 Oct. 2024 – Actualidad

Actualmente trabajo como freelance, desarrollando soluciones innovadoras que combinan desarrollo de software y análisis de datos. He trabajado en proyectos como:

  • Bizflow Web App
    • 💻 Backend: Arquitectura de microservicios con Spring Boot (JDK 21), seguridad con OAuth2/JWT y APIs REST para la gestión de notas de gasto y usuarios.
    • 🌐 Frontend: Interfaz creada con React.js, Redux para la gestión de estado, y diseño moderno con Material-UI.
    • ⚙️ DevOps: Implementación de contenedores con Docker y orquestación con Kubernetes.
    • 🧪 Pruebas: Automatización de pruebas con JUnit (backend) y Jest (frontend).

🔧 Desarrollador Back-End (General Software)

📍 Madrid, España (Híbrido)
📅 Abr. 2023 – Ago. 2023

Trabajé en el proyecto PERSEO, una solución para la gestión del tráfico aéreo en España:

  • 🚀 Migración de una aplicación monolítica en Java 8/J2EE a una arquitectura basada en microservicios, utilizando Talend Open Studio (ETL).
  • 🔄 Optimización del flujo de datos entre sistemas mediante procesos automatizados.
  • 🛠️ Resolución de incidencias críticas, mejorando la disponibilidad del sistema en un 80%.

Tecnologías: J2EE, SQL Server, Swagger, Maven, Gitflow, Talend, YAML.


🌍 Full Stack Developer (HI Iberia Ingeniería y Proyectos)

📍 Madrid, España
📅 Oct. 2022 – Abr. 2023

Colaboré en el desarrollo de la aplicación web Revita, una solución de tele-asistencia médica:

  • 📱 Diseño responsive y optimización para dispositivos móviles y escritorio.
  • 🚀 Desarrollo de endpoints en Node.js y frontend con AJAX y Pug.
  • 🛠️ Reducción de tiempos de carga en un 10% y mejora de la usabilidad en un 20%.

Tecnologías: JavaScript, Node.js, AJAX, CSS, Pug, Linux, Trello.


🗂️ Back-End Developer (Codevince)

📍 Torrejón de Ardoz, España (Híbrido)
📅 Ene. 2022 – Oct. 2022

Lideré el desarrollo de la Expense Note App, una aplicación empresarial para gestionar gastos y nóminas:

  • 🛠️ Diseño de una arquitectura en capas con Spring Boot, integrando patrones DAO y DTO.
  • 🔒 Seguridad mediante autenticación y autorización con JWT.
  • 📊 Persistencia de datos en PostgreSQL y automatización de pruebas con JUnit y Postman.

Tecnologías: Java 11, Spring Boot, PostgreSQL, Hibernate, JSON Web Token (JWT).


🐍 Python Developer (Whenwhyhow)

📍 Madrid, España
📅 Sept. 2021 – May. 2022

Participé en el KER Project, una plataforma médica basada en datos de salud y condiciones meteorológicas:

  • 🤖 Creación de conectores entre MongoDB y APIs como Google Fit y OpenData AEMET.
  • 🛠️ Refactorización de scripts en Python para optimizar la gestión de datos en tiempo real.
  • 🌩️ Integración de soluciones en AWS Lambda para asegurar despliegues seguros y eficientes.

Tecnologías: Python, Flask, JSON, MongoDB, RESTful APIs, AWS Lambda.


🛠️ Tecnologías

Java Spring Boot React.js Docker Python Microsoft SQL Server

📬 Cómo Contactarme


Pinned Loading

  1. bizflow-springboot-microservices-react bizflow-springboot-microservices-react Public

    Java 1

  2. expense-note-app-springboot expense-note-app-springboot Public

    Spring Boot application about a company employee expense note.

    Java 1

  3. data-science-pandas data-science-pandas Public

    Proyectos hechos con la biblioteca Pandas en entornos virtuales de Anaconda para Ciencia de Datos

    Jupyter Notebook

  4. data-science-statistic data-science-statistic Public

    Proyectos de estadística realizados con las bibliotecas Pandas, Scipy, Statsmodels y Pingouin para Ciencia de Datos

    Jupyter Notebook

  5. my-pharma-memory-mvc-android my-pharma-memory-mvc-android Public

    Cycle final project DAM

    Kotlin 1

  6. dentist-office-java-web-jsp dentist-office-java-web-jsp Public

    Java Web application for the management of a dental clinic.

    CSS