Yelp Abuses Binary Search for Merging Code
Finally, a real use case for learning data structures and algorithms.
⚡️TLDR;
Yelp merged pull requests serially. Just imagine the merge conflicts…
So they shipped merge requests in groups. If there was a bad one, they literally used binary search to fish for the faulty commit.
🧠 Random fact: Yelp is a Monorepo
This means all their code is in a single repository.
But why tho?
Because it was painful to make updates to individual microservices when some were behind in updates. It’s easier to do it all in one go for the entire code base all at once.
🔧 So what did the pipeline look like?
Every code change would be on a branch and then merged. The next one wouldn’t merge until the previous one finished.
Not really good at parallel processing but gets the job done.
💡 Serial is seriously slow.
Keep reading with a 7-day free trial
Subscribe to Byte-Sized Design to keep reading this post and get 7 days of free access to the full post archives.


