Guía para Reclutador Tech
Esta guía presenta cómo las capacidades descritas en mi trayectoria profesional se traducen en un sistema real: arquitectura modular, APIs tipadas, automatización de contenido y operación observable en tiempo real. El proyecto integra microservicios versionables, contratos REST (Pydantic ↔ TypeScript), flujos administrativos autenticados y documentación técnica ejecutable, ofreciendo evidencia concreta de diseño, implementación y evolución continua de producto.
Ruta de validación técnica
Esta sección conecta directamente la experiencia descrita en mi CV con evidencia técnica ejecutable en este repositorio. La intención es que puedas validar arquitectura, calidad de implementación, operación y automatización sin quedarte en declaraciones teóricas.
Cómo interpretar esta guía
- Arquitectura aplicada: separación efectiva entre frontend, APIs de dominio, ingesta y chatbot.
- Rigor técnico: contratos tipados Pydantic/TypeScript y documentación OpenAPI ejecutable.
- Operación: health checks, latencias y procesos administrativos con autenticación.
- Evolución inteligente: flujo CV PDF → datos estructurados → consumo web/API/chat.
Stack clave
Next.js 14 (App Router) con React 18 y TypeScript para SSR/ISR, SEO técnico y UI responsiva.
- Metadatos controlados server-side, generación de `sitemap.xml`, `robots.txt` y JSON-LD de persona.
- Tailwind CSS y componentes animados con Framer Motion para microinteracciones accesibles.
- Consumo de microservicios mediante variables `NEXT_PUBLIC_*` y fetch incremental para evitar vendor lock-in.
FastAPI, Pydantic y uvicorn para servicios REST tipados, con fallback offline y soporte WebSockets.
- Endpoints idempotentes (`/profile`, `/projects`, `/github/projects`) con validaciones Pydantic.
- Rutas administrativas protegidas por `X-Admin-Token` (`/github/sync`, `/admin/ingest-cv`).
- Canal `/ws/updates` para notificaciones en tiempo real y pruebas de event streaming.
Data source versionada en JSON y servicios dedicados para ingesta y sincronización de contenido.
- Servicio `content-ingest` extrae texto del CV (pypdf) y normaliza campos en `data/*.json`.
- Scripts de sincronización GitHub para cachear repositorios con métricas de estrellas y descripción.
- Separación de data frontend (`/public/data`) y data backend (`/data`) para optimizar render vs. API.
Docker Compose orquesta microservicios, GitHub Actions valida builds y pruebas, secrets vía `.env`.
- Compose define redes aisladas, volúmenes compartidos y hot reload (`--reload`, `pnpm dev`).
- Makefile centraliza seeds, builds, pruebas y shortcuts operativos.
- Pipeline CI ejecuta lint/build en frontend y backend, asegurando consistencia semántica antes del deploy.
Arquitectura de microservicios
Publica perfil, experiencia, educación y soft skills desde el volumen `./data` con fallback local.
- `GET /profile`, `/experience`, `/education`, `/soft-skills` generan el contenido consumido por Next.js.
- Montaje compartido de `./data` permite actualizar JSON sin reconstruir la imagen.
- Health check `/health` monitoreado desde el dashboard para uptime y latencia.
Gestiona proyectos propios y repos GitHub cacheados, habilitando sincronización on-demand.
- `GET /projects` expone catálogo curado, mientras `GET /github/projects` entrega repos cacheados.
- `POST /github/sync` consume la API de GitHub autenticada opcionalmente con token personal.
- Datos persistidos en `data/projects.json` y `data/github.json` para resiliencia en modo offline.
Servicio de ingesta que transforma el PDF del CV a texto indexable para los demás microservicios.
- `POST /ingest/cv` (tokenizado) procesa el PDF y actualiza `data/cv_text.txt`.
- Permite automatizar resúmenes y actualizaciones sin manipular manualmente los datos crudos.
- Expone `/health` para validar disponibilidad antes de ejecutar pipelines.
Proxy configurable que orquesta prompts con contexto del CV, soportando modo stub sin API key.
- `POST /chat` y `/ws` habilitan respuesta síncrona y streaming conversacional.
- Rate limiting configurable vía variables (`MAX_QUESTIONS_*`, `COOLDOWN_SECONDS`).
- Integra tokens públicos para front y secretos para admin, aislando permisos.
UI que consume microservicios y expone assets estáticos optimizados para SEO y accesibilidad.
- Server Components combinados con rutas dinámicas para secciones del CV y panel de referencia.
- Panel “Referencia API” consulta health checks y sincroniza repos via fetch y almacenamiento local.
- Publica datasets en `/public/data` para render instantáneo mientras los servicios cargan.
Dashboard de servicios
Sincronización de repositorios GitHub
Sin repos sincronizados aún.