Skip to content

← Back to the Labs

L3:event-tech-search-backend · Software Wing · Featured

Event matchmaking and feedback analytics

Improved matchmaking search and LLM-based feedback analysis for a Singapore event-tech company.

Client
Jublia
Role
Backend Engineer (freelance, remote)
Period
Sep 2023 to Dec 2023

Results

  • +40%

    Increase in search relevance with collaborative filtering

    Self-reported in my CV; the measurement method was not recorded.

    Self-reported
  • -25%

    Reduction in server response time after PostgreSQL tuning

    Self-reported in my CV; no public artifact is available.

    Self-reported
  • 96%

    Sentiment classification accuracy, evaluated on a 200-sample labelled set

    Self-reported in my CV; based on a small evaluation set.

    Self-reported
  • +50%

    Increase in feedback analysis speed with queued daily reports

    Self-reported in my CV; no public artifact is available.

    Self-reported

Problem

Jublia's trade-event matchmaking needed more relevant results for people and exhibitors. Manual analysis of post-event NPS, CSAT and free-text feedback was too slow.

What I did

  • I improved match ranking with Elasticsearch and collaborative filtering.
  • I tuned PostgreSQL queries serving the slowest endpoints.
  • I built a LangChain and OpenAI sentiment service for NPS and CSAT feedback and evaluated it on a 200-sample labelled set.
  • I queued daily sentiment reports with RabbitMQ, removed legacy Flask features and ran Locust load tests.

Architecture

  1. ClientEvent platformEvent attendees and exhibitors
  2. ServiceSearch and matching APICollaborative filtering
  3. DataElasticsearchSearch result ranking
  4. DataPostgreSQLProfile and feedback records
  5. DataRabbitMQQueued daily report jobs
  6. AISentiment serviceLangChain and OpenAI

Data flow

  • Event platform to Search and matching API (search)
  • Search and matching API to Elasticsearch (ranked queries)
  • Search and matching API to PostgreSQL (SQL)
  • Search and matching API sends asynchronously to RabbitMQ (report jobs)
  • RabbitMQ sends asynchronously to Sentiment service (feedback batches)

Tech stack

  • Elasticsearch
  • PostgreSQL
  • LangChain
  • OpenAI
  • RabbitMQ
  • Flask
  • Locust

L2 · Related career entryBackend Engineer (freelance, remote) · Jublia (Singapore)