Cristian Olivares - @visibait
Cristian O.
  • Sobre mí
  • Tecnologías
  • Portfolio
  • Contacto
ENEnglishHablemos
Cristian Olivares

Cristian Olivares (@visibait) 👋

Apasionado de 21 años, Full Stack Engineer autodidacta 🖥️ y CTO en VENTRY y Gravitance, con experiencia en más de 15 proyectos en producción. 🌍

Trabajemos 👋 juntosTrabajemos 👋 juntos
Trabajemos 👋 juntosTrabajemos 👋 juntos

Copyright @visibait 2026. Hecho con Next.js

CartX | TFG
Rol:
Lead Developer y Arquitecto del Sistema
Tipo de proyecto:
Trabajo de Fin de Grado (TFG) - DAM
Enfoque:
Sistema de cobro automático con RFID
Organización en GitHub

Resumen

CartX es un sistema de cobro automático que sustituye las cajas de autoservicio por un portón inteligente con RFID. Como lead developer y arquitecto del sistema, diseñé e implementé una solución completa que permite terminar la compra en menos de 30 segundos simplemente cruzando el portón con el carrito.

Este Trabajo de Fin de Grado del ciclo de Desarrollo de Aplicaciones Multiplataforma en MEDAC Davante Elche es un ecosistema completo de automatización retail, con gestión de inventario en tiempo real, soporte multiidioma e IA para detección de presencia.

  • Node.js
  • TypeScript
  • React Native
  • Electron.js
  • MongoDB
  • Socket.IO
  • TensorFlow
  • RFID
Estructura del sistema CartX
Tu navegador no soporta la etiqueta de vídeo.

Arquitectura y componentes

CartXCloud (Backend): Desarrollé la infraestructura backend con Node.js, TypeScript y MongoDB, con comunicación en tiempo real mediante Socket.IO para sincronizar al instante todos los componentes. Integré Fastify para una API de alto rendimiento y big.js para cálculos monetarios exactos, sin errores de redondeo.

CartXUI (Interfaz del portón): Construí el portón de doble pantalla con Electron.js y React, con TensorFlow para la detección de presencia y la capa de comunicación RFID para identificar los productos automáticamente. La interfaz soporta 6 idiomas y da feedback en tiempo real durante el cobro.

CartXStockerApp (Gestión móvil): Creé una app en React Native con Expo para la gestión de inventario: vinculación de códigos de barras con etiquetas RFID, métricas de tienda en tiempo real y flujos de reposición pensados para los empleados.

Innovaciones técnicas

Arquitectura multi-tenant: El sistema soporta varias tiendas con datos y configuración aislados, escalando a nivel empresa sin perder seguridad ni rendimiento.

Sincronización en tiempo real: Comunicación por WebSockets para que portón, apps móviles y backend se actualicen al instante.

Experiencia con IA: Visión por computador con TensorFlow para detectar la presencia del cliente y adaptar la interfaz a su comportamiento.

Integración de hardware: Drivers y protocolos propios para los lectores RFID, garantizando una detección fiable de los productos.

Retos y soluciones

Precisión en los cálculos: big.js para operar con importes con precisión absoluta, algo crítico en un entorno de cobro.

Compatibilidad multiplataforma: Electron.js en el portón para un rendimiento consistente en distintas configuraciones de hardware.

Consistencia de datos en tiempo real: Mecanismos de sincronización para gestionar transacciones concurrentes y mantener el inventario exacto en todos los puntos de acceso.

Estado del proyecto y contexto académico

El proyecto se desarrolló como Trabajo de Fin de Grado del ciclo superior de DAM en MEDAC Davante Elche. Aunque el centro priorizó la parte de negocio frente a terminar el software, la base técnica demuestra capacidades full-stack avanzadas y soluciones innovadoras para el sector retail.

El proyecto aplica prácticas modernas como microservicios, comunicación en tiempo real, diseño mobile-first e integración de IA.

Impacto y visión de futuro

CartX elimina los cuellos de botella de las cajas tradicionales y crea una experiencia de compra sin fricciones. Su arquitectura deja la puerta abierta a analítica predictiva, análisis del comportamiento del cliente e integración con nuevos medios de pago.

Combinando RFID, frameworks web modernos e IA, CartX demuestra cómo una buena arquitectura de software y un diseño centrado en el usuario pueden transformar procesos retail tradicionales.