Platform Profile: StreamVerse
For this capstone, we design the NSA for StreamVerse — a video/audio content platform serving 80M subscribers globally with original content, user-generated content, and live streaming.
| Attribute | Details |
|---|---|
| Subscribers | 80M globally across 45 countries |
| Content Library | 2M titles (video, audio, interactive) |
| Daily Streams | 500M stream starts per day |
| Creators | 200K active content creators + in-house studios |
| Content Types | Movies, series, live sports, UGC, podcasts, interactive stories |
| Current Pain | Cold-start problem, buffering in emerging markets, manual content tagging |
Scale Challenges
- 500M daily stream starts — Each requires instant recommendation, auth, CDN routing
- 2M content titles — Metadata, encoding, rights management at massive scale
- 45 countries — Content rights vary by region; latency must be <100ms everywhere
- Real-time personalization — Homepage must be different for every user, every visit
- Creator tools — Upload, transcode, analytics, monetization — self-service at scale
Content Platform NSA Principles
- Personalization-Native — Every surface personalized in real-time; no two users see the same experience
- Edge-First Delivery — Content and computation pushed to edge; users served from nearest node
- Content-as-Graph — All content is a node in a knowledge graph; relationships drive discovery
- Creator-Empowered — Self-service tools for upload, analytics, monetization; creator success = platform success
- Adaptive Quality — Every stream adapts to device, network, and user preference in real-time
- Data-Informed Everything — Every pixel on screen earned its place through experimentation
Target Architecture
flowchart TB
subgraph L5["🖥️ Client Experience Layer"]
direction LR
C1[Smart TV]
C2[Mobile]
C3[Web]
C4[Gaming Console]
end
subgraph L4["🎯 Personalization Engine"]
direction LR
P1[Recommendation API]
P2[Home Feed Builder]
P3[Search & Discovery]
P4[Notification Engine]
end
subgraph L3["🎬 Content Services"]
direction LR
S1[Catalog Service]
S2[Playback Service]
S3[Creator Platform]
S4[Rights Engine]
end
subgraph L2["📊 Data & ML Platform"]
direction LR
D1[Interaction Events]
D2[Content Graph]
D3[ML Models]
D4[A/B Platform]
end
subgraph L1["🌍 Global Infrastructure"]
direction LR
I1[Multi-Region Cloud]
I2[CDN / Edge]
I3[Encoding Farm]
I4[Observability]
end
L5 --> L4
L4 --> L3
L3 --> L2
L2 --> L1
style L5 fill:#e8f4f4,stroke:#3B9797
style L4 fill:#f0f4f8,stroke:#16476A
style L3 fill:#e8f4f4,stroke:#3B9797
style L2 fill:#f0f4f8,stroke:#16476A
style L1 fill:#e8f4f4,stroke:#3B9797
Content Pipeline
Content ingestion is the lifeblood of the platform — from upload to playable asset in under 2 hours for standard content:
flowchart LR
U[Upload] --> V[Validation]
V --> T[Transcode
Multiple bitrates]
T --> AI[AI Processing
Tags, thumbnails, chapters]
AI --> QC[Quality Check]
QC --> R[Rights Check
Region availability]
R --> CDN[CDN Distribution
Edge pre-warm]
CDN --> Live[Available to Users]
style U fill:#e8f4f4,stroke:#3B9797
style AI fill:#f0f4f8,stroke:#16476A
style CDN fill:#3B9797,stroke:#3B9797,color:#fff
style Live fill:#132440,stroke:#132440,color:#fff
{
"content_pipeline": {
"ingestion": {
"upload_max_size": "200GB",
"supported_formats": ["MP4", "MKV", "MOV", "ProRes", "H.265"],
"validation": ["codec_check", "audio_levels", "resolution_verify"]
},
"transcoding": {
"profiles": [
{ "resolution": "4K HDR", "bitrate": "16 Mbps", "codec": "AV1" },
{ "resolution": "1080p", "bitrate": "5 Mbps", "codec": "H.265" },
{ "resolution": "720p", "bitrate": "2.5 Mbps", "codec": "H.264" },
{ "resolution": "480p", "bitrate": "1 Mbps", "codec": "H.264" }
],
"adaptive_streaming": "DASH + HLS"
},
"ai_enrichment": {
"auto_tags": "scene detection + object recognition",
"thumbnails": "AI-selected best frames per genre",
"chapters": "audio/scene boundary detection",
"subtitles": "whisper-based ASR + translation (20 languages)"
}
}
}
Recommendation Engine
The recommendation system is StreamVerse's most critical competitive advantage — 80% of viewing hours come from recommendations:
| Stage | Purpose | Input | Output |
|---|---|---|---|
| Candidate Gen | Find 1000 candidates from 2M titles | User embeddings + content graph | ~1000 candidates |
| Ranking | Score each candidate for this user | User features + content features + context | Ranked list |
| Re-Ranking | Apply business rules (diversity, freshness) | Ranked list + business constraints | Final display order |
| Presentation | Optimize thumbnails + copy per user | User preferences + A/B assignment | Personalized UI |
Every piece of content is a node connected by multiple edge types:
- Genre / Mood / Theme — semantic relationships
- Cast / Creator — people-based connections
- Viewing Patterns — "users who watched X also watched Y"
- Series / Franchise — narrative continuity
- Temporal — trending now, seasonally popular, new release
Global Delivery Architecture
Delivering video to 80M users across 45 countries with sub-second start times requires a sophisticated multi-tier delivery system:
flowchart TD
subgraph Origin["Origin (3 regions)"]
O1[US-East Master]
O2[EU-West Master]
O3[APAC Master]
end
subgraph MidTier["Mid-Tier CDN"]
M1[US Regional]
M2[EU Regional]
M3[APAC Regional]
M4[LATAM Regional]
end
subgraph Edge["Edge (200+ PoPs)"]
E1[Edge Cache A]
E2[Edge Cache B]
E3[Edge Cache C]
E4[Edge Cache N]
end
subgraph Users["Users"]
U1[Smart TV]
U2[Mobile]
U3[Web]
end
Origin --> MidTier
MidTier --> Edge
Edge --> Users
style O1 fill:#16476A,stroke:#16476A,color:#fff
style M1 fill:#3B9797,stroke:#3B9797,color:#fff
style E1 fill:#e8f4f4,stroke:#3B9797
Real-Time Personalization
Every user session is personalized in real-time — from homepage layout to thumbnail selection:
| Layer | What's Personalized | Latency Budget |
|---|---|---|
| Homepage Rows | Which categories appear, in what order | <50ms |
| Row Content | Which titles in each row | <100ms |
| Thumbnails | Which frame/artwork shown per title | <20ms (pre-computed) |
| Search Results | Result ranking + autocomplete | <150ms |
| Notifications | What, when, and how to notify | Async (minutes) |
- Pre-computed — Heavy ML models run offline; results cached per-user (refresh every 4 hours)
- Near-real-time — Session signals (what you just watched) update recommendations within 30 seconds
- Real-time — Context signals (time of day, device, mood selection) applied at request time
Conclusion
A content platform NSA is defined by three forces: scale (500M daily streams), personalization (every user gets a unique experience), and global reach (content delivered from 200+ edge locations). The architecture must support all three simultaneously while enabling rapid content experimentation and creator empowerment.