In the realm of database management systems, performance is key. Two popular systems are MySQL, a traditional relational database, and MongoDB, a NoSQL document-based database. To gauge their efficiency, we orchestrated a benchmarking test on Amazon Web Services (AWS), utilizing MySQL on the Relational Database Service (RDS) and MongoDB on DocumentDB. The goal was to … Continue reading Database Performance: MySQL vs MongoDB
A Systematic Approach to Enhancing User Experience
When solving problems in product experience, we deal with two main types: objective problems, which are clear and can be measured, and subjective problems, which depend on how each person sees them. Understanding the difference between these helps us find better solutions. The Tangible Terrain of Objective Problems Objective problems, like a glitch in an … Continue reading A Systematic Approach to Enhancing User Experience
Do you really need to have a cache over your database ??
Explore the critical decision of implementing a cache layer over your database in 'Do You Really Need to Have a Cache Over Your Database??' This post examines the trade-offs and complexities of caching, helping you determine when caching enhances performance and when it might unnecessarily complicate your architecture.
Choosing the Right AWS Solution for Stateful Services: A Practical Guide
Navigate through the vast landscape of AWS services to find the perfect fit for your stateful applications. This guide offers insights on selecting the right AWS solution, balancing cost, performance, and ease of management.
Understanding Stateful Services and Their Challenges
Delve into the world of stateful services, exploring the unique complexities they present. This blog post unpacks the intricacies of managing state in distributed systems, from consistency issues to scalability challenges.
Understanding Core Beliefs and Dichotomies in Debates
After watching a video by Amish, where he and Bhavna delve into Purvapaksha and Uttarpaksha and the art of debate, piqued my curiosity. It led me to explore the true essence of a debate. What is its purpose? How can we ensure that our debates remain anchored to this purpose? Purpose of a Debate Debates … Continue reading Understanding Core Beliefs and Dichotomies in Debates
Learning and Mentorship: A Deeper Dive
When we think about learning, the common perception is of a linear, step-by-step progression. This view likens learning to filling a glass with water, drop by drop, in a predictable and steady manner. However, contemporary research in neuroscience and cognitive psychology suggests that the process of learning might be more complex and dynamic than this … Continue reading Learning and Mentorship: A Deeper Dive
Exploring Elastic-search Hot Pods on NVMe-based I3 Instances in Kubernetes
In the realm of Kubernetes, managing stateful workloads can be a formidable challenge. This article stems from a prior experience where we encountered and successfully resolved the complex issue of deploying Elasticsearch pods on NVMe-based Local SSDs within I3 machines. This task proved significantly more demanding compared to the relatively straightforward process of deploying Elasticsearch … Continue reading Exploring Elastic-search Hot Pods on NVMe-based I3 Instances in Kubernetes
Simplifying Product Design: Lessons from an Engineer’s Perspective
Discover practical insights for product design from an engineer's perspective. Learn the art of balancing simplicity and complexity to create user-friendly, adaptable solutions.
Balancing Act: How to Reduce Pager Fatigue Without Compromising System Reliability
Striking a balance between pager volume and system reliability is an ongoing challenge for teams in the software industry. By focusing on KPI-based alerts and implementing better monitoring and alerting practices, teams can work towards reducing pager fatigue while ensuring system reliability.
Atomically Updating Multi-Node Cache
In this blog post, we will go over a simple intuitive approach on how to atomically update a hashmap which has been distributed across multiple nodes.
Proxy Server – Proxying at Different TCP / IP Model Levels
Understanding Basics of the Network Proxy - Part II
Proxy Server – TCP / IP Model Internals
Understanding Basics of the Network Proxy - Part I
Introduction to Proxyview
Proxyview helps you to proxy HTTP Requests to all your internally deployed services on k8s pods or ec2 machines via a single endpoint.
Debugging K8s Connection Refused
Getting Connection Refused Exceptions while sending connection requests to an k8s pod's application binding to 127.0.0.1
API Best Practices
Learn about the design practices we followed and fixes we made to improve the page load performance of our product
Evaluating Product Architecture
Different dimensions for evaluating Product Architecture.
Whitelisting IPs with NGINX Ingress K8s
Understand how to whitelist IPs with NGINX via Ingress Objects and securing your kubernetes infrastructure
Improving Software Development with Learnings from LSMs
How can one improve the software development process in a startup where the time to delivery of a feature is of utmost importance. Lets understand how we improve the feature development process by applying some learnings from LSMs
Effect of Threads on Application Throughput
In this blog post, we are going to understand how does the throughput of a service varies when we change the number of threads doing the tasks in a service