How a media playback app is structured: player, session, controller and UI

Quick Overview

A technical question for product managers asking for an overview of how a media app that plays audio or video is put together. It tests whether you can name the main client components and their responsibilities, explain how playback commands and state move between them and system controls, and connect the design to how streamed content reaches the device.

How a media playback app is structured: player, session, controller and UI

Company: Twitch

Role: Product Manager

Category: Software Engineering Fundamentals

Difficulty: medium

Interview Round: Other

In a technical round for a product manager role, you are asked to give an overview of the architecture of a media app, meaning an app that plays audio or video. Describe its main components, what each one is responsible for, and how they work together when a user plays, pauses or seeks. ```hint Separate playback from control Keep the part that fetches, decodes and renders media apart from the part that knows the current playback state. Then list every place besides the app's own screen that can start or pause playback. ``` ### Clarifying Questions - Should the overview cover only the app on the device, or also the backend that stores, encodes and delivers the media? - Is it an audio app that keeps playing in the background and is controlled from the lock screen, headphones or a car, or a video app whose playback is tied to the visible screen? - Is a specific platform intended, such as Android, iOS or the web, or should the answer be platform-neutral? - Will the app play live streams, on-demand recordings, or both? ### What a Strong Answer Covers - The main client components and the responsibility of each one. - How commands flow toward the player and how state flows back to every screen and system control. - Platform behaviors a media app must handle: audio focus, interruptions, headphones disconnecting, background playback and media notifications. - How media reaches the player (streaming formats, adaptive bitrate, content delivery networks) at the depth a product manager needs, and the product metrics this drives. - At least one design trade-off, such as buffer size against delay for live streams. ### Follow-up Questions - A viewer is watching with Bluetooth headphones and they disconnect. Walk through what each component should do. - Which playback quality metrics would you track as a product manager, and which part of the system influences each one? - How does the architecture change between live streams and on-demand videos, and what product trade-offs follow?

Overview: A technical question for product managers asking for an overview of how a media app that plays audio or video is put together. It tests whether you can name the main client components and their responsibilities, explain how playback commands and state move between them and system controls, and connect the design to how streamed content reaches the device.

Twitch logo
Twitch
Jun 8, 2025
mediumProduct ManagerOtherSoftware Engineering Fundamentals
0
0

In a technical round for a product manager role, you are asked to give an overview of the architecture of a media app, meaning an app that plays audio or video. Describe its main components, what each one is responsible for, and how they work together when a user plays, pauses or seeks.

Clarifying Questions Guidance

  • Should the overview cover only the app on the device, or also the backend that stores, encodes and delivers the media?
  • Is it an audio app that keeps playing in the background and is controlled from the lock screen, headphones or a car, or a video app whose playback is tied to the visible screen?
  • Is a specific platform intended, such as Android, iOS or the web, or should the answer be platform-neutral?
  • Will the app play live streams, on-demand recordings, or both?

What a Strong Answer Covers Guidance

  • The main client components and the responsibility of each one.
  • How commands flow toward the player and how state flows back to every screen and system control.
  • Platform behaviors a media app must handle: audio focus, interruptions, headphones disconnecting, background playback and media notifications.
  • How media reaches the player (streaming formats, adaptive bitrate, content delivery networks) at the depth a product manager needs, and the product metrics this drives.
  • At least one design trade-off, such as buffer size against delay for live streams.

Follow-up Questions Guidance

  • A viewer is watching with Bluetooth headphones and they disconnect. Walk through what each component should do.
  • Which playback quality metrics would you track as a product manager, and which part of the system influences each one?
  • How does the architecture change between live streams and on-demand videos, and what product trade-offs follow?