...

Rubén Castro Gutiérrez

Ingeniero técnico en informática de gestión

Almuñécar - Granada - España

Formación académica

  • Certificaciones
  • Cursos
    • Docker Certified Associate Exam Course
      KodeKloud - 2022
      CertId: 77E5BDBB57-77DFC8048D-77DF8AAAAF
      Credencial: KodeKloud
    • Terraform for Beginners
      KodeKloud - 2021
      CertId: 77E5BDBB57-77DFC7DB87-77DF8AAAAF
      Credencial: KodeKloud
    • Entity Framework Core 3: ORM de microsoft
      Udemy - 2020
      Credencial: Udemy
    • Docker y Kubernetes: desarrollo y despliegue de aplicaciones basadas en contenedores
      Campus MVP - 2019
      Credencial: Campus MVP
  • Universitaria
    • Ingeniería técnica en informática de gestión
      Escuela técnica superior de ingeniería informática
      Universidad de Granada - 1996/2000

Vida laboral

Avanade España - Málaga (Remoto) - Diciembre 2022 / Actualidad

  • Consultant, Agile Coach (Junio 2023 / Actualidad)
    • Despliegue de arquitecturas en Azure Cloud
    • Administración de proyectos en Azure DevOps
    • Despliegue automatizado con Azure Pipelines
    • Diseño de plantillas IaC con Terraform
    • Despliegue y administración de Azure AKS
    • Docker y Kubernetes
    • Azure Datafactory & Databricks CI/CD
    • Azure Databricks QA Testing automatization
  • Senior Analist, Agile Practitioner (Diciembre 2022 / Junio 2023)
    • Despliegue de arquitecturas en Azure Cloud
    • Administración de proyectos en Azure DevOps
    • Despliegue automatizado con Azure Pipelines
    • Diseño de plantillas IaC con Terraform
    • Despliegue y administración de Azure AKS
    • Docker y Kubernetes

Kabel Sistemas de Información SL - Madrid (Remoto) - Octubre 2021 / Noviembre 2022

  • Consultor - Digital Software Reliability and Integration
    • Despliegue de arquitecturas en Azure Cloud
    • Administración de proyectos en Azure DevOps
    • Despliegue automatizado con Azure Pipelines
    • Diseño de plantillas IaC con Terraform
    • Despliegue y administración de Azure AKS
    • Docker y Kubernetes
    • Desarrollo de microservicios .Net

Innova Ibérica - Sevilla (Remoto) - Julio 2021 / Octubre 2021

  • Full stack developer
    • ASP.NET Webforms
    • NET 5 REST API
    • Microsoft Transact-SQL

Póliza Informática 2000 MDS SL - Almuñécar - 2001 / Junio 2021

  • Administrador de servidores en entorno linux (FTP, SMB, Glassfish, Tomcat, Gitlab, Docker, Kubernetes, Minio)
  • Administrador de servidores en entorno windows (AD, DNS, SMB, DHCP, GP, Docker)
  • Instalación de redes
  • Administración y configuración de centralita Netcom Neris
  • Administrador de servidor cPanel
  • Administrador de servidores de virtualización Dell R710 / Dell MD1200
    • Administración de virtualización VMWare ESXi 6.0
    • Instalación y administración de firewal pfSense
    • Instalación y administración de servidores Centos para servicios SMB, FTP, gitlab, docker, kubernetes
    • Gestión de copias de seguridad de máquinas virtuales con xsi-backup
    • Despliegue, configuración y actualización automatizada con Ansible
    • Gestión de copias de seguridad con Restic y almacenamiento en Minio
  • Programación Visual Basic 6 / SQL Server
    • Aplicación para mediadores de seguros PolizaWin
    • Aplicación interna de gestión de clientes
  • Programación Java
    • Servicios SOAP de actualización de PolizaWin
    • Servicios SOAP de conectividad con Allianz
    • Servicios SOAP de conectividad con Reale
    • Servicios SOAP de conectividad con Grupo Catalana Occidente
    • Servicios SOAP de conectividad con Avant2 de Codeoscopic
  • Programación Python
    • Pasarela de envío SMS con modem GSM, smstools3 y API REST (Flask, Alchemy)
  • Programación .Net
    • Programación de interfaz de usuario WPF
    • Programación de aplicacion movil multiplataforma con Xamarin
    • Microservicios .Net Core desplegados en Kubernetes de Azure
      • Servicio REST de aunteticación de usuarios por token JWT de acceso a servicios
      • Servicio REST de gestión de usuarios
      • Servicios REST de conectividad con Allianz, Reale, Axa y Zurich
      • Despliegue automatizado con gitlab CD/CI
  • Soporte telefónico a usuarios de PolizaWin

Proyectos

Avanade España - Málaga - Equipo Xtratus - Ferrovial

