All work

Case study 02

Device-Lifecycle Platform

One auditable system replacing spreadsheet-and-email operations for a German medical-device manufacturer.

Full Stack DeveloperAlgoSoft Technologies LimitedSep 2025 - Present
Node.jsExpressMongoDBNext.jsTypeScriptSocket.ioQStashFirebase FunctionsOpenAIUpstash Vector
445
devices tracked
417
clinics
3
portals
admin · customer · reseller
1,100+
commits
top contributor

Team project at AlgoSoft; I led development as top contributor (1,100+ commits) across backend and frontend. The RAG chatbot was co-built.

Context

A German neurofeedback medical-device manufacturer ran its fleet on spreadsheets and email: device registrations, warranty renewals, support requests, repair logistics. AlgoSoft builds their device-lifecycle platform; I led its development as top contributor with 1,100+ commits.

The platform covers device registry, warranty administration, support ticketing, and EU-MDR-oriented quality management for 445 devices across 417 clinics, through admin, customer, and white-label reseller portals.

What I built

Warranty-renewal pipeline

  • QStash-scheduled automation sends four escalating EN/DE-localized reminder emails from 90 days down to 1 day before expiry.
  • Deduplicated by a unique-indexed reminder log, with a full delivery audit trail.

AI support-inbox triage

  • A background IMAP poller hands each inbound email to OpenAI, which parses it into a structured ticket: urgency, problem type, and device serial automatically matched against the registry.
  • AI-suggested agent assignment routes tickets to the right person before anyone reads the inbox.

RAG support chatbot (co-built)

  • Retrieval over Upstash Vector with BGE-M3 embeddings and cross-encoder reranking.
  • SSE-streaming widget with token-by-token output, clickable source citations, and graceful loading, error, and retry states.

Cross-system sync

  • A reseller service mirrors device movements from two independent deployments into the central registry.
  • A Shopify-to-platform event broker (Firebase Functions, Firestore, Cloud Tasks) converts paid orders into customer records, license issuance, and provisioning tasks. Every event is HMAC-verified, idempotent, and auto-retried.

Real-time portals

  • Socket.io across all three portals: live device-movement updates, support chat, and server-cache synchronization, so changes appear everywhere without a refresh.
  • Support-ticket intake rebuilt as a five-step wizard with timezone- and holiday-aware slot scheduling and embedded real-time chat.

Quality management & training LMS

  • EU-MDR-oriented QMS: multi-stage document approval, version control, electronic signatures, and automated PDF generation for compliance documentation.
  • In-house training LMS (Next.js 15, React 19): an AI quiz generator using structured-output GPT-4o-mini (multiple-choice and matching questions with explanations), plus enrollment and certificate flows with public certificate verification.

Decisions & trade-offs

Idempotency before speed on the Shopify broker

Payment webhooks arrive at-least-once. Every event is processed idempotently with automatic retries, so a replayed webhook can never double-issue a license or duplicate a customer.

A unique index as the dedup guard, not application logic

Cron restarts and overlapping schedules can re-fire reminders. A unique-indexed reminder log makes double-sends structurally impossible at the database layer instead of best-effort in code.

SSE over WebSockets for the chatbot

A one-directional token stream doesn't need a socket. Server-sent events ride plain HTTP, reconnect for free, and keep the streaming widget simple.

Outcome

  • Spreadsheet- and email-based workflows replaced with one auditable system spanning three portals.
  • 445 devices across 417 clinics tracked through registry, warranty, support, and quality management.
  • Support intake triaged by AI before a human touches it; documentation answerable through a cited, streaming chatbot.