Volver al inicio

Proyectos

Una selección de lo que he construido y lo que estoy explorando, del backend distribuido a los sistemas de bajo nivel.

Proyecto principal

API distribuida event-driven

Código

Plataforma de microservicios comunicados de forma asíncrona mediante un bus de eventos. Los servicios de Go manejan rutas de alto rendimiento y los de Python orquestan lógica de negocio y procesamiento. Pensada para escalar horizontalmente y tolerar fallos parciales.

  • Throughput sostenido ~1.2k req/s con latencia p99 ≈ 54 ms bajo carga
  • Kafka sobre SQS por replay y orden por partición; consumidores idempotentes con patrón outbox
  • Contratos entre servicios vía gRPC y esquemas Protobuf versionados
  • Despliegue en Kubernetes (3 réplicas, rolling updates) y CI en GitHub Actions
  • Observabilidad: logs estructurados, métricas Prometheus y tracing con OpenTelemetry
  • Go
  • Python
  • Apache Kafka
  • PostgreSQL
  • Redis
  • Docker
  • Kubernetes
Estudio

Algoritmos en C

Código

Colección de implementaciones en C de estructuras de datos y algoritmos clásicos, con foco en gestión de memoria, complejidad y casos límite. Una base para entender qué ocurre por debajo de las abstracciones.

  • Suite con salida limpia de Valgrind: 0 fugas de memoria
  • Estructuras: BST, hashmap (open addressing), heap binario y grafos (BFS/DFS/Dijkstra)
  • Notas de complejidad O(·) y micro-benchmarks por operación
  • C
  • Make
  • Valgrind
En progreso

Exploración en Rust

Código

Aprendizaje activo de Rust a través de pequeñas herramientas de línea de comandos y servicios, explorando ownership, concurrencia segura y el ecosistema async (Tokio).

  • CLI con clap y manejo de errores con Result + thiserror
  • Concurrencia async con Tokio: tareas paralelas sin data races
  • Ownership y lifetimes aplicados a código real; cero unsafe
  • Rust
  • Tokio
  • Cargo