Sensitive Data Encryption — Module Design and Migration Retrospective

A retrospective on column-level encryption of sensitive data in a running service. Envelope encryption, DEK granularity decisions, the WHERE clause constraint that led to HMAC, and the migration automation Skill that spread the work across the org.

January 15, 2026 · 5 min read

Profitability-Based Traffic Throttling Retrospective

Retrospective on building a system that automatically identifies low-performing SSP inventory and throttles traffic to improve contribution margin. Covers the evolution from Imp Cost Ratio to a predicted contribution margin rate approach.

October 15, 2025 · 3 min read

LR-based ML Lifecycle Retrospective

Building my first ML Lifecycle — a three-tier architecture for an ad Fallback CTR prediction — as a backend engineer without an AI background. The technical decisions I made, and what I learned through running it.

March 10, 2025 · 4 min read

Ad Fallback Server Design Retrospective

Designing a Nest.js-based fallback server while removing a legacy ad server. Why a horizontal layered architecture fit better than Nest.js’s default vertical module slicing for a single API with complex business logic.

February 28, 2024 · 3 min read

Cache Refresh Optimization Retrospective

How I reduced network costs and enabled instance downscaling by switching from full cache refresh to incremental refresh for campaign configuration data.

January 15, 2024 · 2 min read

Two-Layer Control Loop for Ad Budget Pacing — Retrospective

A retrospective on moving ad budget pacing from a fixed-rule scheme to a two-layer control loop — per-campaign learning sets the baseline, real-time correction absorbs drift.

August 21, 2023 · 3 min read