$whoami --verboserole: AI EngineerDisponible

Joan Pellegrino

AI Engineer | Sistemas GenAI & LLM

Construyendo sistemas inteligentes que conectan LLMs, datos empresariales, APIs e infraestructura cloud.

5+Años Exp.
Enterprise AIEspecialización
99.9%Uptime SLA
Multi-AgentArquitectura

Pregúntame, no scrollees.

Toca y háblale a mi IA sobre mi trabajo.

Toca para hablar

Este sitio no guarda tu audio. Tu voz se procesa en tiempo real con Google Gemini. Se registran métricas básicas de sesión.

Python
Google ADK
Anthropic Claude
OpenAI
Google Gemini
LangChain
LangGraph
AWS Lambda
Amazon S3
Amazon DynamoDB
Snowflake
PostgreSQL
Pandas
Git
Astro
Tailwind CSS

Sistemas multi-agente autónomos, pipelines de integración y herramientas en producción

Proyectos Destacados y Arquitectura

joanp101/enterprise-agent-orchestrator
Private
Enterprise · Multi-Agente

Sistema de Inteligencia Multi-Agente Empresarial

Sistema multi-agente con estado construido con Google ADK y LangGraph, orquestando agentes especializados para flujos de trabajo empresariales autónomos. Incluye un agente de Inteligencia Documental con RAG para recuperación semántica de documentación técnica, un agente Text-to-SQL con validación de esquema y controles de seguridad de solo lectura, y una capa de orquestación de soporte que enruta consultas entre bases de conocimiento, bases de datos y APIs.

Orquestación Multi-Agente · RAG · Text-to-SQL · Grafo con Estado
PythonLangGraphGoogle ADKRAGText-to-SQLDynamoDBAWS EKS
# LangGraph Multi-Agent Orchestrator
graph = StateGraph(EnterpriseState)
graph.add_node("router", IntentRouter)
Caso de Estudio

System Architecture

flowchart TD
User["User Events (Slack / Zendesk / CLI)"] --> Router

subgraph EKS["Agent Services on AWS EKS"]
    Router["AgentRouter (gemini-2.0-flash)"]
    Router -->|"DATA_QUERY"| SQL["JobsSQLAgent"]
    Router -->|"DOCUMENTATION"| Docs["DocsRAGAgent"]
    Router -->|"DIAGNOSTIC"| Diag["SupportDiagAgent"]
    Router -->|"REEXECUTION"| Reexec["ReexecutionAgent"]
end

SQL --> DB[("PostgreSQL via MCP")]
Docs --> KB["Markdown Knowledge Base"]
Diag --> DB
Diag --> CW[("AWS CloudWatch Logs")]
EKS -.-> DDB[("DynamoDB (State & Memory)")]

Reexec --> API[("Backend API")]
API --> Batch[("AWS Batch")]

classDef default fill:#0f172a,stroke:#38bdf8,stroke-width:1px,color:#e2e8f0
classDef router fill:#881337,stroke:#f43f5e,stroke-width:1px,color:#fecdd3
classDef specialist fill:#1e1b4b,stroke:#818cf8,stroke-width:1px,color:#e0e7ff
classDef storage fill:#022c22,stroke:#10b981,stroke-width:1px,color:#d1fae5

class Router router
class SQL,Docs,Diag,Reexec specialist
class DB,CW,API,Batch,KB,DDB storage

Multi-Agent Router & Specialists Pattern

The system relies on a scalable Router + Specialists design deployed on AWS EKS. A central Custom Agent (Router) leverages LLMs to classify the intent of an incoming event (e.g., from a Support Ticketing System or Chat interface) and securely delegates execution to specialized downstream agents. All specialists share the same isolated session context and memory backend.

Data Query Agent

Resolves operational queries on relational databases securely via an isolated MCP Toolbox using curated SQL toolsets.

Documentation RAG Agent

Executes full-context document analysis over Markdown knowledge bases, ensuring exact requirement extraction without the fuzziness of vector search.

Diagnostic Agent

Analyzes errors and actively troubleshoots pipeline failures by querying Cloud Execution Logs and relational metadata.

Re-execution Agent

An orchestrator agent that digests ticketing events, validates requirements, triggers jobs via backend API (running on AWS Batch), and safely updates the ticket status upon completion.

State & Persistence Layer

Chat sessions and state transitions are robustly maintained using DynamoDB with automated TTL policies, persisting session memory and execution traces reliably.

joanp101/smart-parser-claude-plugin
Private
Herramienta de Producción

Plugin Smart-Parser para Claude

Plugin personalizado para Claude con skills agénticas especializadas para generar parseadores resilientes y scripts de validación de archivos complejos, acelerando drásticamente el ciclo de creación de rutinas de ingesta.

Skills Agénticas con LLM · Claude API · Python
Claude APIPythonPrompt EngineeringParser Engine
# Claude Custom Skill: File Parser Engine
@claude_skill("parse_complex_stream")
async def generate_parser(stream: ByteStream):

System Architecture

