
The project
& the challenge.
Programming Fighter is a Learning Management System where instructors run live cohorts, ship assignments, and sell paid courses — with a secure video player that resists unauthorized redistribution.
The team wanted to move beyond third-party platforms (which charged per-student fees and offered limited control) to a self-hosted LMS. The hardest constraint was preventing course videos from being downloaded and re-uploaded elsewhere — a major leak channel for paid education content.
How I built it.
Step-by-step decisions and trade-offs that shaped the final shipped product.
- 01
Designed a custom video playback system with signed, short-lived URLs, watermarking, and DRM-style anti-distribution controls baked in.
- 02
Built the live-class layer on top of a streaming SDK with per-cohort access control and seamless replay generation.
- 03
Implemented an assignment workflow where students submit, instructors review, and feedback threads stay scoped per submission.
- 04
Integrated SSLCommerz for local payment methods (mobile banking, cards) so paying for courses worked smoothly inside Bangladesh.
- 05
Modeled the data in MongoDB with denormalized read paths for course pages and normalized writes for enrollment / progress tracking.
What it does.
Live class streaming
Real-time classes with chat, screen-share, and instant replay archiving.
Anti-piracy video player
Signed URLs, watermarks, and tampering protection on every stream.
Assignment workflows
Submit-review-feedback loop with per-thread scoping.
SSLCommerz payments
Native support for Bangladeshi cards and mobile-banking checkouts.
Cohort management
Group students into batches with per-cohort scheduling and content drip.
Progress tracking
Per-student dashboards showing completion, scores, and time spent.

