$ ls -lt posts/ | grep

Blog archive

231 of 231 articles

filter by tag
I Was Never Trying to Become a Better Component
12 min

I Was Never Trying to Become a Better Component

From allergy to IgE, from an external brain to AI, and from Mobin to Mobin-less

Building a Resilient Event-Driven Data Lakehouse: MinIO Bucket Notifications to Apache Kafka
6 min

Building a Resilient Event-Driven Data Lakehouse: MinIO Bucket Notifications to Apache Kafka

Eliminate object storage polling and prevent race conditions using MinIO’s native Kafka notification engine and the Sentinel Marker pattern.

Kafka
From a 49-Second KPI Request to an 840-Millisecond Response
5 min

From a 49-Second KPI Request to an 840-Millisecond Response

Introduction A customer-reported issue initially appeared to be a backend or database performance problem. A KPI request with thousands of selected elements was taking almost 50 seconds to complete, which was unacceptab…

One Pipeline, Three Ways to Consume It: Designing Multi-Channel KPI Distribution on ClickHouse
6 min

One Pipeline, Three Ways to Consume It: Designing Multi-Channel KPI Distribution on ClickHouse

Every hour, our pipeline turns 15 million raw measurement rows into hundreds of per-cell, per-technology KPIs and writes them to ClickHouse. I’ve written before about how we keep that calculation correct — partitioned…

ClickHouseKafkaData EngineeringSystem Design
From Database-Backed Sessions to JWT Authorization in NestJS
10 min

From Database-Backed Sessions to JWT Authorization in NestJS

An AI-assisted migration guided by a detailed SRS and protected by end-to-end tests

Security
Vibe Coding Your Everyday Math: Turning Personal Questions into Small, Trustworthy Tools
5 min

Vibe Coding Your Everyday Math: Turning Personal Questions into Small, Trustworthy Tools

Most of the decisions we agonize over in daily life are really just messy calculations wearing a disguise. Should I rent or buy? Which grocery run actually costs less per meal? Is this loan offer better than that one?…

Generate a Guided Wizard for End Users from the Derived Flow Graph
12 min

Generate a Guided Wizard for End Users from the Derived Flow Graph

Turning your backend, frontend, e2e tests, and Swagger spec into a queryable knowledge graph — and using it to build a smarter, AI-assisted…

AI
How I Would Build MobinAI: A GraphRAG Chatbot for 200+ Technical Articles
12 min

How I Would Build MobinAI: A GraphRAG Chatbot for 200+ Technical Articles

I have published more than 200 technical articles covering Go, PostgreSQL, ClickHouse, Kafka, system design, backend architecture, and artificial intelligence.

AIRAGArchitecture
Why Large Database Refactors Need Isolated Development Databases
7 min

Why Large Database Refactors Need Isolated Development Databases

A practical workflow for running legacy and refactor branches safely when their migration histories diverge

ArchitectureDevOps
Query Federation: A Practical Guide to Modern Data Virtualization
6 min

Query Federation: A Practical Guide to Modern Data Virtualization

How to query everything without moving anything Why This Matters Every growing engineering org eventually hits the same wall: data ends up scattered across a relational database here, a warehouse there, a pile of Parque…

Data EngineeringArchitectureSystem Design
Stop Picking an AI Model. Start Picking a Capability.
5 min

Stop Picking an AI Model. Start Picking a Capability.

Why I built a gateway that routes coding agents by job, not by vendor

AIArchitectureDevOpsIntegration
How I Made a Chatbot With My Knowledge: Turning My Technical Articles into a GraphRAG Assistant
9 min

How I Made a Chatbot With My Knowledge: Turning My Technical Articles into a GraphRAG Assistant

As software engineers, our personal blogs and notes often end up as chronological archives — hundreds of Markdown files, JSON payloads, and code repositories scattered across years of work. Traditional vector search…

AIRAGGo
Me Against Myself: From Rebellious Idealism to Pragmatic Systems Thinking
5 min

Me Against Myself: From Rebellious Idealism to Pragmatic Systems Thinking

From "your system is not open source" to "how can I change your system's properties" I have spent twelve years arguing with people who build closed systems. I did not notice, until recently, that the longest, most exhau…

My ExperienceCareer
Unified AI Orchestration: Setting Up 9router, Model Combos, and Cline in VS Code
4 min

Unified AI Orchestration: Setting Up 9router, Model Combos, and Cline in VS Code

When working with autonomous coding agents like Cline, managing multiple upstream AI providers — such as Google AI Studio, OpenRouter, and premium OAuth subscriptions — quickly becomes a maintenance bottleneck. Rate…

AIDevOpsIntegration
Complete Technical Migration Strategy: Migrating Legacy Django Auth to Keycloak & OpenFGA via ETL
5 min

Complete Technical Migration Strategy: Migrating Legacy Django Auth to Keycloak & OpenFGA via ETL

A production-ready, four-phase ETL strategy for migrating legacy Django authentication to Keycloak and fine-grained authorization to OpenFGA.

ETLSecurity
From 3NF MySQL to Fast Search: Building a CDC-Powered Read Model
7 min

From 3NF MySQL to Fast Search: Building a CDC-Powered Read Model

Normalized MySQL is great for writing data correctly. It’s not great for serving it fast. Once a project entity spans tasks, members, documents, orders, and comments, every “project overview” request turns into a wall o…

ArchitectureData Engineering
Architecting Search Engines: A Deep Dive into Meilisearch Internals, Vector Retrieval, and Algolia
6 min

Architecting Search Engines: A Deep Dive into Meilisearch Internals, Vector Retrieval, and Algolia

The design of application search has undergone a fundamental transformation over the past decade. Traditionally, software architectures relied on either SQL relational string operations (LIKE '%term%') or heavy analytic…

System Design
Architecting an Open-Source Search Engine: From Algolia Internals to Vector Similarity and Qdrant
9 min

Architecting an Open-Source Search Engine: From Algolia Internals to Vector Similarity and Qdrant

High-performance discovery platforms demand sub-50ms query latency, search-as-you-type prefix matching, real-time data synchronization, and semantic vector retrieval. Commercial SaaS solutions like Algolia have long dom…

System Design
How an AI Prompt Turned a Complex Multi-Database ETL Project Into Hours of Work
5 min

How an AI Prompt Turned a Complex Multi-Database ETL Project Into Hours of Work

In large organizations, data rarely lives in one place. Some information is stored in Oracle databases, while other datasets live in PostgreSQL.

AIETLData Engineering
When Your Domain Talks to Stripe, A DDD Cautionary Tale
6 min

When Your Domain Talks to Stripe, A DDD Cautionary Tale

A real-world dissection of a circular dependency in a billing module, and how Domain-Driven Design gives you the vocabulary — and the tools…

DDDArchitecturePayments
$ scroll to load more · showing 20 of 231