The foundations I'm working through

I'm building out the groundwork every product needs and sharing the thinking as I go. Follow along, take what helps, and tell me what you'd do differently.

01

Platform

The ground it all runs on.
Infrastructure
As codeEnvironmentsEdge & DNSSecrets
Security
Identity & authAccess controlEncryptionAudit logs
Observability
LogsMetricsTracesAlerts
Delivery & quality
CITestsLintingReleases
02

Services

The typed API core on top.
Schema & contracts
ProtobufGraphQLOpenAPIVersioning
Generated SDKs
Go SDKTypeScript SDKTyped clientsIn sync
Gateways
API gatewayMCP gatewayRoutingRate limits
Workers
QueuesConsumersSchedulesRetries
03

Data & AI

Memory and intelligence.
Data layer
Relational storeTyped queriesMigrationsSoft deletes
Search
Full-textFiltersVector searchRanking
Analytics
EventsMetricsDashboardsReports
AI foundations
Model gatewayRetrievalAgentsEvaluations
04

Product

The surfaces people use.
Client apps
WebMobileAuth flowsOffline
Design system
Tokens & themingComponentsIconsDark mode
Notifications
EmailIn-appPushPreferences
Billing
PlansProduct bundlesUsageInvoices

A few principles I keep coming back to

The specific tools are the easy part, and the first to change. What holds steady underneath matters more. These principles come from my own context, so if you'd approach something differently, I'd genuinely like to hear it.

Stack-agnostic

Good foundations translate to any language or framework.

Vendor-agnostic

Choose the providers that fit your context; the foundation holds.

A working prototype

Each foundation becomes a lightweight, working prototype, real code that shows the concept in action.

Transparent decisions

I share the trade-offs, the calls I make, and the ones I would revisit.