Skip to content
SOFTWARE ARCHITECT · DRAWING NO. 0001

I architect distributed systems that hold up at 3 AM.

Two careers, one instinct: design for the load before you draw the details. I build event-driven architectures, real-time platforms, and the developer tooling that holds them together.

AVAILABLE Q3 '26 SLC, UTAH · GMT−7 OPEN TO STAFF / PRINCIPAL
FIG. 01 — INGESTION TOPOLOGY SCALE 1:1 · DRAFT SHEET 01/04
SOURCES EVENTS_IN 1,280/s RAW_TELEMETRY 4,920/s STATE_MUTATIONS 712/s EXTERNAL_FEEDS 156/s KAFKA TOPICS PARTITIONS · 64 FLINK DETECT 9 OPERATORS ALERT REMED
● LIVE · EVENTS/SEC P99 LATENCY UPTIME 99.97% · 28D
SOURCE: PRODUCTION TELEMETRY · 2024–2026
01 / 03
%
Build time reduction

47-minute pipeline → under 8 minutes via per-app change detection + JIB.

02 / 03
svcs
Migrated, zero downtime

EKS 1.32 + Karpenter v1, solo DevOps owner across a 7-person team.

03 / 03
industries
One streaming engine

EventHorizon, the pattern that crystallized after four companies of the same problem.

Selected Case Studies

VIEW ALL — 09 →
CS-01 ARCHITECTURE
534 → 1
PROCESSORS COLLAPSED INTO ONE DAG ENGINE

Pipeline Platform: A Config-Driven Document Processing System

A multi-service platform that replaced a 534-processor monolith with a config-driven DAG, decoupled sub-processors over RabbitMQ, an operator SPA that owns no mutations, and a standalone JWT issuer designed for zero-downtime cutover.

  • Micronaut
  • Postgres
  • RabbitMQ
CS-02 ARCHITECTURE
534 → 1
CONCRETE PROCESSORS COLLAPSED INTO ONE DAG ENGINE

Pipeline Orchestrator: One DAG to Replace 534 Processors

How a single Micronaut orchestrator replaced 534 concrete processor classes at a law-tech startup, and the subtle invariants (terminal state detection, optimistic-lock retry, transaction boundaries) that made it safe in production.

  • Micronaut
  • Postgres
  • RabbitMQ
CS-03 ARCHITECTURE
10
GENERIC PIPELINE STAGES REPLACING 534 COURT-SPECIFIC PROCESSORS

Pipeline Workers: Ten Generic Stages That Coexist With a Legacy Schema

How ten generic pipeline stages replaced court-specific logic in a document-processing pipeline, talked to the orchestrator over RabbitMQ, and shared a database with the legacy system without ever touching its schema.

  • Micronaut
  • RabbitMQ
  • Hibernate
CS-04 ARCHITECTURE
0
DEPLOYS NEEDED TO ONBOARD A COURT

Pipeline Dashboard: A Thin SPA and the API-Perimeter Lesson

Building an operator dashboard for a config-driven pipeline platform (read-only at launch, then a deliberate write surface for court config and patch-and-replay), plus the refresh-on-401 client middleware and the architectural lesson hiding in 'just add an nginx location block'.

  • Vue
  • TypeScript
  • SPA
CS-05 INFRASTRUCTURE
0
MINUTES OF OPERATOR DOWNTIME DURING CUTOVER

Pipeline Auth: A Standalone JWT Issuer With a Zero-Downtime Cutover

How I designed a standalone JWT issuer for a pipeline platform, the dual-controller alias pattern that let pre-existing write surfaces keep working through the cutover, and the long tail of small infrastructure gotchas that cost more time than the code.

  • Micronaut
  • JWT
  • JWKS
CS-06 VISION
10
PIPELINE OPERATIONS ALREADY MODELED AS TOOLS

MCP Bridge: Shipping the Data Plane, Deferring the Framework

How I scaffolded an MCP server for a pipeline platform while the underlying micronaut-mcp library was still moving across three incompatible annotation styles and three JVM versions, and why the data plane shipped before the framework wiring did.

  • MCP
  • Micronaut
  • Java
CS-07 ARCHITECTURE

EventHorizon: The Ultimate Data Detection Engine

Designing a generic, pluggable anomaly detection platform using Apache Flink, Kafka, Micronaut, and ML/LLM integration. The culmination of building similar systems in Ruby, Java, Python, and TypeScript across multiple industries.

  • Flink
  • Kafka
  • Micronaut
CS-08 OPTIMIZATION
47min → <8min
BUILD TIME REDUCTION

CI/CD Pipeline Optimization

How I restructured a monolith's build system and CI pipeline: replacing Dockerfile builds with JIB, adding per-app change detection, and cutting pipeline times by 83%.

  • CI/CD
  • DevOps
  • Performance
CS-09 INFRASTRUCTURE
0
MINUTES OF DOWNTIME

EKS Cluster Migrations

Upgrading EKS clusters to v1.32 and migrating Karpenter to v1 across 100+ production services with zero downtime, all as a solo DevOps engineer racing to avoid extended support charges.

  • Kubernetes
  • AWS
  • EKS