picks

52 articles

Reading Platform Engineering Through Systems Thinking
Business 2026-06-29

Reading Platform Engineering Through Systems Thinking

Platform engineering and systems thinking seem to share a lot of ground. This post puts that hunch into words by applying stocks, flows, delays, archetypes, and leverage points to read platform behavior and the failures that keep recurring.

#Platform Engineering#Systems Thinking
Systems Thinking Basics: Seeing the World as Stocks and Feedback
Business 2026-06-29

Systems Thinking Basics: Seeing the World as Stocks and Feedback

A plain-language tour of systems thinking based on Donella Meadows' Thinking in Systems: stocks, flows, feedback loops, archetypes, and leverage points.

#Systems Thinking
Accidental Complexity and the Absence of Decision Records
Architecture 2026-05-21

Accidental Complexity and the Absence of Decision Records

How accidental complexity emerges, and why the absence of ADRs and Design Docs makes it hard to tell what is essential from what is accidental.

#Design#Architecture Decision Record#Design Docs
Three Common Patterns for Distributed Transactions — 2PC, Saga, and Outbox
Architecture 2026-05-13

Three Common Patterns for Distributed Transactions — 2PC, Saga, and Outbox

A concise comparison of the three canonical distributed transaction patterns in microservices — 2PC, Saga, and Outbox — covering their mechanics, trade-offs, and when to use each.

#Microservices#Distributed Transactions#2phase commit#Saga Pattern#Outbox Pattern
The Abstraction Trap in Architecture Design
Architecture 2026-04-23

The Abstraction Trap in Architecture Design

Why sharing domain logic can quietly turn into architectural debt, while technical concerns can safely be shared — with nuance around authorization and PII-sensitive logging.

#Design#DDD
Viability Conditions for Building a Platform
Architecture 2026-04-19

Viability Conditions for Building a Platform

How do you decide whether to build an internal platform? This article organizes the viability conditions from the perspectives of core/supporting/generic subdomains, comparison with external services, leverage, and organizational capacity, and examines how far domain analysis alone can take you.

#Architecture#Platform Engineering#DDD
What's the Difference Between Product Development and Platform Development?
Architecture 2026-04-06

What's the Difference Between Product Development and Platform Development?

Exploring how product development and platform development differ across three dimensions — decision criteria, design philosophy, and investment perspective.

#Architecture#Team Topologies#Platform Engineering#Organization Design
Migrating bmf-tech.com from gobel to gohan — A Full Static Site Transition
Architecture 2026-03-20

Migrating bmf-tech.com from gobel to gohan — A Full Static Site Transition

The complete process of migrating bmf-tech.com from a self-built headless CMS (gobel) with MySQL and Vue.js to a fully static site on gohan, hosted on Cloudflare Pages. Covers 700+ articles, English slug generation, image migration, redirects, and a Go-based preflight checker.

#gohan#Migration#SSG#Golang
Considering Engineering in the Age of AI
Architecture 2026-02-25

Considering Engineering in the Age of AI

Establish prompt governance with Golden Dataset validation, LLM-as-Judge evaluation, and prompt injection security.

#LLM as Judge#Prompt as Code#Prompt Ops#Context Engineering#Prompt Engineering#Continuous AI
LLM Prompt Management and Evaluation Platform Using GitHub Agentic Workflow
Architecture 2026-02-25

LLM Prompt Management and Evaluation Platform Using GitHub Agentic Workflow

Manage LLM prompts as code using GitHub Agentic Workflows: Copilot-powered automation with golden datasets and evaluation.

#LLM as Judge#Prompt as Code#Prompt Ops#Context Engineering#Prompt Engineering#Continuous AI
Career Portfolio Creation Guide
Career 2026-02-18

Career Portfolio Creation Guide

Create a strategic career portfolio to clarify skills, assess market value, set goals, and optimize daily decision-making.

#Job Change#Resume
Good Architecture Strategy, Bad Architecture Strategy
Architecture 2026-02-05

Good Architecture Strategy, Bad Architecture Strategy

Exploring the differences between effective and ineffective architecture strategies.

#Architecture Strategy#Architecture#Design
Why and When to Write an Architecture Strategy
Architecture 2026-02-05

Why and When to Write an Architecture Strategy

Develop architecture strategies to eliminate ad-hoc technology decisions and establish technology standards across teams.

#Architecture Strategy#Architecture#Design
Differentiating Architecture Strategy, Tactics, and Design
Architecture 2026-02-05

Differentiating Architecture Strategy, Tactics, and Design

Differentiate architecture strategy, tactics, and design using 5W1H framework to clarify why, what, how, when, where, and who decisions.

#Architecture Strategy#Architecture#Design
Difference Between Requirements and Constraints
Architecture 2026-01-09

Difference Between Requirements and Constraints

Distinguish requirements from constraints in software design using ISO 29148 definitions for effective architecture trade-offs.

