Lead Engineer
Distributed Digital Signage Platform
A production digital signage system used to manage and control hundreds of Android TV displays per deployment, built for reliability in real-world public environments.
Problem
Operating digital signage at scale involves unreliable networks, constrained devices, and non-technical operators. Displays must continue functioning even during outages, while still allowing centralized control.
Solution
Developed a centralized management platform where each display operates autonomously while remaining remotely configurable. Content is cached locally, playback is scheduled on-device, and remote commands are delivered in real time when connectivity is available.
Architecture & Approach
Backend built with Node.js and PostgreSQL, using RxJS for event-driven workflows. Devices communicate with the backend via REST APIs and WebSockets. Media assets and infrastructure are hosted on Azure. Android TV clients are designed to function independently when offline.
Key Tradeoffs
- REST and WebSockets are simpler than specialized protocols but require careful reconnection handling
- Local autonomy prevents downtime but introduces state synchronization challenges
- Android TV platform limitations required non-standard lifecycle and background execution strategies
What I Learned
- Physical deployments introduce failure modes that software alone cannot prevent
- Clear monitoring and alerting are critical when managing distributed hardware
- Admin tooling must prioritize simplicity over configurability for non-technical users