Implement a server that keeps an open web socket connection with all active user devices and use a central repository to keep track of which user is connected to which web socket handler.
Implement stream processing software like Kafka to capture useful information and run real-time processing or machine learning algorithms for detailed analytics.
Design independent services like URL shortening, notification, or asset delivery service, which can be added or modified easily based on new requirements.