#Constraints#Requirements#Requests#Design#Architecture
Key Points to Consider When Writing an ADR
Architecture 2026-01-09

Key Points to Consider When Writing an ADR

Master ADR writing by focusing on atomic decisions, documenting trade-offs, team discussions, and technical writing principles for architecture.

#Architecture Decision Record#Design#Architecture
What is Team Topologies? How to Structure Engineering Teams
Management 2026-01-09

What is Team Topologies? How to Structure Engineering Teams

Learn Team Topologies—the four team types (stream-aligned, platform, enabling, complicated-subsystem) and three interaction modes for effective software delivery organization.

#Team Topologies#Team Management#Organizational Design
Why Software Development Teams Should Define MVV
Management 2026-01-07

Why Software Development Teams Should Define MVV

Understand MVV definition for software teams, mission clarity, vision alignment, and team personality development.

#Team Management
What is Platform Engineering? Building Internal Developer Platforms
Architecture 2025-12-26

What is Platform Engineering? Building Internal Developer Platforms

Learn what platform engineering is, how internal developer platforms (IDPs) work, and how platform teams reduce cognitive load and improve developer productivity.

#Platform Engineering
Understanding Terminal Specifications for TUI Development
Application 2025-10-18

Understanding Terminal Specifications for TUI Development

Explore terminal specifications, raw mode, ANSI escape sequences, and termios for TUI development with practical Go implementations.

#TUI#termios#Terminal#UNIX#Golang
What is the Architecture Advice Process (AAP)?
Architecture 2025-08-16

What is the Architecture Advice Process (AAP)?

Implement Architecture Advice Process for decentralized decision-making with ADR and architectural governance frameworks.

#Architecture Advice Process#Architecture Review Board#Architecture
The Importance of Explicitly Stating Constraints and Trade-offs in Technical Decision Making
Architecture 2025-08-05

The Importance of Explicitly Stating Constraints and Trade-offs in Technical Decision Making

Document technical decisions by explicitly stating constraints and trade-offs to enable future re-evaluation and org growth.

#Architecture#System Design
Basic Patterns of Cache Strategies
Architecture 2025-08-03

Basic Patterns of Cache Strategies

Learn the five cache strategies: Cache Aside, Read Through, Write Through, Write Back, and Write Around. Covers read/write flows, consistency trade-offs, and mermaid diagram walkthroughs.

#Cache#System Performance
About Processing Models of Web Applications
Architecture 2025-08-02

About Processing Models of Web Applications

Architect web applications with Event Loop, Thread, and Process models for IO-bound and CPU-bound concurrent workloads.

#Event Loop#Thread#Process
ACID vs BASE: Understanding Database Consistency Models
Architecture 2025-08-02

ACID vs BASE: Understanding Database Consistency Models

Compare ACID and BASE consistency models. Understand the trade-offs involved, when to use each, and how the CAP theorem connects to your database design choices.

#ACID#BASE
CAP Theorem Explained: Understanding Distributed Database Trade-offs
Architecture 2025-08-02

CAP Theorem Explained: Understanding Distributed Database Trade-offs

Understand the CAP theorem and PACELC theorem with clear examples. Learn the distributed system trade-offs between consistency, availability, and partition tolerance.

#CAP#PACELC#Distributed Systems
A Retrospective Framework 'bmf' to Encourage Selection and Focus
Development Process 2025-07-23

A Retrospective Framework 'bmf' to Encourage Selection and Focus

Introducing a new retrospective framework to enhance focus and selection.

#Retrospective#KPT
Cohesion and Coupling
Architecture 2025-06-25

Cohesion and Coupling

Understand cohesion and coupling as software design metrics. Learn the 7 levels of cohesion (coincidental to functional) and 6 levels of coupling (content to data) with practical examples.

#Design#System Design
Access Control Patterns Using OPA
Architecture 2025-06-22

Access Control Patterns Using OPA

Explore four access control patterns using Open Policy Agent including Allow/Deny, SQL generation, and AST approaches with responsibility separation.

#Open Policy Agent#Access Management
Understanding IO and CPU Characteristics in Ruby and Rails
Application 2025-06-14

Understanding IO and CPU Characteristics in Ruby and Rails

Understand Ruby GVL, Puma concurrency, IO-bound vs CPU-bound workloads, thread/process tuning, and GC impact on Rails performance.

#Ruby#Ruby on Rails
Considerations and Solutions for Pagination Impact in OPA
Application 2025-06-14

Considerations and Solutions for Pagination Impact in OPA

Master pagination with Open Policy Agent, offset pagination, cursor pagination, and access control filtering.

#Open Policy Agent#Offset Pagination#Cursor Pagination#Access Control
Considering the Shelf Life of Design
Architecture 2025-06-08

Considering the Shelf Life of Design

Consider design shelf life across business, organization, product, and technical perspectives. Balance constraints and trade-offs.

