Sitemap
A list of all the posts and pages found on the site. For you robots out there, there is an XML version available for digesting as well.
Pages
Posts
A guide to Database Isolation level
Published:
This post is a quick guide to MySQL Isolation level, but the same concept can still be applied to other relational databases. Think of this post as a quick reference to refresh your memory.
MySQL locks: A quick guide
Published:
Below are some notes on MySQL Locks concepts, I will not go into the very details underneath and cover every single lock type, but I will give you a quick overview of the most common locks and how they work.
Kubernetes 101
Published:
This article introduces the basics of Kubernetes, including its architecture, key components, and how it can be used to manage containerized applications. This post is based on my understanding of Kubernetes and its docs. Feel free to leave any feedback or corrections in the comments.
Spring Kafka Error Handling, with Best Practices
Published:
This article covers error handling strategies in Spring Kafka, including offset management, retry mechanisms, dead letter topics, batch error handling, and common pitfalls to avoid when building resilient Kafka consumers.
Build a Boolean Expression Evaluator in Java
Published:
Business rules often start as simple if statements. That is usually fine, because hardcoded logic is fast, easy to debug, and checked by the compiler. The problem starts when the rule changes more often than the codebase, or when different customers, cohorts, regions, or experiments need different versions of the same decision logic.
Java Concurrency 101
Published:
This article provides understanding of Java Concurrency concepts, including threads, ExecutorService, synchronization, concurrent collections, threading problems, locks, conditions, semaphores, volatile variables, happens-before relationships, and barrier synchronization.
Redis 101
Published:
This article introduces Redis, a widely-used in-memory data store. It covers Redis basics, caching strategies, data structures, persistence mechanisms, and techniques.
Kafka Message compression
Published:
This article explains how Kafka message compression works, its configuration, and considerations for both producers and consumers.
Kafka Best Practices
Published:
Below are some notes on Kafka best practices that I found useful while working with Kafka in production.
MongoDB 101
Published:
This is a beginner’s guide to MongoDB, a popular NoSQL database. In this post, I will cover the basics of MongoDB, including its features, installation, and basic operations.
Introduction to Apache Maven
Published:
This article provides a comprehensive introduction to Apache Maven, a powerful build automation tool widely used in Java projects. It covers the basics of Maven, including its standard directory layout, installation process, dependency management, and build lifecycle.
Human code review
Published:
Code review is a critical part of the software development process. Here are some best practices to make code reviews more effective and collaborative.
Code refactoring practices
Published:
Some code refactoring practices that I have thought would be useful in daily software development.
Access Control Mechanisms
Published:
Some common access control mechanisms like ACL, RBAC, PBAC that are widely used in software systems.
