Open to Work: Senior Backend & Distributed Systems Engineer (Go / Python) View LinkedIn →

Go

Technical Journal // Go
Aug '26

Part 6: Simulating a Living Facility: Room Derivation, Sunlight Spillover, and Positional SFX

Building structural algorithms to identify rooms procedurally from coordinate maps, propagate sunlight through doorways, parse modular JSON missions, and render positional sound.

Aug '26

Designing a Distributed Job Scheduler in Go: Partitioning, Locking, and Backpressure

A complete system design of a fault-tolerant distributed job scheduler built for scale. Covers PostgreSQL row locking with SKIP LOCKED, hash ring shard distribution, cron parsing, worker backpressure, and missed job recovery.

Aug '26

Part 5: From Terminal Cells to Sprite Maps: Font Fallbacks and Auto-Tiling

Building a 2D Raylib rendering pipeline capable of 4-bit cardinal autotiling and multi-font fallback chains for unicode glyphs and emojis.

Aug '26

Part 4: Refactoring to SoA ECS: Bitmasks and Flat Component Arrays

Refactoring entity storage from pointer-heavy OOP structs to a Structure of Arrays (SoA) ECS using bitwise masks for entity identity and zero-allocation system loops.

Jun '26

Constructing Concurrent Inverted Indexes in Go

Building a thread-safe inverted index from scratch in Go. Covers sharded mutexes, lock contention profiling, slice pooling to avoid GC pressure, and benchmark comparisons against a naive sync.RWMutex approach under varying read/write ratios.

Jun '26

A Love Letter to the L1 Cache

Why reordering two struct fields made my loop 30% faster, and what it taught me about how CPUs actually work.

Apr '26

Why Your Goroutines Need a Speed Limit: Bounded Concurrency in Go

Unbounded concurrency is a reliability nightmare. Learn how to protect your system from OOM kills and database exhaustion by implementing Semaphores and Worker Pools in Go.

Apr '26

Part 2: Decoupling the Renderer: Terminal to Raylib in One Interface

If your game logic knows about OpenGL, your architecture has failed. This post dissects the Interface Segregation Principle in Go, demonstrating how the Derelict Facility engine swapped an ANSI terminal renderer for hardware-accelerated Raylib without changing a single line of game simulation code.

Apr '26

Part 1: Data-Oriented Design in Go: Why [][]Tile Destroyed My Game Engine

The textbook answer for a 2D grid in Go is a slice of slices. In a systems-level game engine running at 60 FPS, this innocent data structure becomes a performance landmine. This post explores pointer chasing, CPU cache lines, and how flattening a 2D map into contiguous memory creates massive performance gains through Data-Oriented Design.

Mar '26

Understanding CPU Caches in Go

A practical guide to understanding how CPU caches (L1/L2/L3) impact Go service performance, with benchmarks on modern hardware.