Utkarsh UpendrainStackademicSystem Design of a hotel reservation system — Part 3In the earlier parts, we have covered the design of the hotel side of the marketplace as well as how the customers can search for hotels.Sep 12, 20231Sep 12, 20231
Utkarsh UpendrainDevOps.devSystem Design of a hotel reservation system — Part 2In Part 1, we described the system and the data model for the hotel side of the marketplace. If you haven’t read that already, I would…Sep 7, 2023Sep 7, 2023
Utkarsh UpendraSystem Design of a hotel reservation system — Part 1Hotel reservation systems are one of the most discussed system design problems in any engineering interview. In this post, we are going to…Sep 6, 20231Sep 6, 20231
Utkarsh UpendraImage Recommendation with Approximate KNN using Collaborative Filtering with ANNoy!I was recently working on an image recommendation engine which was to be based on a dataset that contains details of interaction of users…Jan 28, 2022Jan 28, 2022
Utkarsh UpendraSoftware Engineering is much more than just building APIsWith the advent of new and charming frameworks like Spring Boot and Hibernate, there has been an observed shift in the definition of…Jan 18, 2022Jan 18, 2022
Utkarsh UpendraA vanilla implementation of Collaborative Filtering for Image Recommendation SystemRecently, I came across a problem where I had to design an image recommendation system i.e. I had a dataset with 1 million user interaction…Jan 18, 2022Jan 18, 2022
Utkarsh UpendraPagination spanning across databasesPaginated queries on RDBMS is as simple as adding “limit” and “offset” parameters to any “select” query, or is it?Oct 1, 2021Oct 1, 2021
Utkarsh UpendraHash trees (Merkle Trees)Ever wondered how GitHub easily and accurately determines what changes have been made to each file, or how distributed database systems…Sep 27, 2021Sep 27, 2021
Utkarsh UpendrainStackademicUnderstanding HyperLogLogImagine you go to a party and you want toknow how many people are at that party, how would you determine that? One way is to use brute…Sep 26, 2021Sep 26, 2021
Utkarsh UpendraSplitting a large matrix into smaller filesThis post describes how to manage storage and operation of large matrices which might not fit into main memory at once.Sep 26, 20211Sep 26, 20211