Meta finalized efforts to consolidate Facebook’s video delivery system by migrating video experiences from older Watch product to more recent Reels product, which became the basis of the unified system. The unification process required changes across mobile UI, server backend, and ranking systems while ensuring a seamless transition for billions of users.
Due to organic evolution and changing user preferences, Facebook operated two separate video delivery products: Facebook Watch and Reels on Facebook. The fragmentation of the video delivery functionality caused extra work for the engineering teams, who supported different layers of respective systems. Two separate products also forced content authors and advertisers to double the effort required to publish their content and set up marketing campaigns.
Fragmented Video Delivery Platform (Source: Meta Engineering Blog)
As a first phase in the unification journey, the engineers concentrated on consolidating data models between the server side and two main mobile clients while avoiding changes to the user experience. The unification process required much care to ensure a seamless experience for billions of users, and the engineering team relied heavily on the observability layer, which was also evolving to offer consistent logging and metrics.
The next phase of the unification process involved migrating Watch users to the Reels UI. It required many product integrations to ensure the resulting user experience could serve short-form and long-form videos equally well. Engineers have conducted hundreds of user experience tests to optimize the final feature set.
After that, Meta engineers moved to consolidate the ranking system to cater to shorter and longer videos. The team unified the data, infrastructure and algorithmic foundations, and subsequently created a unified content pool combining videos of different lengths. These changes were supported by optimizations to the recommendation machine learning (ML) models to remove the video length bias.
Further improvements to the video delivery platform included dynamic pagination. Colin Smith, software engineer at Meta, explains the motivation behind adopting this new approach:
In a typical delivery scenario, everyone on Facebook receives a page of videos with a fixed size from ranking to client. However, this approach can be limiting for a large user base where we need to optimize capacity costs on demand. User characteristics vary widely, ranging from those who never swipe down on a video to those who consume many videos in a single session. Someone could be completely new to our video experience or someone who visits the Facebook app multiple times a day. To accommodate both ends of the user-consumption spectrum, we developed a new and dynamic pagination framework.
The dynamic approach to content pagination allows the ranking service to adjust the amount of content served based on the confidence score, conserving platform capacity and improving content quality for regular users.
Dynamic Pagination (Source: Meta Engineering Blog)
In addition to dynamic pagination, Meta also moved to real-time ranking, an approach that adjusts content ranking based on user engagement signals, such as video view times, likes, etc. Ranking content in real-time enhances convent diversification and new topic exploration by providing more personalized and responsive experience.