Dev Blog

Building systems that survive real use.

Essays on HubSpot architecture, AI workflow design, and engineering delivery for teams that care about what happens after launch, when operators, edge cases, and changing requirements put the real system on display.

Aug 28, 20267 min read

What Game Development Taught Me About Shipping Software

Games make software feedback immediate. Building five of them sharpened how I think about iteration, device realities, content quality, and the difference between correct and genuinely enjoyable.

Game DevelopmentProductDelivery

Aug 27, 20266 min read

Building Five Party Games on One Platform

Five party games can share a platform without becoming the same game. The useful architecture keeps sessions, delivery, and operations common while leaving each rule system explicit.

Game DevelopmentArchitectureDelivery

Aug 14, 20265 min read

The Work Behind Two New Client Recommendations

Two new public recommendations describe the same kind of delivery I value: listen carefully, take ownership, translate ambiguity, improve the underlying system, and leave a team with something maintainable.

Client WorkCareersDelivery

Aug 12, 20266 min read

Timed Lyrics Are a Data Engineering Problem

Synchronized lyrics look simple in a player, but trustworthy line timing depends on identity, source text, alignment, validation, export, and a local QA gate.

DataAudioDelivery

Aug 8, 20265 min read

The Living Room Is a Different Computing Environment

A television app has different input, distance, attention, and release constraints than a web page. Designing for it means treating the device as its own computing environment.

ProductRokuDelivery

Aug 1, 20266 min read

AI Evaluations Are Product Requirements

If an AI feature can change a customer decision, an operator workflow, or a safety boundary, its evaluation plan is part of the product requirement.

AIProductDelivery

Jul 28, 20266 min read

Feature Flags Are Operational Controls

Feature flags are not just a way to hide unfinished UI. They are operational controls that need owners, evidence, rollback rules, and cleanup dates.

DeliveryOperationsArchitecture

Jul 24, 20265 min read

Technical Discovery Should Produce Decisions, Not Documents

Good technical discovery reduces delivery risk by turning uncertainty into explicit decisions, owners, constraints, and acceptance criteria instead of producing a large document that nobody operates from.

DeliveryOperationsGovernance

Jul 13, 20265 min read

Large Enterprise Migrations Are More Than Moving Content

Enterprise migrations succeed when teams treat them as coordinated changes to traffic, data, integrations, ownership, and operations rather than as a bulk transfer between platforms.

ArchitectureOperationsDelivery

Jul 9, 20265 min read

What a Forward Deployed Engineer Actually Does

Forward Deployed Engineers sit close to customers, but the role is more than technical consulting. They own the difficult path from an ambiguous business problem to a working production system.

DeliverySystemsCareers

Jun 7, 20265 min read

Queues Are a Product Surface

Internal systems work better when teams design the queue itself as a product surface instead of focusing only on the single-record happy path.

OperationsSystemsDelivery

Jun 4, 20265 min read

Prompt Changes Are Production Changes

Prompt edits can change routing, escalation, and decision quality in production, so they deserve versioning, evaluation, and rollback.

AIDeliveryOperations

May 22, 20264 min read

Good Workflows Make Ownership Obvious

Workflow quality depends on whether each state has a clear owner, a clear next action, and a clear escalation path.

SystemsDeliveryArchitecture

May 21, 20265 min read

Documentation Should Lower Coordination Cost

Useful documentation reduces coordination drag by making state, ownership, and recovery legible without extra meetings.

DocumentationDeliveryOperations

May 20, 20264 min read

Operational Simplicity Is a Product Feature

Operational simplicity lets teams publish, recover, and change systems without constant escalation or hidden process drag.

OperationsDeliverySystems

May 18, 20264 min read

Why Internal Tools Fail After the Demo

Internal tools succeed when they reduce operator friction in real queue work, not just when they look polished in demos.

OperationsSystemsDelivery

May 16, 20264 min read

The Case for Boring Integrations

Boring integrations stay reliable because their contracts, ownership, and failure handling are explicit from the start.

ArchitectureSystemsDelivery

May 6, 20264 min read

What to Instrument Before a New System Goes Live

Launches go better when teams instrument critical workflow states, delays, failures, and human intervention before go-live.

DeliveryOperationsArchitecture

May 4, 20264 min read

Shipping Fast Without Building Fragile Systems

Fast delivery only lasts when teams keep change cheap and refuse to let temporary shortcuts harden into architecture.

DeliveryArchitectureSystems

May 1, 20265 min read

Why This Dev Blog Exists

This dev blog is where I write about the architectural, operational, and delivery decisions that determine whether systems keep working after launch.

ArchitectureDeliverySystems