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 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

Advertisements

Architecting for Scale by Lee Atchison: Reading Experience

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

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 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

Basics of Database Partitioning and Partition Strategies

You are a part of a startup which has recently scaled to reach a huge number of users. This means that the increased number of users are going to generate a huge amount of data that you have to store and manage.It soon becomes evident that managing a huge dataset is a major hurdle to … Continue reading Basics of Database Partitioning and Partition Strategies

Featured

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 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

Tracking Metrics to Surface and Solve Problems: Metric Tracking Practices I’ve Learned So Far

It is a nice pleasant evening, you are sipping coffee and reviewing your code one final time, just so that you can gather enough confidence to hit the deploy button. But a fact of life as a software engineer is that things can go wrong. Small changes may result in unexpected outcomes, including outages, errors … Continue reading Tracking Metrics to Surface and Solve Problems: Metric Tracking Practices I’ve Learned So Far

Organization Archetypes And The Concept Of Market-Oriented “Solver Teams”

Organizations which designs systems are constrained to produce designs which are copies of the communication structure of the organization. In other words, how we organize our teams has a powerful effect on the software we produce, as well as our resulting architectural and production outcomes. Thus, in order to get a fast flow of work from … Continue reading Organization Archetypes And The Concept Of Market-Oriented “Solver Teams”