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

Systems-Programming

Technical Journal // Systems-Programming
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

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.

Apr '26

Part 3: Casting Shadows Without Trigonometry: The Beauty of Integer Math

To calculate Field of View in a grid-based game engine, you have to cast rays. The naive approach uses heavy floating-point trigonometry. This post explores Bresenham's Line Algorithm: a 60-year-old technique from the era of hardware plotters that draws perfect lines using only integer addition and comparison.

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.