Case study 04
Rilla / Live streaming at scale
One live stream, ten thousand screens.
- Client
- Rilla
- Engagement
- Founding engineer, 2024–2025
- Discipline
- Realtime Streaming, Rust, Platform Engineering
- Stack
- TypeScript, Rust, Kotlin, WebRTC, HLS / DASH
01
Overview
I joined Rilla as a founding engineer to help build a network for delivering live video at scale. A stream reaches viewers through CDN edges in several regions, and viewers share segments with each other so the network carries more of the load as audiences grow.
02
Responsibilities
- Built the web player plugin and the first TypeScript SDK, with seamless switching between peer and CDN delivery and playback kept in sync across peers.
- Designed and built a real-time metrics service in Rust that handles more than 10,000 concurrent devices with responses under 10 ms at p99.
- Delivered the first version of the Android SDK in Kotlin.
- Built a tool that simulates poor networks, with throttled bandwidth, added latency and packet loss, to test playback against real-world conditions at scale.
- Contributed to the simulation dashboard used to run and watch distributed playback tests.
03
How it flows
One live source fans out through CDN edges in several regions. Devices connect to their nearest edge, and peers pass segments on to the devices around them. Every playback reports how it is going, so problems show up while the stream is still live.
04
Decisions
The CDN is always the fallback
When a peer is slow or drops out, the player falls back to the CDN without the viewer noticing.
Measure every playback, live
Buffering, latency and fallbacks are reported from each device as they happen, so the network can react during the event rather than after it.
Test against bad networks, not good ones
Playback was tested at scale under throttled, lossy and high-latency conditions, because that is where live video breaks.
05