Introduction

Have you been in a situation where after a long busy day you finally sit in front of the TV, thinking that you will unwind for some time; And instead of relaxing you end up frustrated with the decision fatigue of what to watch? Sounds relatable right? We all face this problem frequently.

Problem

Number of paid streaming services, and number of unique titles have increased exponentially in recent years, making it difficult to select what to watch.

The frustration of choosing right content stems from two major factors

  1. Unavailability of relevant content. 60% of the content users are paying for is not relevant to them. (source: accenture)
  1. Time spent on browsing and selecting titles. The average viewer spends 10 ½ minutes searching for titles every time they decide to watch something. (source: cbsnews)

While this problem is age-agnostic, most time spent on streaming services are by Gen-Z and Millenials.

Our Hypothesis

  1. Viewers are overwhelmed & frustrated with the time and energy spent on browsing titles and streaming services when it comes to selecting what to watch.
  2. Users primarily search for relevant titles on Google, IMDB, Rotten Tomatoes etc. that throw a long list of titles, adding to the decision fatigue.

Problem Statement

We are aiming to make the process of choosing entertainment titles less frustrating and time consuming for millennials and GenZ so that they get more time to unwind and waste less time on searching for the titles.  

Research Insights

We conducted initial user research (21 participants age 25-34 yo) to validate our hypothesis and gauge the severity of the problem. We found out that 

  1. The process of choosing a relevant title is cumbersome! A significant majority of users (20 out of 21) find it at least somewhat difficult (rating 3 or above) to decide what to watch on a streaming service.
  1. The problem is prevalent! 90.5% of users said “There are too many options and it's overwhelming to choose.
  1. There exists a sizable market for a potential solution! 80.9% of users are interested in a tool to help them quickly and easily choose content to watch. 

Forms response chart. Question title: On a scale of 1 (never) to 5 (always), how often do you find it difficult to decide on what to watch on a streaming service?. Number of responses: 21 responses.
Forms response chart. Question title: Would you be interested in a tool that helps you quickly and easily choose content to watch, especially when watching with others?. Number of responses: 21 responses.

User Pain Points:

  • Overwhelming Library of Content Selection: Users feel overwhelmed by the vast amount of content available, leading to decision fatigue and difficulty in making a choice.
  • Reliability on Ratings: While users highly value ratings, they don't fully trust the streaming services ratings and often resort to external sources to validate. They wish for easier ways to access detailed information about titles without accidentally starting an episode.
  • Limited Variety and Lack of Personalization in Recommendations: Users are dissatisfied with the lack of variety in recommendations and the limitations of preset categories, making it challenging to discover new content tailored to their preferences.

User pain-points can be summarized as:
In their own words…..
I think for me it's mostly the visual overload and overwhelmingness that ends up making me feel defeated when choosing a title

Landing on the solution: 

  • To create a valuable product, we began by focusing on the user's pain points and behaviors. The goal was to empower users to choose content from their streaming services more efficiently– decreasing decision fatigue and balancing options available to choose from. We hypothesized that decreasing the number of choices given to a user and allowing their current mood to dictate what to watch will make their decision making process easier, compared to being presented hundreds of movies and shows on the service homepage.
  • What stood out to us in our research was:
    • Users find browsing overwhelming due to choice overload and lack of personalization. They experience decision-making challenges and pain points such as choice paralysis and wasting time scrolling.
    • Users highly value ratings and reviews. We found that users often browse online before deciding on content to watch to extrapolate information about ratings, reviews, and synopses from external sources like IMDb and Rotten Tomatoes.
  • With user pain points in mind, we decided to frame the problem into something actionable:
    • How might we (HMW) help users streamline their decision making process to reduce information overload?
    • HMW help users make informed decisions about what to watch so they feel it's worth their time?
Key Features:
  • Simplicity is the backbone of this product. We designed a simple, one-stop web app that includes 2 key entry points to get movie recommendations:
    • Mood-Based Browsing: Users get tailored recommendations based on their current mood. To streamline the process further, a streaming service filter was implemented to provide recommendations accessible to the user based on what they subscribe to.
    • Similar Content Discovery: Users can find movies similar to what users have already enjoyed.
    • Concise Output: By providing 3 curated suggestions, we reduce the cognitive load and promote faster decision-making through a 'bite-sized' approach. With each recommendation, users can get quick, concise information about ratings, a more detailed plot, similarity scores between movies, and summary of audience reviews all in one place. 
Feedback & Achievement:
  • We’ve received positive user feedback showing that WatchBuddy is a simple, but impactful tool that people have been seeking. 
  • With the introduction of WatchBuddy as a tool to combat decision fatigue and doom scrolling, a 30% increase in confidence in being able to find content more quickly was achieved; and on a scale of 1-5 (1 unlikely, 5 very likely), users rated their likelihood to returning to our product a 4.75.

Mid-Fi Wireframes:
Hi-Fi Wireframes

