I've lost count of how many WebRTC projects I've seen hit a wall long before they hit "scale."
Not at 10,000 concurrent users. Not at 1,000. At 300.
And almost every time, the root cause is the same thing: the team built for the demo, not for the third user who tried to join from a hotel Wi-Fi in Manila while the second user was tethering off a phone in a parking lot.
The "It works on my machine" trap is worse in WebRTC
Every backend engineer knows the "works on my machine" meme. In WebRTC, it's weaponized.
Your demo works because:
Everyone's on the same LAN
Nobody's behind a symmetric NAT
Your STUN server is reachable
The codec negotiation happens to pick something both browsers agree on
There's no packet loss because you're all sitting in the same office
Then you ship. And suddenly half your users can connect, a quarter can connect but have one-way audio, and the rest get stuck in a "connecting..." state that never resolves.
The infrastructure didn't fail.…