flowchart LR
A["Claude Code CLI"] -->|"Loads via Settings"| B("Local Plugin Marketplace")
B --> C{"Agentic Skills Layer"}
C -->|"new-script"| D["Code Generation Engine"]
C -->|"validate"| E["Automated Reviewer"]
C -->|"git-deliver"| F["Workflow Automation"]
D --> G[("Internal Enterprise Repo")]
E --> G
F --> H["Enterprise Git Provider"]

classDef default fill:#0f172a,stroke:#38bdf8,stroke-width:1px,color:#e2e8f0
classDef core fill:#881337,stroke:#f43f5e,stroke-width:1px,color:#fecdd3
classDef base fill:#022c22,stroke:#10b981,stroke-width:1px,color:#d1fae5

class C core
class G,H base

LLM Developer Tools Architecture

This project extends the LLM CLI capabilities via a custom local marketplace plugin. It embeds domain-specific intelligence for an Enterprise ETL Engine, enabling the agent to autonomously navigate complex internal contracts, generate specialized data parsers, and execute standard code delivery workflows.

Code Generation

Synthesizes atomic data transformations, API managers, and complex parsers adhering strictly to internal codebase standards and templates.

Automated Review

Proactively inspects existing ETL scripts, flagging critical security or structural deviations with categorized severity levels.

Workflow Automation

Manages the end-to-end Git lifecycle, discovering local repositories, creating conventional feature branches, and submitting templated Pull Requests.

Skill Implementation

The plugin is built using a highly structured declarative format with metadata routing. Each capability is isolated in its own skill module backed by prompt engineering techniques that inject dynamic reference documentation into the LLM context.

joanp101/distributed-event-pipeline
Private
Arquitectura Cloud & Datos

Motor Distribuido de Ingesta con APIs REST y AWS S3

Arquitectura ETL y de ingesta de alto rendimiento conectando fuentes heterogéneas (APIs RESTful, SFTP, AWS S3, GCS) hacia Snowflake y PostgreSQL con transformación de datos en Pandas y pipelines serverless tolerantes a fallos.

Millones de eventos diarios · Integración con APIs REST Serverless
PythonPandasRESTful APIsAWS S3AWS LambdaSnowflakePostgreSQL
# REST API & AWS S3 Ingestion Engine
raw_data = fetch_api_payload("https://api.enterprise.com/v1")
df = pd.DataFrame(raw_data).transform()

System Architecture

flowchart TD
    subgraph Sources["Heterogeneous Data Sources"]
        API["RESTful APIs / Webhooks"]
        SFTP["SFTP Server"]
        ExtS3["External S3 / GCS"]
    end

    subgraph Ingestion["Ingestion & Buffer"]
        LambdaIngest["Ingestion Lambda Worker"]
        RawS3[("AWS S3 Raw Lake (Bronze)")]
    end

    subgraph Processing["Serverless Transformation"]
        ETLLambda["Transform Lambda (Pandas Engine)"]
        DLQ[("Amazon SQS (DLQ)")]
    end

    subgraph Destinations["Dual Analytical Storage"]
        Snowflake[("Snowflake Data Warehouse")]
        Postgres[("PostgreSQL Operational DB")]
    end

    API --> LambdaIngest
    SFTP --> LambdaIngest
    ExtS3 --> LambdaIngest

    LambdaIngest --> RawS3
    RawS3 --> ETLLambda

    ETLLambda -->|"Schema Deviation / Error"| DLQ
    ETLLambda -->|"Parquet Curated Batches"| Snowflake
    ETLLambda -->|"Relational Operational Data"| Postgres

    classDef default fill:#0f172a,stroke:#38bdf8,stroke-width:1px,color:#e2e8f0
    classDef source fill:#1e1b4b,stroke:#818cf8,stroke-width:1px,color:#e0e7ff
    classDef worker fill:#881337,stroke:#f43f5e,stroke-width:1px,color:#fecdd3
    classDef storage fill:#022c22,stroke:#10b981,stroke-width:1px,color:#d1fae5
    classDef alert fill:#450a0a,stroke:#ef4444,stroke-width:1px,color:#fee2e2

    class API,SFTP,ExtS3 source
    class LambdaIngest,ETLLambda worker
    class RawS3,Snowflake,Postgres storage
    class DLQ alert

Distributed Ingestion & ETL Engine Architecture

High-throughput, event-driven data pipeline designed to ingest, validate, and normalize records from disparate enterprise channels. Operates with an isolated buffer layer in AWS S3 and an automated schema enforcement engine to stream structured datasets directly into analytical warehouses and transactional stores.

Heterogeneous Ingestion

Orchestrates automated connectors across RESTful APIs, SFTP endpoints, and third-party cloud buckets, validating payload headers and raw checksums.

Serverless Transformation

Vectorized Pandas data transformations running in AWS Lambda, executing schema type coercions, deduplication, and snappy Parquet compression.

Dual Storage Engine

Concurrent multi-sink delivery feeding Snowflake for petabyte-scale analytics and PostgreSQL for low-latency operational reporting.

Fault Tolerance & Dead-Letter Queue (DLQ)