Implementation Details: 

  • Tech stack used: 
    • The backend was built using Flask with Python and JavaScript. We chose Flask because our product is small and straightforward. Flask is light-weight and easily set up. Additionally, it interacts well with external APIs, and its built-in support for JSON simplifies parsing data.
    • For the frontend, this project leverages a modern web development stack to deliver a seamless user experience. Next.js, a powerful React framework, is used for building the front-end, providing server-side rendering and optimized performance. The design and UI components are styled with Chakra UI, ensuring a responsive and visually appealing interface. Vercel is employed for continuous deployment, enabling smooth integration with GitHub for automated updates. This tech stack combines the best of React's component-based architecture with Next.js's performance optimizations and Chakra UI's design system, resulting in a robust, scalable, and user-friendly application. 
  • Where is it hosted?:
    • We used the free tier of Render to deploy the backend because it supports continuous deployment and requires minimal configuration.
  • Technical Tradeoffs:
    • One of the significant technical tradeoffs involved building the backend from scratch. While using Flask allowed for flexibility and customization, it required a steep learning curve. As a result, I had to rely heavily on support from mentors and peers, which increased the initial development time but ultimately provided a tailored solution that met our specific need.

Learnings

Product Manager Learnings:

Ishan Acharya

Navigating diverse communication styles towards unified team goals is the key to success : Finding a common communication style is challenging but it ensures that the team is marching towards the same goal, as a unit. Ruthless Prioritization is an integral part of a product development: Even the simplest product needs constant prioritization based on user needs, resource availability and organizational effort.  Be agile and open for change: Every team member has a different background and working form. Things will not always go as planned so be calm and align everyone on the end goal to ensure the product's success.

Designer Learnings:

Anna Li

Open & consistent communication drives trust: Maintaining open and consistent communication with all team members fostered trust and a collaborative environment, contributing to on-time delivery. Frequent user feedback helps course-correct: Early and frequent user feedback is crucial for identifying and addressing user needs, which facilitates more effective project timeline planning. Clearly explaining and defending design decisions based on user research ensured team alignment and cohesion. Design-Technical tradeoffs: I learned the importance of early and thorough planning with the front-end team to minimize design trade-offs and better achieve the desired polished look within project timelines.

Designer Learnings:

Jo Sturdivant

  1. Adapting to an Established Team: Joining the team in week 6 of 8 was challenging, as I had to quickly adapt to existing workflows, dynamics, and goals. This mirrors real-world situations where you often integrate into teams mid-project, and flexibility is essential.
  2. Work-Blocking for Efficiency: With only two weeks to complete the project, I learned the importance of a structured work-blocking system. This approach allowed me to manage my time effectively and meet deadlines under pressure.
  3. Making Data-Driven Design Decisions: Unlike my past projects, I had to rely on research conducted by others. This was a valuable experience in using pre-existing data to guide design decisions, helping me focus on the core insights without starting from scratch.

Developer Learnings:

Mary Hubert

Being flexible and having backup plans helps: Working asynchronously presents significant challenges, making flexibility essential. Plans don't always unfold as expected, so it's crucial to quickly develop new strategies and find solutions on the fly. Highlighting blockers early helps the team stay on schedule: I learned the importance of effective communication with my team and mentors. While asking for help and discussing unclear topics can be challenging, it's crucial to do so early and clearly to ensure the project's success and stay on schedule.

Developer Learnings:

Vanady Beard

&

As the back-end developer, I learned how important it is to create efficient and reliable systems that support the entire application. This experience also taught me the importance of optimising the database and ensuring the backend is scalable and easy to maintain.

Developer Learnings:

Stephen Asiedu

&

As a back-end developer, I've come to understand the importance of being familiar with various database systems and modules. This knowledge enables me to build diverse applications and maintain versatility in my work. I've also learned that the responsibility for making the right choices rests on my shoulders, guided by my best judgement.

Developer Learnings:

Lloyd Bowar

&

Mastering the art of balancing work, life and product development helps: Through diligent practice, I’ve honed this skill and I’m eager to apply this skill across different aspects of my professional endeavors Adaptive learning about other fields helps in better communication: Working in a team requires learning beyond your core skills. It is challenging but mastering it helps you empathize with your team members.

Developer Learnings:

Maurquise Williams

&

  1. Process of Creating an MVP: Developing a Minimum Viable Product (MVP) taught me how to focus on delivering core functionalities balancing between essential features and avoiding scope creep.
  2. Collaboration in a Real-World Tech Setting: This experience taught me how to collaborate efficiently in a fast-paced tech environment, keeping the team aligned and productive, even while working remotely across time zones.
  3. Sharpening Critical Thinking and Problem-Solving Skills: This experience honed my ability to think critically and solve problems efficiently. By tackling challenges and finding quick solutions, I sharpened my decision-making and troubleshooting skills in a dynamic, real-world setting.

Developer Learnings:

Jeremiah Williams

&

All in all this experience was very awesome I learned that in coding with others being transparent is key

Developers Learnings:

Justin Farley

&

I learned how important communication is when working with a team. Communication provides understanding, advice, ideas, and much more. While working with the product team, I’ve found that communication keeps everything flowing smoothly. Working with a team also showed me that every member brings something different to the table and we all have to work together in order to align and meet our end goal.

Full Team Learning

Frequent open communication between the team members is the key to work as a team.