System Architecture & Engineering Notes

Technical writings on Change Data Capture, event-driven microservices, database performance, and distributed systems.

Data Engineering & Analytics

2026-09-29 • 6 min read

Data Real-World #01: Overall Architecture - The "Blueprint" to Rescue the Financial Reconciliation System

Have you ever woken up at 8 AM, sipped your coffee, opened the server logs, and frozen upon seeing the chilling words Killed: 9 or Out of Memory (OOM)? The financial data reconciliation cron job running since 10 PM last night crashed at the 99th minute simply because... it ran out of RAM.

Architecture & System Design

2026-09-28 • 5 minutes read

From 100 to 1000 CCU #02: Optimizing the Ad Performance Reporting System for 1000 CCU: Moving to Data Architecture

When traffic increases 10-fold (1000 CCU) and data volume balloons to tens of GB/TB, a monolithic architecture will completely collapse. This article presents a solution to transition to a Modern Data Architecture. The core of this model is the complete separation of the operational Database (PostgreSQL) and the Data Warehouse (BigQuery), applying Cache (Redis) as a shield to protect the system from query storms, and building a professional Data Pipeline.

Tech Radar & Career Insights

2026-09-25 • 12 mins

Distributed System Design #08.2: Distributed System Governance - Observability & Self-Healing

Following the picture of finance and risks in the previous part, this article will solve the final survival puzzle of horizontal architecture: Observability and Self-Healing.

Tech Radar & Career Insights

2026-09-25 • 12 mins

Distributed System Design #08.1: Distributed System Governance - Solving the Cost (FinOps) and Risk Problems at TicketNow

Having successfully designed and built a horizontal architecture system in previous parts, you've handed TicketNow limitless power to face any traffic volume from millions of fans. However, in the Cloud Computing and distributed systems world, limitless power always comes with a limitless bill and non-linear chaotic risks.

Tech Radar & Career Insights

2026-09-25 • 7 min read

Reviewing my 5-year career journey: Ups and downs and trading the passion for traveling across Vietnam

Five years in the software industry passed like the blink of an eye, but looking back, it's long enough to completely reshape a person - from mindset and lifestyle to the first career scars.

Code Craftsmanship & Languages

2026-09-24 • 5 min read

Design Pattern #16.3: Series Finale - Architecture Evaluation and Conclusion

Analyzing the downside of using Design Patterns (Over-engineering) and practical advice when applying them to real-world projects.

DevOps, Cloud & Tooling

2026-09-23 • 12 mins

Distributed System Design #07: Deployment & Automation - When Infrastructure Becomes Code (IaC)

In system architecture, if you have successfully designed the Edge Tier, stateless Application Tier, distributed Data Tier, and Asynchronous Tier, you are only halfway there. The remaining half that determines whether the system "survives" in reality is Deployment & Automation.

DevOps, Cloud & Tooling

2026-09-23 • 4 min read

Blue-Green Deployment Strategy

Detailed guide on the Blue-Green Deployment strategy in CI/CD. Answers when to apply it, how it works, step-by-step setup, and how to troubleshoot downtime issues.

Data Engineering & Analytics

2026-09-22 • 5 min read

Database Design #05: Comparison of 1NF through BCNF and the Denormalization Problem

The journey from 1NF (1970) to BCNF (1974) marks the golden age of the relational data model. Later, Ronald Fagin added 4NF (1977) to handle multivalued dependencies and 5NF. However, in 99% of real-world software projects, 3NF/BCNF is considered the "sweet spot". Pursuing 4NF or 5NF often makes the structure too fragmented and unnecessarily reduces system performance.

Architecture & System Design

2026-09-21 • 9 mins

Distributed System Design #06: Asynchronous Processing Tier - The 'Circulatory System' of TicketNow

In distributed system architecture, if the Communication Tier is the "shield", the Application Tier is the "brain", and the Data Tier is the "memory", then the Asynchronous Processing Layer is the "shock absorber" and the "circulatory system".

Architecture & System Design

2026-09-21 • 3 min read