Integrante del equipo Xtratus, grupo encargado de las operaciones cloud de Ferrovial, especializado en el mantenimiento de Kubecore (container as service).

Mantenimiento y actualización de herramientas de sistema del cluster: ArgoCD, Akv2k8s, Nginx-Ingress, AGIC, ExternalDNS, Kubecost, Velero, Prometheus, Grafana, plugins de ArgoCD para inyección de secretos desde key vaults e ImageUpdater, ImageReloader e Istio.

Mantenimiento y actualización de despliegue automatizado mediante Azure Pipelines y Terraform.

Avanade España - Málaga - Proyecto O9 - Coty

Diseño e implementación de pipelines de CI/CD para Azure Datafactory y Azure Databricks para integración y despliegue continuo.

Diseño e implementación de tests QA automatizados en Azure Databricks.

Kabel Sistemas de Información SL - Madrid - Container as a service - Ferrovial

Despliegue automatizado de infraestructura mediante Azure Pipelines y Terraform, con virtual networks, network security groups, Azure Kubernetes Service para entornos DEV, TST y PRO, Azure container registry, key vaults y storage account privados, integrados con sus redes hub & spoke.

Despliegue automatizado en Kubernetes con ArgoCD de herramientas de sistema del cluster: Akv2k8s, Nginx-Ingress para ingress interno, AGIC con ExternalDNS para ingress externo, administración de ArgoCD y Kubecost integrados con identificación de Azure AD, copias de seguridad con Velero, monitorización con Prometheus y exportación de métricas a Grafana, además de plugins de ArgoCD para inyección de secretos desde key vaults e ImageUpdater.

Despliegue automatizado de "Onboarding" mediante Azure Pipelines y Terraform, para creación de Proyecto en Azure DevOps, repositorios iniciales, teams de desarrollo, permisos de usuarios, creación de namespace, roles y rolebindings en AKS, alta de proyecto en ArgoCD para despliegue automático y creación de service connections en el proyecto a ACR y entornos AKS.

Kabel Sistemas de Información SL - Madrid - Migración cloud - Saint Gobain España

Migración a cloud de Azure de web corporativa implementada con Wordpress.

Kabel Sistemas de Información SL - Madrid - Despliegue de AKS mediante IaC - CHC Energía

Diseño de plantillas IaC en Terraform para despliegue automatizado de AKS para entornos de desarrollo y producción.

Kabel Sistemas de Información SL - Madrid - Despliegue de AKS mediante IaC - Sacyr

Diseño de plantillas IaC en Bicep para despliegue automatizado de AKS para entorno de producción.

Kabel Sistemas de Información SL - Madrid - Despliegue de Wordpress mediante IaC - Técnicas Reunidas

Diseño de plantillas IaC en Terraform para despliegue automatizado de Wordpress. Diseño de arquitectura con entorno de preproducción en VM para permitir la edición de contenido a través de Wordpress y pipelines automatizados para despliegue a producción.

Kabel Sistemas de Información SL - Madrid - Acutalización de imágenes Docker - JLL servicios inmobiliarios

Actualización de imágenes Docker de Selenium 3 mediante creación de Dockerfiles personalizados.

Póliza Informática - Almuñecar - Migración .Net

Migración de un sistema monolito a conjunto de bibliotecas independientes nuget, aplicando paradigmas de limpieza de código y calidad de código implementando tests unitarios y de integración, con integración continua a través de gitlab cd/ci.

Póliza Informática - Almuñecar - Conectividad AXA

Tras un acuerdo de colaboración con la entidad aseguradora AXA nos comprometimos a desarrollar los procesos de conectividad EIAC estableciendo unos objetivos y unos plazos de entrega.

Hasta el momento todos los servicios de conectividad habían sido desarrollados en Java para Tomcat usando protocolos SOAP. Debido a los cambios de licenciamiento del ecosistema de Java decidimos desarrollar los nuevos servicios en Net core, aplicando la filosofía de desarrollo basada en microservicios, de forma que los desarrollos estuvieran empaquetados en conenedores Docker para su despliegue en Kubernetes.

Para la implementación se diseñaron una serie de módulos independientes:

  • Servicio REST de autenticación de usuarios por token JWT
  • Servicio REST de gestión de usuarios
  • Servicio REST de conectividad Axa
Además se añadieron métricas de uso del servicio utilizando Prometheus y se creó una interfaz gráfica de monitorización en tiempo real utilizando Grafana.

Para el despliegue continuo de los microservicios se implementaron despliegues automatizados utilizando gitlab cd/ci.

El sistema se presentó en los plazos establecidos y pasó a producción una vez que tuvimos la aprobación por parte de la compañía.

Póliza Informática - Almuñecar - Envío de correspondencia

