Para invitar a alguien a esta conversación, haz clic en Invitar.
Alejandro acaba de iniciar sesión.
Volumen
--:--
Pulsa Esc para saltar
Sistema
Se ha producido un error grave en el módulo PASADO.VXD en la dirección 0289:C0A812F4. El mensaje enviado excede la capacidad de esta época.
* Pulsa cualquier tecla para volver al pasado.* Pulsa CTRL+ALT+SUPR para reiniciar el equipo. Perderás la información no guardada de todos los programas abiertos.
Pulsa cualquier tecla para continuar _
Iniciando el futuro…
CV vivo
Alejandro Aguilar Torices
Construyendo | Conectando | Contribuyendo
Soy estudiante autodidacta de administracion de sistemas Linux y DevOps, con un gran interés en el desarrollo tecnológico y una alta motivación para aprender y crecer profesionalmente. Soy autodidacta, lo que me ha permitido desarrollar autonomía, habilidades para la resolución de problemas y una curiosidad constante por entender cómo funcionan las cosas.
Ahora busco dar el siguiente paso: trabajar en equipo, aportar valor a proyectos reales y seguir desarrollando tanto mis habilidades técnicas como las de comunicación y colaboración.
Estoy disponible para una incorporación inmediata y con total compromiso.
Si mi perfil se ajusta a lo que estás buscando, por favor, pónte en contacto conmigo.
De lo que me he examinado, y dónde se puede comprobar cada una.
CKA: Certified Kubernetes Administrator
CKA: Certified Kubernetes Administrator
The Linux Foundation
Obtenida
may 2026
Código de verificación
LF-hl6aobcbqg
La certificación CKA (Certified Kubernetes Administrator) valida, mediante un examen 100% práctico, la capacidad técnica de un profesional para instalar, administrar y solucionar problemas en clústeres de Kubernetes en entornos de producción.
La certificación AWS Certified Solutions Architect - Associate (SAA) valida la capacidad técnica para diseñar infraestructuras escalables, seguras, resilientes y rentables en Amazon Web Services (AWS), aplicando las mejores prácticas arquitectónicas de la nube.
La certificación LPIC-2 del Linux Professional Institute valida las habilidades avanzadas de un administrador de sistemas Linux, abarcando la configuración del kernel, la gestión del almacenamiento, la seguridad y el despliegue de servicios de red críticos (como DNS, servidores web y correo) en redes mixtas de tamaño pequeño y mediano.
La certificación PCAP (Certified Associate in Python Programming) del Python Institute valida los conocimientos fundamentales del lenguaje Python, abarcando su sintaxis básica, estructuras de control de flujo, tipos de datos y los conceptos esenciales de la programación orientada a objetos (POO).
Es, posiblemente, la obra que marcó un antes y un después en mi vida; el punto exacto donde comprendí que había nacido para esto. En sus páginas descubrí que Maxine llevaba la vida a la que yo aspiraba: resolver problemas, aprender de forma continua, colaborar y crear herramientas utilizadas diariamente en todo el mundo.
A pesar de que la leí durante los inicios de mi formación en IT, me hizo entender la importancia vital de la comunicación. Cuando empiezas a comprender la magnitud de un sistema complejo —desde el desarrollo del software hasta los servidores que lo despliegan al resto del mundo—, te das cuenta de que se necesita gente capaz de valorar ambos lados y articular las necesidades entre los equipos.
De este libro nació precisamente mi pasión por la cultura DevOps, la cual considero que es la plasmación exacta de los Cinco Ideales de Erik Reid.
Proyectos
Lo que he construido: cada hito, y cada cosa que se rompió por el camino.
Un CV interactivo que refleja mi evolución y aprendizaje continuo en el mundo IT.
Un viaje que conecta la nostalgia de mis inicios con las soluciones que creo hoy.
Repositorio privado
ago 2026Hoy
Este proyecto
Lleva el engranaje por el raíl
Recorre el proyecto solo, desde el inicio hasta hoy. Agárralo y mantén para ir más rápido, o hacia atrás: donde esté, ahí está esa parte de la historia.
Error
El CV se veía a través de la puerta
La intro era solo una tapa: el sitio moderno entero se pintaba y se animaba debajo todo el rato. Escribir en el messenger encoge el viewport para dejar sitio al teclado, y durante un instante la tapa dejaba de cubrir la hierba se veía por el hueco.
Cómo se solucionóDejé de perseguir la geometría y vacié la habitación: todo lo que no es la intro se oculta y se pausa hasta que se abre la puerta. Antes corrían doce animaciones ahí detrás; ahora ninguna.
Lo que me enseñóOcultar con visibility, nunca con display los cuatro motores arrancan detrás de la puerta y miden la página al arrancar, y una página de tamaño cero no les deja nada que construir.
Desarrollo
La entrada pasó a ser un messenger de 1999
Sustituí la tarjeta de perfil de cinco clics por un escritorio de Windows 98 con una conversación en marcha: alguien te escribe, y según lo que hagas eliges la salida, haces clic fuera y la pantalla se raja, escribes más de 170 caracteres y el equipo da un pantallazo azul y reinicia dentro del sitio.
Lo que me enseñóUna puerta funciona porque el visitante reconoce la habitación. La interfaz presentó más de lo que habría presentado cualquier texto puesto en la página.
Error
Todas las etiquetas del messenger salían en blanco
Los contenedores se veían pero el texto no. Ocurrió porque la fuente principal (MS Sans Serif) estaba instalada como un bitmap antiguo que no puede renderizarse a 11px.
Cómo se solucionóSe cambió la fuente principal a Tahoma. Para detectar esto en código: se mide con <canvas> el ancho del texto usando la fuente sospechosa frente a una genérica; si el ancho cambia pero no hay texto, la fuente está instalada pero corrupta.
Lo que me enseñóSi una fuente no existe, el navegador usa la siguiente de la lista. Si existe pero está rota, la usa igual y deja el texto invisible sin lanzar ningún error.
Desarrollo
Cuatro secciones, cuatro movimientos, un solo material
Cada sección cuenta lo suyo con una animación distinta y propia: los cursos son tubos donde caen esferas que se funden en líquido y suben con el progreso, las certificaciones una corriente de burbujas que desfila sin detenerse, la lectura una pila de libros que caen con el grosor y el largo que les dan sus propias páginas y su título, y los proyectos una cremallera que un engranaje recorre hito a hito. Lo que cambia entre ellas es el movimiento; el cristal, los degradados, los biseles y la tipografía son los mismos en las cuatro.
Error
La pila de libros no paraba de balancearse
La estantería soltaba los libros del más corto al más largo, así que cada libro largo caía apoyado sobre uno más estrecho y le sobresalía por los dos lados — una torre de balancines. Medido en headless, la mitad de ocho semillas seguía moviéndose ~1px por fotograma a los 30 segundos y no llegaba a pararse nunca.
Cómo se solucionóOrdené la caída de más largo a más corto. Las ocho semillas se asientan en menos de 5s y se quedan clavadas. Antes había subido fricción, amortiguación, iteraciones y Baumgarte, y ninguno movió la aguja.
Lo que me enseñóAntes de tocar un solver, mirar en qué orden llegan los cuerpos. Los parámetros nunca fueron el problema; lo era la secuencia de montaje.
Logro
Actualizar el sitio es editar un fichero
El panel de administración y el repo escriben los mismos ficheros de contenido, así que hay una sola fuente y ningún CMS. El sitio se renderiza en servidor en vez de compilarse estático, que es lo que hace que un cambio guardado en el panel salga en la siguiente carga y no en el siguiente despliegue.
Desarrollo
Preparado para vivir en un VPS
El sitio se renderiza en servidor, así que no puede ir en un host estático: el build produce un proceso de Node y el panel necesita que ese proceso esté vivo para escribir ficheros. Contraseña y secreto de sesión pasan por el entorno sin el secreto, cada reinicio te echa de la sesión y el contenido sale del repo a un directorio propio de la máquina.
Lo que me enseñóLo que había que acertar era el directorio de contenido. Apuntando a la carpeta del repo, cualquier despliegue que reemplace la aplicación revierte en silencio todo lo editado desde el panel: los ficheros de producción son la copia viva y los del repo solo el punto de partida.
Logro
En producción, con su dominio
El sitio corre en su VPS de netcup, con Cloudflare por delante y respondiendo en su propio dominio. El servidor esta completamente administrado por mi y lo que hay detrás es el CV que se actualiza solo con guardar en el panel.
Lo que me enseñóAdquisición de amplia experiencia práctica en la gestión de usuarios y permisos, configuración de redes, accesos seguros mediante claves SSH y administración de servicios con systemd.
Error
Optimización en dispositivos móviles o de bajo rendimiento
A pesar de haber hecho varios arreglos, sigue habiendo algunos aspectos que no me convencen. Por ejemplo, al hacer zoom out en un móvil durante la intro, se ve un marco azul, como si no hubiese más fondo en el escritorio. Además, si no se le da tiempo suficiente o si el dispositivo es de bajos recursos, se notan varias ralentizaciones durante el salto al sitio final mediante la animación de rotura de cristales.
Cómo se solucionóIN PROGRESS
Plataforma en Github de desarrollo colaborativo para proyectos internos de la Asociacion Huella de Carbono
Recorre el proyecto solo, desde el inicio hasta hoy. Agárralo y mantén para ir más rápido, o hacia atrás: donde esté, ahí está esa parte de la historia.
Desarrollo
Diseño e implementación del esquema de arquitectura para Github
Diseñé el flujo de trabajo y la arquitectura base para estandarizar los nuevos proyectos de la asociación. Esto redujo la fricción operativa y permitió a todos los desarrolladores colaborar de forma segura y unificada en cualquier repositorio de la organización.
Lo que me enseñóAprendí gestión avanzada de roles en GitHub y despliegues CI/CD con Netlify. Además, implementé pipelines centralizados mediante un wrapper de Node, unificando así los flujos de trabajo tanto para repositorios de Python como de JavaScript.
Error
Diferentes lenguajes de programación
Me enfrenté al problema de que los desarrolladores usarían múltiples lenguajes de programación, lo que rompía la uniformidad. Tuve que evaluar opciones y definir cómo estandarizar la creación de plantillas de repositorios sin fragmentar la infraestructura.
Cómo se solucionóCreé un wrapper con Node en el package.json para llamar a los linters, tests y builds de cualquier lenguaje. Esto unificó el proceso bajo un workflow centralizado, permitiendo que cualquier cambio futuro se propague automáticamente a todos los proyectos.
Lo que me enseñóAprendí a priorizar la escalabilidad frente a soluciones rápidas. En lugar de crear un workflow independiente para cada nuevo stack, automatizar y estandarizar un wrapper central me ahorró muchísimo trabajo de gestión y mantenimiento futuro.
Logro
Plataforma operativa y documentada para nuevos desarrolladores
Desplegué los repositorios de plantillas y pipelines, gestionando los roles y las invitaciones de los colaboradores. Además, documenté detalladamente todos los procesos (creación de repositorios, gestión de issues) como guía para integrar a los nuevos miembros.
Lo que me enseñóConsolidé mis conocimientos en la administración de organizaciones en GitHub, desde la configuración de permisos y equipos hasta la protección de ramas. También aprendí el inmenso valor de redactar documentación técnica clara para lograr un onboarding fluido y sin fricción.
Desarrollo
Nuevos integrantes con proyectos nuevos
Asumí el liderazgo de tres desarrolladores junior en prácticas, supervisando sus herramientas para producción. Me encargué de revisar el código, gestionar el despliegue CI/CD (Netlify, Render y MariaDB) y realizar labores de QA, DevOps y soporte técnico.
Lo que me enseñóDesarrollé una gran capacidad para gestionar y liderar múltiples proyectos simultáneos. Aprendí a adaptar la infraestructura a las necesidades de cada despliegue, combinando habilidades de mentoría, soporte y aseguramiento de calidad (QA).
Error
Despliegues monolíticos y deuda técnica ("vibecoding")
Los desarrollos entregados presentaban graves problemas de control de versiones. Aunque los MVP funcionaban, el código estaba "vibecodeado" (generado por IA sin criterio estructurado), resultando en archivos monolíticos inescalables y con una enorme deuda técnica futura.
Cómo se solucionóRedacté un documento detallado con todos los errores arquitectónicos para que los desarrolladores los corrigieran y aprendieran. Gracias a este feedback, el siguiente commit entregó un código limpio, refactorizado y mantenible.
Lo que me enseñóAprendí la importancia de guiar a los perfiles junior en el uso responsable de herramientas de IA. Atajar la deuda técnica desde el principio mediante revisiones exhaustivas (code reviews) es vital para la salud del proyecto.
Logro
Despliegue de los MVP completado
Los cuatro Minimum Viable Products (MVP) fueron puestos en marcha con éxito. Logré coordinar y gestionar de manera óptima estos cuatro despliegues simultáneos, dejándolos completamente funcionales y accesibles en producción a través de Netlify.
Lo que me enseñóConsolidé mi experiencia en la gestión y monitorización de múltiples despliegues web en paralelo. Comprobé que mantener una buena arquitectura base y aplicar revisiones de código exhaustivas garantizan lanzamientos exitosos y estables en producción.
Salesfam es un marketplace que conecta empresas y vendedores independientes mediante enlaces únicos, automatizando el seguimiento y pago de comisiones.
Recorre el proyecto solo, desde el inicio hasta hoy. Agárralo y mantén para ir más rápido, o hacia atrás: donde esté, ahí está esa parte de la historia.
Desarrollo
Asignación a Salesfam como DevOps Junior
Fui asignado como DevOps Jr. al proyecto Salesfam, el cual estaba inactivo y sin commits desde hacía un año. Analicé en profundidad todo el código, la arquitectura y los despliegues para entender el sistema, operando con permisos limitados de escritura en el repositorio.
Lo que me enseñóComprendí cómo abordar proyectos legacy o desestructurados en entornos corporativos reales. Aprendí a auditar y descifrar bases de código abandonadas y a desenvolverme operativamente dentro de un marco de permisos restringido.
Error
Deuda técnica masiva y desalineación en el equipo de Salesfam
El proyecto presentaba 25 vulnerabilidades graves en Node, dependencias legacy obsoletas y un equipo multinacional desalineado debido a la mala comunicación en los SCRUMs. La acumulación de deuda técnica paralizaba el avance.
Cómo se solucionóTomé la iniciativa y asumí el liderazgo técnico: audité a fondo la deuda del código, estructuré los requerimientos de refactorización y creé un sistema claro de issues detalladas para que el resto de desarrolladores pudiera ejecutarlas.
Lo que me enseñóFue un gran punto de inflexión profesional. El excelente feedback del equipo reconoció mis dotes de liderazgo, lo que me ayudó a superar el síndrome del impostor y confiar plenamente en mi capacidad de gestión y resolución.
Error
Redefinición del alcance y decisión de reinicio (remake)
Corregimos la deuda técnica, integramos la infraestructura (Vercel, Render, MongoDB) y arreglamos el backend. Sin embargo, al crecer el equipo, el alcance y el diseño de producto se diluyeron por enfocarnos en parchear el código anterior en lugar de construir con una visión clara.
Cómo se solucionóDecidimos en equipo hacer un remake total del proyecto actualizando el stack tecnológico. Esto permitió definir una arquitectura clara desde cero y alinear a todos los desarrolladores bajo los mismos estándares y flujos de trabajo.
Lo que me enseñóAprendí a reconocer cuándo es mejor dar un paso atrás: a veces intentar desenredar un código base fallido cuesta más que empezar de cero. Tomar la decisión de reiniciar a tiempo ahorra recursos y garantiza la sostenibilidad a largo plazo.
Desarrollo
Definición de alcance y diseño de producto del nuevo Salesfam
Redefinimos el alcance del proyecto desde nuestra propia comprensión del problema. Durante este proceso, analicé detenidamente a la competencia y el mercado, lo que me permitió aportar nuevas ideas y darle un enfoque estratégico completamente renovado al producto.
Lo que me enseñóAdquirí competencias clave en diseño de producto (product design) e investigación de mercado (market research), aprendiendo a transformar el análisis competitivo en requerimientos técnicos y decisiones de valor para el negocio.
Desarrollo
Requerimientos funcionales, esquema técnico y arquitectura
Junto con el Dev Lead, definí la infraestructura, la estructura de repositorios y el bootstrap del proyecto. Establecimos una estrategia polyrepo con enfoque API-first usando OpenAPI y Swagger para fijar los contratos entre frontend y backend antes del desarrollo, centralizando las issues con GitHub Projects.
Lo que me enseñóProfundicé en diseño de arquitectura de software, especificación de contratos con OpenAPI/Swagger, gestión de entornos polyrepo y estructuración de pipelines de CI/CD para desarrollo modular.
Error
Falta de alineación y desacuerdos en el equipo
A pesar de mantener la documentación abierta y compartida (diseño, requerimientos y arquitectura), el equipo sufría falta de organización y alineación, lo que se hacía evidente durante las reuniones de SCRUM externas con RRHH y el CTO.
Cómo se solucionóEl Dev Lead y yo entrevistamos individualmente a cada desarrollador para entender sus barreras. Al detectar que preferían ejecutar tareas sin revisar las guías previas, asumimos la gestión del diseño general y les asignamos issues concretas para no frenar el avance.
Lo que me enseñóComprobé lo complejo que es gestionar visiones dispares sin una estructura sólida de decisiones. Entendí que un buen líder no siempre impone su método, sino que sabe adaptarse a la madurez de su equipo para mantener el proyecto en marcha.
Logro
Alineación del equipo y despliegue exitoso
Tras adaptar la metodología y desplegar toda la infraestructura con su pipeline de CI/CD en Vercel y Render, el proyecto finalmente tomó ritmo. Con una visión clara y unificada por parte de todo el equipo, dejamos el sistema operativo y listo para afrontar los siguientes desafíos.
Lo que me enseñóComprendí el valor de tomar la iniciativa para cohesionar un equipo con fallos de comunicación. Al profundizar en las necesidades individuales y ofrecer el camino de trabajo adecuado, descubrí que todos los miembros son enormemente valiosos.
Abierto a ayudar, trabajar y contribuir
Si algo de esto encaja con lo que estás construyendo, me gustaría saberlo.