Messagenius
Real-time voice & video calling SDK
Senior Flutter Engineer · 2022 — present
DartFlutterWebRTCCallKit
Chat can retry in the background. A call connects in a few seconds or the user hangs up and dials from their phone instead. Calls also fail in ways I can’t reproduce at my desk: a handoff from Wi-Fi to cellular, or a corporate network that blocks the path the negotiation counted on.
I build and maintain the voice and video calling SDK the app depends on. It’s a hardened WebRTC layer that lives as its own package, so I can version it, debug it and reason about it without touching the rest of the app.
- Native call experience: incoming calls surface through the platform’s own call UI, so they ring, answer and land in call history like a phone call, including when the app isn’t running.
- State that survives real networks: call state holds across backgrounding, network handoffs and reconnects on iOS, Android, macOS, Windows and Web, each with its own rules about what a backgrounded app may do.
- Debuggable in production: call failures resist local reproduction, so the SDK emits structured, tagged logs that let me reconstruct a failed call from a customer’s log file.
When calling breaks, I search one package instead of the whole app.
Highlights
- In-house calling SDK on a hardened WebRTC layer, consumed by the main app as a standalone package
- Native call UI integration, so incoming calls behave like phone calls even from a killed app
- Call state that holds through backgrounding, network handoff and reconnects
- Tagged call logs for failures that only reproduce on a customer's network