Skip to content
Simran's Writing Room
Menu
  • Blogs
  • Books
  • About
Menu

Navigating Database Selection: Relational, Document, Wide-Column, and Beyond

Posted on by Simran Chawla

With the growing number of available databases, it’s essential to revisit and reassess the choices we made just a few years ago. In this post, weโ€™ll explore how different scenarios influence which database type is most appropriate. Database Selection Scenarios Scenario Database Type Why This Database Type Example Databases Transactional Systems (e.g., online banking, HR,…

Read more

Migrating Legacy Systems: Strangler Fig, Branch by Abstraction, and Parallel Run Explained

Posted on by Simran Chawla

Migrating away from legacy monoliths can feel like navigating a labyrinth, but strategic patterns like Strangler Fig, Branch by Abstraction, and Parallel Run simplify the journey. Hereโ€™s a quick dive into how they work, when to use them, and how to decide when to switch completely to the new implementation. 1. Strangler Fig Applications What…

Read more

Using AI Agents to Create Self-Healing Clouds

Posted on by Simran Chawla

Self-healing clouds are environments where operational issues are detected and resolved automatically, with minimal or zero human intervention. Modern cloud applicationsโ€”often composed of microservices, containers, and serverless functionsโ€”generate enormous volumes of logs and telemetry data. This data reflects health, performance, and interactions across multiple services. AI-powered agents can continuously consume this data to spot anomalies,…

Read more

Token Bucket Algorithm for Message Fairness

Posted on by Simran Chawla

๐”๐ฌ๐ข๐ง๐  ๐“๐จ๐ค๐ž๐ง ๐๐ฎ๐œ๐ค๐ž๐ญ ๐€๐ฅ๐ ๐จ๐ซ๐ข๐ญ๐ก๐ฆ ๐ญ๐จ ๐’๐จ๐ฅ๐ฏ๐ž ๐Œ๐ž๐ฌ๐ฌ๐š๐ ๐ž ๐’๐ญ๐š๐ซ๐ฏ๐š๐ญ๐ข๐จ๐ง ๐ข๐ง ๐Œ๐ฎ๐ฅ๐ญ๐ข-๐“๐ž๐ง๐š๐ง๐ญ ๐’๐ฒ๐ฌ๐ญ๐ž๐ฆ๐ฌ In the world of multi-tenant cloud solutions, ensuring fair resource allocation can be challenging. One common issue is message starvation, where high-volume tenants monopolize processing resources, leaving others waiting. Here’s how this can be tackled using the Token Bucket algorithm: The Token Bucket Approach…

Read more

Operational Transformation algorithm for collaborative editing(e.g. Google Docs)

Posted on by Simran Chawla

Ever wondered how tools like Google Docs allow multiple people to edit a document simultaneously, without chaos? The answer lies in Operational Transformation (OT), an algorithm designed to handle conflicts and ensure consistency in collaborative editing. What is OT? Operational Transformation is the backbone of real-time collaboration systems. It ensures that all users see a…

Read more

Key Indicators of Poorly Defined Microservice Boundaries

Posted on by Simran Chawla

Designing a microservices architecture requires thoughtful consideration and careful planning. Incorrectly defining the boundaries between services can lead to significant complications, from development headaches to scaling nightmares. Recognizing the signs of poorly defined service boundaries early can save your team time, money, and frustration. Here are the critical indicators that suggest your microservices might be…

Read more

Breaking down pod deployment in Kubernetes

Posted on by Simran Chawla

Kubernetes is a powerful container orchestration platform that automates the deployment, scaling, and management of containerized applications. In this blog post, we’ll walk through the step-by-step process of deploying a pod in Kubernetes, diving into the interactions between the various components. Process Overview: 1. Pod Creation Request: The journey begins with a user or controller…

Read more

Service Templates in Microservices

Posted on by Simran Chawla

Introduction In the ecosystem of microservices, establishing a common foundation(template) for all services not only promotes uniformity but also significantly enhances development efficiency and system maintainability. Spring Boot, known for its “convention over configuration” approach, provides an ideal platform for implementing such a foundation through a template configuration. This blog will explore how to create…

Read more

Tackling Technical Debt

Posted on by Simran Chawla

Introduction Version control is a valuable tool that can be used to identify areas that need attention to tackle technical debt effectively. By using version control to analyze file frequency and code changes, developers can prioritize their efforts and address the most critical areas first. Analyzing File Frequency and Code Changes Using version control, developers…

Read more

Clean Architecture – Notes

Posted on by Simran Chawla

There are lot of details in the book – clean architecture. The points below just capture what impacted me the most. Hope the points below would nudge you to go through the book yourself. The higher the number of dependencies on a class/module, the more legacy it becomes. Keep your business logic protected from details…

Read more
  • 1
  • 2
  • 3
  • Next
© 2025 Simran's Writing Room