Diseño y desarrollo e implementación de un sistema de gestión de correspondencia. A través de una serie de plantillas de LibreOffice el usuario tiene total libertad para diseñar de forma sencilla las circulares que necesita para sus comunicados. Una vez confeccionadas las plantillas el sistema permite seleccionar una base de datos de clientes a los que enviarles las circulares. El proceso personaliza cada plantilla con los datos de cada cliente y enruta el envío en función del coste del mismo. Se generan PDF de las plantillas personalizadas y son enviadas por email o por correo ordinario en función de los parámetros de cada cliente.

Además el sistema envía comunicaciones SMS a través de un modem GSM usando una serie de microservicios desarrollados específicamente para este proceso, haciendo uso de utilidades libres como SMSTools y scripts Python.

Póliza Informática - Almuñecar - Copias de seguridad

El sistema de copias de seguridad de la documentación de la empresa estaba programado hasta el momento con Cobian backup. Debido al volumen de información las copias se demoraban por más de 5 horas y empezaron a reducir el rendimiento del servidor a primera hora de la mañana.

Para solucionar el problema se implementó una serie de scripts en PowerShell de modo que usando unos ficheros parametrizables de configuración se pudiesen automatizar las copias usando Restic backup, un programa de copias de seguridad basado en instantáneas. El tiempo de ejecución del proceso de copia se redujo a minutos, además de optimizar el espacio de almacenamiento para almacenar el histórico.

El sistema además tiene la ventaja que permite almacenar las copias en un bucket S3, por lo que es sencillo mantener tanto copias locales como almacenadas en Azure o en Amazon.

Proyecto personal - Almuñécar - PubliGPS

Desarrollo un sistema de publicidad para instalar en vehículos. El sistema podía ser configurado con una lista de coordenadas GPS y audios vinculados a dichas coordenadas. El sistema debía reproducir el audio específicado al pasar por cada punto GPS.

Para su implementación se usó una Raspberry Pi con un sistema de baterías recargable, la cual tenía conectado un GPS de alta resolución. Todo el desarrollo se realizó en C++ usando cross compiler gcc.

Póliza Informática - Almuñecar - Servidor de virtualización

Debido a problemas previos con los servidores físicos de la empresa se elaboró un proyecto de actualización para la virtualización de todo el sistema. La premisa de partida es que todos los equipos deben tener redundancia de modo que ante un fallo de cualquier componenete el sistema pueda ser restaurado en el menor tiempo posible.

Para su implementación utilizamos dos servidores Dell PowerEdge R710 gemelos y una cabina SAS MD1200 con doble controlador. En la cabina se crearon dos unidades en Raid 5, una para cada servidor, pero accesibles en caso de fallo por el servidor gemelo. Los servidores virtualizados se repartieron entre ambas unidades. En caso de fallo de uno de los servidores el servidor gemelo puede levantar las máquinas virtualizadas montando la unidad en apenas segundos. Además, se programaron copias de seguridad de las máquinas virtualizadas al almacenamiento interno de cada servidor por lo que, en caso de fallo de la cabina SAS, es posible levantar las máquinas virtualizadas en cada servidor.

Hasta el momento el sistema ha funcionado correctamente. Incluso con un fallo grave en tres discos de forma simultánea de los dos RAID el sistema se ha mantenido funcionando de forma ininterrumpida y sin pérdida de datos gracias a los sistemas redundantes y de copias de seguridad.

Tecnologías con las que he trabajado

  • Nginx
  • Apache
  • Apache Tomcat
  • Apache Axis/Axis2
  • Glassfish
  • Microsoft SQL Server
  • Microsoft Net Framework
  • Microsoft WPF
  • Microsoft Net Core
  • Unity container (DI/CI)
  • FluentAssertions
  • Moq
  • NSubstitute
  • Xamarin
  • NHibernate
  • MySQL
  • MariaDB
  • PostgreSQL
  • RabbitMQ
  • Flask
  • Alchemy
  • Vagrant
  • Ansible
  • Docker
  • Kubernetes
  • Helm
  • ArgoCD
  • AKV2K8S
  • AGIC
  • NGinX Ingress
  • ExternalDNS
  • CertManager
  • Kustomize
  • Kubecost
  • Velero
  • Kasten
  • Prometheus
  • Grafana
  • Azure DevOps
  • Azure Pipelines
  • Azure Kubernetes
  • Azure Container Registry
  • Azure Storage
  • Azure Logic Apps
  • Azure App Service
  • Azure Functions
  • Azure Datafactory
  • Azure Databricks
  • Restic Backup
  • Minio
  • Gitlab
  • Gitlab CD/CI
  • VMWare ESXi
  • Terraform
  • Microsoft Bicep

Sobre mí

  • Ordenado
  • Metódico
  • Trabajador
  • Responsable
  • Curioso por naturaleza
  • Habilidad innata para el aprendizaje
  • Me apasiona la investigación
  • Me encantan los nuevos retos

Aficiones

  • Impresión 3D
  • Microcontroladores Arduino, ESP8266, ESP32
  • IOT