← Projects
Case Study

OTT Platform

Playbulous·EdTech · OTT · Streaming·Apr 2021 – Aug 2022
React.jsNode.jsMongoDBPostgreSQLAWSElasticsearchKafka
Multi
Tenant isolation achieved
HLS
Adaptive streaming delivered
RT
Content discovery via Elasticsearch

Overview

A multi-tenant OTT SaaS platform serving EdTech providers and entertainment operators, supporting adaptive video streaming, subscription billing, and content discovery across web and mobile.

The Problem

Building a streaming platform from scratch for multiple tenants, each with different content catalogues, subscription models, and branding requirements. The core challenge was designing a multi-tenant architecture that could isolate tenant data, scale media delivery independently of the application tier, and support flexible billing without per-tenant customisation work.

Approach

Multi-tenant architecture with tenant context

Designed a shared-database multi-tenancy model with tenant context injected at the middleware layer. Every query is scoped by tenant ID, with row-level policies enforced in PostgreSQL. Tenant-specific branding and feature flags are loaded from a configuration service at request time.

Adaptive streaming with AWS S3 + CloudFront

Built a media pipeline that transcodes uploaded video into HLS format at multiple bitrates using AWS MediaConvert, stores segments in S3, and delivers them via CloudFront with signed URLs. The player client adapts quality in real time based on the viewer's bandwidth.

Content discovery with Elasticsearch

Indexed the content catalogue in Elasticsearch with full-text search, faceted filtering by genre and age rating, and personalised ranking based on viewing history. Kafka events from the viewing service kept the index updated in near real-time without blocking the main application.

← All projectsGet in touch →