Consider streaming services like Max, Netflix, and Hulu. The companies developing these services provide media content to a wide array of users on different platforms (e.g. browsers, apps, devices).
If you were tasked with designing the pieces to support a web-based streaming platform, which would eventually expand out to other services, what kind of components would you design?
Coding aspect: define data structures, what kind of components/classes would be needed.
Requirements:
- Describe data structure to be stored
- Describe how data will be fetched
- Create components that will retrieve this content for:
- Lists (collection of media); filter could be possible by type
- Returning metadata
- Returning content
Example of describing connection between user-facing call to data structure:
List collection of media
GET /{endpoint}
-> Retrieves data from [component]
-> [componentA] -> gets data from [componentB] using {reference}
This problem asks you to design the core components behind a web-based streaming platform. The main focus is on data modeling and service boundaries rather than a classic algorithm. A strong answer should define how media items are stored, how lists and filters are exposed through endpoints, and how separate components retrieve metadata versus playable content. It is also useful to explain the flow from a user-facing request to the underlying data references, showing how the design can scale from a web app to other platforms.