Trying to Wrap My Head Around the Dynamo Storage System: A Deep Dive

Introduction The world of databases is very interesting. To build a loveable product, a core infrastructure piece that’s needed is the data persistence layer. I find this data persistence lay… | Continue reading


@priyankvex.wordpress.com | 4 years ago

Dependency Injection: Taming the modules that make up our software

Introduction All software projects, (even relatively smaller ones) are the result of aggregation of several components and modules. As these software projects grow and evolve, the way we connect th… | Continue reading


@priyankvex.wordpress.com | 4 years ago

A Tale on Concatenated Indexes: Master Roshi and Goku’s Fireside Chat

Indexes make our queries run as fast as a cheetah! Right Practice. Right Results This post is part of newsletter that I run “Scamming the Coding Interview”, which is geared towards cont… | Continue reading


@priyankvex.wordpress.com | 4 years ago

Introduction to LSM Trees: May the Logs Be with You

LSM Trees overview This post is a part of a newsletter that I run: “Scamming The Coding Interview“, which is geared towards helping people ACE their coding interviews. We send a coding qu… | Continue reading


@priyankvex.wordpress.com | 5 years ago

How to Objectively Reason About Systems: Correctness Properties of a System

This post is a part of a newsletter that I run: “Scamming The Coding Interview”, which is geared towards helping people ACE their coding interviews. We send a coding question on weekday… | Continue reading


@priyankvex.wordpress.com | 5 years ago

Tackling Lost Updates Problem in Database Using Transaction Isolation Level

Introduction Databases are made for scale and are a highly concurrent system. Thus it is normal for them to expect multiple concurrent connections. Also, in most situations, we’ll want our da… | Continue reading


@priyankvex.wordpress.com | 5 years ago

Practical Design Patterns Part 1: The Command Pattern

Introduction Most software these days support undoing/redoing actions. For example, text editors support undoing what we have written, file managers support undoing file creation/deletion etc. It&#… | Continue reading


@priyankvex.wordpress.com | 5 years ago

A plea for lean software: 6 Lessons I learned to help keep software simple

  Preface Recently, I was browsing the codebase of my company and saw that it has three versions of dashboards for an analytics page in it. I am pretty sure that customers don’t need tha… | Continue reading


@priyankvex.wordpress.com | 5 years ago