#Design#System Design#Architecture Strategy#Architecture
Measuring Scalability
Architecture 2025-06-08

Measuring Scalability

Measure system scalability using throughput, latency, efficiency metrics, mathematical models like Amdahl's Law, and practical benchmarking.

#Scalability
Things to Consider When Writing Architecture Documents
Architecture 2025-05-25

Things to Consider When Writing Architecture Documents

Guidelines for creating effective architecture documents in system design.

#Architecture Strategy#Architecture
Structure of My System Specification Document
Architecture 2025-05-19

Structure of My System Specification Document

Learn to structure system specification documents with sections for architecture, data models, APIs, and sequence diagrams for design clarity.

#System Design#Design#Tips
Bounded Contexts
Architecture 2025-05-19

Bounded Contexts

Understand bounded contexts in domain-driven design to clarify word meanings, organize responsibilities, and improve system design.

#DDD
What Is EventStorming
Architecture 2026-06-16

What Is EventStorming

Learn EventStorming, a workshop technique born from domain-driven design that uses sticky notes to rapidly map a business domain and build shared understanding between developers and domain experts.

#DDD#EventStorming
Implementation of Access Control System for Microservices Using OPA
Architecture 2025-03-20

Implementation of Access Control System for Microservices Using OPA

Implement fine-grained access control for distributed microservices using Open Policy Agent and declarative Rego policy language.

#Access Management#Open Policy Agent#RBAC#Microservices
Understanding Story Points Using the Cynefin Framework
Development Process 2025-02-26

Understanding Story Points Using the Cynefin Framework

An idea on how to think about the criteria for story points.

#Agile#Scrum
Considering Architecture Strategy
Architecture 2025-02-16

Considering Architecture Strategy

Understand architecture strategy as systematic policy for building and evolving systems, covering vision, principles, and scalability planning.

#Architecture#Organizational Design#Design#System Design#Architecture Strategy
Starting Guide to Load Testing
Architecture 2024-08-24

Starting Guide to Load Testing

A guide to understanding and starting load testing.

#Load Testing
About Sets
Mathematics 2024-07-06

About Sets

Summarizing the basics of sets.

#Discrete Mathematics#Sets
From Custom HTTP Router to New ServeMux
Application 2024-04-27

From Custom HTTP Router to New ServeMux

Migrate from a custom HTTP router goblin to Go 1.22 enhanced net/http ServeMux. Covers new routing patterns, performance comparison with third-party routers, and when ServeMux is enough.

#Golang#Router
MySQL Locks Explained: Preventing Deadlocks and Improving Performance
Database 2024-04-05

MySQL Locks Explained: Preventing Deadlocks and Improving Performance

Understand MySQL locking mechanisms—table locks, row locks, gap locks, and intent locks. Learn how deadlocks occur and how to prevent and diagnose them effectively.

#MySQL#Transaction#Lock
What is a Database Index? How It Works and When You Need It
Database 2024-04-01

What is a Database Index? How It Works and When You Need It

Understand how database indexes work internally—B-tree and hash structures—when to add or avoid indexes, and how to measure index effectiveness using EXPLAIN.

#DB#Index#MySQL
How to Deal with Uncertainty in Software Development Projects
Development Process 2023-12-22

How to Deal with Uncertainty in Software Development Projects

Address software project uncertainty through agile planning. Distinguish known unknowns from unknown unknowns to minimize risks.

#Agile
Improving Code Performance with Go
Performance 2023-06-12

Improving Code Performance with Go

Learn practical Go performance optimization: pprof profiling, benchmark tests, escape analysis, memory allocation reduction, and real examples from optimizing a custom HTTP router.

#Golang
MySQL Transaction Isolation Levels: Preventing Dirty Reads, Phantom Reads, and More
Database 2023-06-08

MySQL Transaction Isolation Levels: Preventing Dirty Reads, Phantom Reads, and More

Learn MySQL's four transaction isolation levels, the anomalies each prevents (dirty read, non-repeatable read, phantom read), and how to choose the right level.

#Transaction#MySQL
Transaction Overview
Database 2023-06-07

Transaction Overview

Understand database transaction fundamentals including ACID properties, concurrency control, and isolation for data integrity.

#Transaction
Devoured System Design Resources
Architecture 2023-02-27

Devoured System Design Resources

A compilation of resources related to system design.

#System Design#Link Collection
Technologies Supporting bmf-tech
Architecture 2022-08-08

Technologies Supporting bmf-tech

Explore Docker, Golang, Vue.js, Nginx, Prometheus, and Grafana powering modern blogging infrastructure and monitoring systems.

#Docker#Docker Compose#VPS#Golang#Vue.js#Prometheus#Promtail#Loki#Grafana#Nginx
Introduction to Building an HTTP Router with net/http
Application 2021-10-24

Introduction to Building an HTTP Router with net/http

This article explains how to create a custom HTTP router using Golang's standard package net/http.

#Golang#HTTP