How would you create a playlist for a user after they listen to a single song? (in an app like Spotify)
You'll get access to over 3,000 product manager interview questions and answers
Recommended by over 100k members
Ask for clarifying information about the user:
Environment
- Platform:
- Did they use the web interface to listen to the song?
- Did they use a smart speaker to listen to the song?
- Did they use a mobile device to listen to the song?
- Location:
- Combined with the platform, getting insight into where they listened to the song can help further with narrowing down a playlist or suggestions.
- Time of the day
- Combined with the platform, getting insight into what time of the day they listened to the song can help further with narrowing down a playlist or suggestions.
- Audio Interface
- Did they listen to it while the device is playing the song directly?
- Did they listen to it while the device is playing the song via Bluetooth?
- Could be bluetooth connected to car (implies there may be one or more people listening)
- Could be bluetooth connected to individual headphones (implies one single person listening)
- User:
- Gender: this may or may not be a factor in recommending music
- Age group: this could be a factor in recommending music
- Platform:
Music:
I am assuming the following is the information we have based on the song they listened to -
- Metadata about the song they listened to
- Name of the song
- Artist
- Album
- Genere
- Language
- Keywords about the song/emotions it triggers or inspires
- Upbeat
- Dance
- How did they initiate the request for the first song (Text Search, Voice Search, Song already in their library)
- Metadata about the song they listened to
For the purposes of moving forward, let’s assume that the user is using an app on a mobile device (iPhone), and they were mobile while listening to this song (conncted via bluetooth, ex: in a car), and it was in the evening (commute hour). Additionally, the user used voice search for their first song (ex: “Play Easy on Me by Adele”)
Based on these assumptions, we can propose a few key user needs that could be important in a curated playlist:
- The user may not be able to specify what they are explicitly looking to listen to (they’re driving, they used voice search)
- The user wants to go not necessarily think about selecting music (tired at the end of the day, commuting home)
- The user has 30 minutes (average commute as most folks live closer to workplace in a metropolitan area) so the next 3-5 songs should be very similar to the initial song
Based on the information we have, assumptions we made, and the user needs, we could offer a few different ways to curate playlist based on song choice:
- Play more songs from the same artist
- Play more songs from the same artist that are in the same album
- Play more songs from the same artist that are in the same genre
- Play more songs from a different artist in the same genre
- Play more songs from a different artist in the same genre in the same time period (ex: 90s)
- Play more songs in close proximity to the initial song (on a billboard list)
- Play more songs from the same time period (ex: 80s)
- Play more songs from the same time period and genre (ex: 80s Rock)
These are quite a few different ideas. Let’s compare them back to our user needs and prioritize:
- I’d pick creating a curated playlist based on different artists in the same genre in the same time period as that offers enough variety for a short commute but also keeps the user engaged with music similar to what they initially selected.
To measure the success, I’d also implement some way of collecting user input (directly or indirectly):
- Directly:
- User asks to skip to the next song within first 30 seconds
- User taps on dislike
- Indirectly:
- User initiates another search (similar to the first song selected)
Based on user adoption and input, we cloud also experiment with one of the other approaches and see which one is more successful. (User completes 80-90% listening of the song).
Clarification
Going to assume we are Spotify and that this is an individual consumer account and not an account used by a business like a restaurant or a bar. The user could be listening from their computer, our mobile app, or their car which may be helpful information but our task at hand is the same.
Goal
Before we dive into the problem, let's first take a step back and think about why are we doing this and what are we hoping to accomplish. Is there some sort of strategic initiative we need to align with or was there a specific goal in mind?
If the interviewer doesn't have anything planned we can devise this ourselves by examining Spotify's mission statement which is to unlock human creativity and give artists the ability live off of their art.
By making recommendations we help users listen to more music and get the creative juices flowing while simultaneously paying the artists for the ability to play their music.
If we can increase the amount of time users spend listening to music we can further our mission statement so let's focus on that as a goal.
User Segments
It's hard to come up with a magic bullet that solves everything for everyone so one of the ways I like to narrow scope is by looking at different user segments and choosing one to prioritize:
- Musicians - In addition to playing music they also listen to it obviously. Expert level understanding of music and a better sense of what is "good" music.
- Top 20 Fans - Generally like catchy songs and different genres, whatever the flavor of the month is
- Fan Boy / Girl - Zealous followers of an individual artist or group, aka Swifties or BTS Fans
- Genre Experts - Individuals who are really passionate about a specific genre of music, for example hip hop heads
- The song is not in their genre of preference
- The song is way too overplayed / they're sick of it
- The song doesn't match their current setting, listening to music at the gym is very different from the library
- Preliminary Music Taste Survey - As part of the onboarding process users could optionally fill out a survey regarding their music tastes and preferences which we would then use to make our initial song recommendations.
- Import Listening History - We could let users import their listening history from other platforms like Pandora and Apple Music which would then give us a very good sense of what they would like to listen to.
- Friend Music Preferences Informed Algorithm - When users sign up, they could upload their contacts and mark which of their friends with spotify accounts they think have good taste in music.
- Grant Access to User Personal Data - After signing up, users could give us permission to access some of their data from other apps like Facebook and we could make informed music recommendations based off of that. For example, if we saw that you liked the Metallica FB Page it would be a pretty strong signal to put Metallica songs in your play list.
This is how I plan to approach the prompt:
1) Ask follow up questions to understand the prompt better and establish the business goal
2) Define user segments and select one to focus on
3) Brainstorm attributes to focus on for creating a playlist feature
4) Conclude
Follow up questions
Candidate: Is the goal to improve the user engagement with the app in terms of time spent, by curating a music content that users enjoy
Interviewer: Sounds good
Candidate: Will it be built only specific segment of users, viz a) free or paid users b) guest users or registered users c) kids vs adults (digital well being best practise is to turn off an autoplay or playlist feature for kids, because they do not have full developed self-control capacities)
Interviewer: This feature is applicable to all 18+ users
Candidate: Will playlist contain songs excusively or mix of songs and other content forms such as podcasts?
Interviewer: only songs
User segments
A) First timers
B) Causual users
C) Heavy users
Heavy users are already engaged well with the app, I will create feature around a first time users
Attributes/inputs into the playlist feature
I would like to outline the key attributes that I would use to build a playlist and then I will curate the list of songs align with these attributes and then rank them based on how strongly they align with these attributes.
A) Language: In order to fully appreciate and enjoy the music, it is critical that user can understand the language. Therefore, I would ensure the playlist contents match with the laguage of the first song
B) Genre: User will enjoy the content the most, when we are able to capture their mood. I would use first song as a signal as to the genre that they want to listen to, and that fit their current mood
C) Artist: Users tend to have favorite artists and content from their favorite artists bring them more joy. Therefore I would weight songs from the same artists in building the playlist.
D) Interests expressed by the user: To better understand the user preferences and their tastes better, I would like to collect likes and interests expressed by the user on social media such as facebook, instagram, twitter. This can be done by linking the spotify and social media profiles together.
E) Most listened next song/content by other users: Based on the historical data, I would identify the most listened next song among the other users, given the first song that is playing. I woud this insight as one of the key input when building a playlist
F) Popularity of the music: More often than not, users tend to enjoy the popular songs. So I would use popularity of the songs as one of the key signal in building a playlist.
Conclude
We established the business goal, defined the user segments that we want to prioritize as we plan to build the playlist feature, then outlined mental model for creating a playlist and detailed the attributes that the playlist will be based off of.
Top Google interview questions
- What is your favorite product? Why?89 answers | 263k views
- How would you design a bicycle renting app for tourists?62 answers | 82.5k views
- Build a product to buy and sell antiques.54 answers | 66.8k views
- See Google PM Interview Questions
Top Product Design interview questions
- How would you design a web search engine for children below 14 years old?36 answers | 42.9k views
- Design a library for the future.25 answers | 23.5k views
- How would you design a consumer application for a scooter sharing business?21 answers | 18.6k views
- See Product Design PM Interview Questions
Top Google interview questions
- How would you improve Google Maps?53 answers | 228k views
- A metric for a video streaming service dropped by 80%. What do you do?50 answers | 135k views
- Calculate the number of queries answered by Google per second.45 answers | 78.5k views
- See Google PM Interview Questions
Top Product Design interview questions
- Build a product to solve the dog poop problem.13 answers | 9.4k views
- How would you design a "Google Refrigerator"?13 answers | 8.3k views
- Design a social travel product.12 answers | 13.4k views
- See Product Design PM Interview Questions