SafeSense — SIMS Technology IoT Platform
Production IoT platform for agroindustry and laboratories in Peru: portable sensors, real-time monitoring, automated alerts, and audit-ready dashboards — full stack from Arduino edge to web and mobile.
Role
Full-stack engineer — hardware edge, API architecture, Angular v1, React v2 migration, and Expo mobile Ingeniero full stack — edge hardware, arquitectura API, Angular v1, migración React v2 y móvil ExpoProblem
Cold-chain and lab processes relied on manual readings and disconnected thermometers — failures were discovered after product loss, with weak traceability for HACCP/ISO audits. La cadena de frío y procesos de laboratorio dependían de lecturas manuales y termómetros sin conectividad — las fallas se detectaban tras pérdida de producto, con trazabilidad débil para auditorías HACCP/ISO.Impact
Live product at sims-technology.com — end-to-end SafeSense stack with multi-tenant operations, incident alerts (email, SMS, WhatsApp), and exportable compliance reports. Producto en vivo en sims-technology.com — stack SafeSense de punta a punta con operación multitenant, alertas de incidencias (email, SMS, WhatsApp) y reportes exportables para cumplimiento.Technical stack
Layer-by-layer breakdown of subsystems, repositories, and production concerns.
Hardware & edge (Arduino / MQTT) Hardware y edge (Arduino / MQTT)
Portable Wi-Fi temperature sensors with MQTT telemetry (~30s intervals), rechargeable battery (~5h), and 3D-printed enclosures for cold-chain and lab transport. Sensores portátiles Wi-Fi con telemetría MQTT (~30s), batería recargable (~5h) y carcasas impresas en 3D para cadena de frío y transporte en laboratorio.
- Critical range monitoring (2°C–8°C) for agro and clinical samples Monitoreo de rango crítico (2°C–8°C) para agro y muestras clínicas
- Lightweight protocol and low-power edge design Protocolo liviano y diseño edge de bajo consumo
Waterbox API (NestJS backend) API Waterbox (backend NestJS)
Central IoT orchestrator: REST, Socket.IO, and MQTT client with multi-tenant companies, sensors, measurements, panels, and automated incident notifications. Orquestador IoT central: REST, Socket.IO y cliente MQTT con empresas multitenant, sensores, mediciones, paneles y notificaciones automáticas de incidencias.
- Migration NestJS 6 → 11 with hexagonal modules and command/query handlers Migración NestJS 6 → 11 con módulos hexagonales y handlers command/query
- Email, SMS (Nexmo), and mobile push for threshold breaches Email, SMS (Nexmo) y push móvil ante umbrales críticos
Web dashboard v1 (Angular 9 — SIMS) Dashboard web v1 (Angular 9 — SIMS)
First-generation SIMS console: lazy-loaded modules for sensor management, live measurements, charts, sectors, components, accounts, and operational reports. Primera consola SIMS: módulos lazy-loaded para gestión de sensores, mediciones en vivo, gráficos, sectores, componentes, cuentas y reportes operativos.
- Production foundation integrated with Waterbox REST API Base productiva integrada con API REST Waterbox
- Modules: gestión sensores, sensores, mediciones, incidencias Módulos: gestión sensores, sensores, mediciones, incidencias
Web dashboard v2 (React migration) Dashboard web v2 (migración React)
Full Angular → React rewrite: feature-based SPA with Vite, Tailwind, Recharts, Socket.IO live updates, role-based access, and Excel exports. Reescritura completa Angular → React: SPA por features con Vite, Tailwind, Recharts, actualizaciones Socket.IO, roles y exportación Excel.
- Feature parity with v1 plus improved UX and maintainability Paridad con v1 y mejor UX/mantenibilidad
- Monitoring, incidents, sectors, and components modules Módulos monitoreo, incidencias, sectores y componentes
SafeSense mobile (Expo) SafeSense móvil (Expo)
React Native app for field teams: JWT in SecureStore, live sensor groups, incident history, Socket.IO refresh, and FCM push registration. App React Native para equipos de campo: JWT en SecureStore, grupos de sensores en vivo, historial de incidencias, refresh Socket.IO y registro FCM.
- Tab navigation: home, alerts, monitoring, account Navegación por tabs: inicio, alertas, monitoreo, cuenta
- Same real-time incident contract as web dashboards Mismo contrato de incidencias en tiempo real que los dashboards web
Related topics
Explore curated hubs that connect this work with case studies, articles, and learning repos.