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 continuous practice on concepts to ace the engineering interviews. Subscribe Once upon a time there was a master named Roshi whose relational database used … Continue reading A Tale on Concatenated Indexes: Master Roshi and Goku’s fireside chat
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 that. This sparked something in my naive brain and I started exploring the internet for related ideas. That's when I found … Continue reading A plea for lean software: 6 Lessons I learned to help keep software simple
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 layer to be like a tip of the iceberg, the get and the put calls have so much going under the hood that it's mind blowing … Continue reading Trying to Wrap My Head Around The Dynamo Storage System: A Deep Dive
Why I picked this book? My 6th book of the year was Blitzscaling: The Lightning-Fast Path to Building Massively Valuable Companies by Reid Hoffman. I have been listening to Reid's Masters of Scale podcast for quite some time now and found the mentions of the concept of "blitzscaling" rather interesting.I still think that it's simply … Continue reading Blitzscaling: The Lightning-Fast Path to Building Massively Valuable Companies By Reid Hoffman: Reading Notes
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 these components becomes a win or lose factor.I believe, that the way we orchestrate these components decides if the software will evolve as fast as the … Continue reading Dependency Injection: Taming the modules that make up our software.
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 question on weekdays along with a system design article like this one on weekends. Do subscribe If you find this article valuable. Introduction What will … Continue reading Introduction to LSM Trees: May the logs be with you
I recently read the book Architecting for Scale by Lee Atchison. The book contains a high-level overview of the major concepts that revolve around the topic of building highly-available and scalable apps.I felt the book to be more suited as a light read for people already familiar with these concepts rather than being an informative … Continue reading Architecting for Scale by Lee Atchison: Reading Experience
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 weekdays along with a system design article like this one on weekends. Do subscribe If you find this article valuable. When a new system … Continue reading How To Objectively Reason About Systems: Correctness Properties Of A System