← All projects
professional·division5 & oraya·Jul 2025 – Present

Retail Analytics Platform

Multi-tenant sales index & competitor intelligence

ReactReact QueryMaterial UIExpress.jsTypeScriptPostgreSQLWorker ThreadsExcel / CSV Export

Overview

This platform ingests competitor pricing and sales data for millions of products via internal web crawlers, stores it in PostgreSQL, and powers analytical workflows for major retailers. My focus was correctness of business-critical matching and index calculation logic, configurable tenant experiences, and high-throughput Excel export pipelines across three repositories: a React frontend, an Express.js main backend, and a dedicated multithreaded export service.

Architecture

flowchart TB
  User(["Retail analyst"])

  subgraph frontendRepo ["Frontend repo"]
    UI["React + React Query + MUI"]
  end

  subgraph backendRepo ["Main backend repo"]
    direction TB
    API["Express.js TypeScript API"]
    Logic["Matching + sales index logic"]
    Filters["Tenant / user filters and layouts"]
  end

  subgraph dataLayer ["Data"]
    direction LR
    Crawlers["Internal web crawlers"]
    DB[(PostgreSQL)]
  end

  subgraph exportRepo ["Export service repo"]
    direction TB
    ExportAPI["Export service"]
    Workers["Worker threads"]
    Chunks["Chunked fetch + Excel/CSV generate"]
    Merge["Merge temporary files"]
  end

  User --> UI
  UI -->|"API requests"| API
  API --> Logic
  API --> Filters
  API --> DB
  Crawlers --> DB
  UI -->|"Export request"| API
  API -->|"Delegates export job"| ExportAPI
  ExportAPI --> Workers
  Workers --> Chunks
  Chunks --> DB
  Chunks --> Merge
  Merge -->|"Excel / CSV file"| UI

Summary

A multi-tenant retail analytics platform that calculates sales indices for large retailers across Germany, Austria, Bulgaria and Italy, processing competitor pricing and sales data for millions of products.

What I worked on

  • Fixed and improved business-critical logic for matching client articles with competitor products and calculating weekly sales indices.
  • Designed and implemented configurable filtering systems for tenant- and user-specific page layouts, data views, and column configurations.
  • Independently developed a high-performance export service generating Excel files from large PostgreSQL result sets.
  • Wrote test suites covering critical business logic.
  • Optimized export performance with worker threads: parallel data fetching, chunked file generation, and merge into a final Excel output.
  • Implemented dynamic export configurations so users can export the currently viewed dataset or custom column selections.
  • Delivered multiple tenant-specific custom export formats for client reporting requirements.

Results

  • Reliable weekly sales index calculations across multiple European markets
  • Tenant- and user-specific layouts, filters, and table configurations
  • Excel exports from hundreds of thousands of database records
  • Parallelized export pipeline using Node.js worker threads
  • Custom export formats tailored to client analytics workflows