From 100 to 1000 CCU #01: Designing an Ad Performance Reporting System for 100 CCU

This article outlines a Monolithic architecture combined with a traditional relational database to solve the problem of displaying ad reports for 100 Concurrent Users (CCU). The focus of this design is optimizing time-to-market and keeping operational costs at a minimum, accepting future scalability limitations in exchange for leanness during the initial phase of the project.

Tech Radar & Career Insights

2026-09-18 • 7 min read

The Landscape for Software Developers in 2026: Elimination, Hiring Paradoxes, and the Era of the Product Engineer

An in-depth analysis of the Software Engineer labor market from a personal perspective: The wave of lay-offs, the impact of AI, hiring paradoxes, and how to position yourself in the new era.

Code Craftsmanship & Languages

2026-09-17 • 6 min read

Design Pattern #16.2: Series Finale - Checkout Execution Coordination Flow

Detailed analysis of how a Checkout request will travel through Design Patterns in real-time (Runtime).

Code Craftsmanship & Languages

2026-09-17 • 6 min read

Mastering CSS Sticky in CSS Grid: Fixing Filter Bar Drift & Container Height Limits in Deep List Scrolling

Analyzing the Containing Block mechanism of CSS Sticky, completely resolving the drifting filter toolbar issue when scrolling past dozens of articles, and optimizing 60fps rendering performance in React.

DevOps, Cloud & Tooling

2026-09-16 • 8 min read

Mastering Mermaid.js: Comprehensive Guide from Syntax to Visualizing Architecture & Technical Documentation (Diagrams as Code)

A practical handbook on the Diagrams as Code (DaC) philosophy with Mermaid.js: Unlocking the full syntax of Flowcharts, Sequence, Git Graphs, Class, State, and automating architecture documentation in CI/CD pipelines.

Data Engineering & Analytics

2026-09-15 • 10 mins

Distributed System Design #05: Data Tier - The Art of Divide and Conquer and the Double-Booking Problem

If the Application Tier in Part 4 is designed according to the "amnesia" (Stateless) principle, then the entire pressure of the system''s memory will be poured entirely into the Data Tier.

Data Engineering & Analytics

2026-09-15 • 5 minutes read

Database Design #04: BCNF - Addressing the Blind Spots of 3NF

The BCNF standard was proposed in 1974 by Raymond F. Boyce and Edgar F. Codd. Although 3NF resolved most data redundancy issues, Codd realized 3NF still had a technical "blind spot" for tables with overlapping candidate keys. Consequently, BCNF was born, often jokingly referred to by academics as "3.5NF". Unfortunately, Raymond F. Boyce passed away just a few months after publishing this paper, at age 26.

Architecture & System Design

2026-09-14 • 8 mins

Distributed System Design #04: Application Tier - The 'Stateless' Heart of TicketNow

In horizontal architecture, the Application Tier acts as the "brain" processing all business logic such as calculating ticket prices, reserving seats, and confirming payments. Unlike the Edge Tier (only handles routing) or Data Tier (must store persistently), the Application Tier is where nodes (servers/containers) are born and die continuously based on traffic volume (Auto-scaling).

Architecture & System Design

2026-09-14 • 9 minutes read

Moving Away from JSON: Restructuring the Static Blog Storage System with Markdown and SSG

The journey of transitioning the article storage model from a monolithic JSON file to an independent Markdown file system. This article analyzes the performance bottleneck on GitHub Pages, the architecture redesign, and the technical trade-offs of adopting a "Build-time" mindset instead of "Run-time".

Tech Radar & Career Insights

2026-09-11 • 12 min read

The Data Engineer Landscape: Competency Map, Data Lifecycle & Modern Data Stack Architecture

A comprehensive guide to the Data Engineer profession: Exploring its foundational role in the AI era, detailing the comparison between Data Engineer vs Data Scientist vs Backend Engineer, analyzing the data lifecycle (Ingestion, Storage, Processing, Serving), the Modern Data Stack architecture (Lakehouse, Kafka, Spark, dbt, Airflow), and a roadmap for practical skill development.