Any structural deviation or transient connection timeout triggers automated exponential backoff. Irrecoverable payloads are routed to an isolated Amazon SQS Dead-Letter Queue accompanied by CloudWatch alerts, guaranteeing zero data loss and straightforward replayability.

joanp101/portfolio
main
Live demo

Agente de Voz para Portafolio

Agente de voz conversacional en tiempo real integrado en este sitio. Los visitantes pueden hablar con una IA que responde preguntas sobre mis proyectos, stack y experiencia, con una interfaz basada en estados (inactivo, escuchando, pensando, hablando) y audio procesado por Google Gemini.

Gemini Live API · State Machine · Audio Context
GeminiWeb Audio APIWebSocketsAstro
# Real-time Web Audio API & Gemini WS
this.ws = new WebSocket(geminiWsUrl)
this.mic = new MicCapture(ctx, sendAudioChunk)

Tecnologías con las que trabajo

Stack Tecnológico

01.Ingeniería AI & GenAI

10 tools
Google ADKLangGraphLangChainRAGText-to-SQLMulti-Agent OrchestrationGemini APIOpenAI APIAnthropic Claude APIVector Databases

02.Cloud e Infraestructura

8 tools
AWS LambdaAWS S3API GatewayDynamoDBAmazon SQSGCPServerlessEvent-Driven

03.Datos y Lenguajes

7 tools
PythonSQLSnowflakePostgreSQLETL/ELT PipelinesRESTful APIsTypeScript

04.Herramientas & DevOps

7 tools
GitDockerCI/CDAWS GlueSFTPAstroTailwind CSS

Mi trayectoria profesional

Experiencia

Senior Integrations Engineer

Simetrik

commit 2020..Sep 2026
  • Diseñó y construyó un sistema multi-agente con estado coordinando agentes especializados (Asistente ETL, Soporte, Troubleshooting) vía Google ADK y LangGraph, habilitando la resolución autónoma de consultas de soporte empresarial.
  • Construyó un pipeline de Inteligencia Documental y RAG para recuperación semántica de documentación técnica, permitiendo a equipos no técnicos acceder a conocimiento especializado mediante consultas en lenguaje natural.
  • Diseñó e implementó un agente Text-to-SQL con validación de esquema y controles estrictos de solo lectura, proporcionando acceso seguro y contextual a bases de datos relacionales.
  • Desarrolló un Smart-Parser Plugin para Claude potenciado por LLM con skills agénticas para generar parseadores resilientes y scripts de validación para formatos complejos estructurados y semi-estructurados.
  • Diseñó y construyó pipelines ETL/ELT escalables integrando datos de fuentes heterogéneas (APIs RESTful, SFTP, AWS S3, GCS, BigQuery) en Snowflake y PostgreSQL, procesando millones de transacciones financieras diarias con 99.9% de disponibilidad.
  • Implementó integraciones en tiempo real mediante APIs RESTful, webhooks y arquitecturas event-driven (AWS SQS) para sincronización resiliente de datos entre sistemas distribuidos.
  • Construyó arquitecturas serverless en AWS (Lambda, S3, API Gateway, DynamoDB, SQS) y GCP para pipelines de procesamiento escalables orientados a eventos.
  • Colaboró directamente con clientes empresariales para diseñar soluciones de integración alineadas con los objetivos del negocio, garantizando confiabilidad en la entrega y observabilidad del sistema.
PythonGoogle ADKLangGraphRAGAWSGCPSnowflakePostgreSQLBigQuery
✦ Sobre Mí

Construyo sistemas inteligentes.

Ingeniero senior con base sólida en integraciones empresariales, sistemas distribuidos, arquitectura cloud e ingeniería de datos — actualmente enfocado en construir sistemas de AI/GenAI con agentes, LLMs, RAG y flujos de datos inteligentes.

Diseño e implemento sistemas multi-agente con Google ADK y LangGraph, pipelines RAG para recuperación semántica de documentos, y agentes Text-to-SQL para acceso estructurado a datos. Mi trayectoria en APIs, arquitecturas event-driven e infraestructura cloud (AWS, GCP) me da la perspectiva de sistemas para construir IA que se conecta a datos empresariales reales.

Mi experiencia en integraciones empresariales no es un capítulo separado — es la base que hace que los sistemas de IA estén listos para producción: confiables, escalables y conectados a las fuentes de datos que importan.

// evolución de ingeniería

Enterprise Systems
Integrations & APIs
Cloud + Data Engineering
Distributed Systems
AI / GenAI Systems

Anteriormente en

Simetrik

Ubicación

Colombia

Educación

Ingeniería de Sistemas — Universidad de Córdoba

commit 2015..2019
"Los sistemas de IA más confiables se construyen sobre bases sólidas de ingeniería — conectados a datos reales, diseñados para producción y fundamentados en los sistemas que automatizan."
Joan Pellegrino · AI Engineer | Sistemas GenAI & LLM

Conectemos

Contacto

$init --collaborate

Construyamos algo inteligente

Abierto a oportunidades en Ingeniería de IA, GenAI y Sistemas LLM.

o encuéntrame en

joanpellegrino04@gmail.com