Kata · Product EngineerKata
// Stack

How I Build

I don't default to a single stack. I choose tools based on the problem, the product, and the constraints.

// Backend
Node.jsTypeScriptExpressHonoGo

Node and TypeScript are my default backend stack. I reach for Go when a service benefits from low overhead, predictable performance, or a single deployable binary.

// Data & Storage
PostgreSQLPrismaDrizzleMongoDBRedisAWS S3Cloudinary

Postgres for anything relational, MongoDB where a document model genuinely fits better, not by default. Redis for message queues, caching, and ephemeral data.

// Frontend
ReactNextViteAstro

Enough to build a clean interface without fighting the tooling to get there.

// AI & Models
GeminiGemma 4

The right-sized model for the job. One model reasoning, a smaller one handling a task it fits better.

// Deployment & Infra
VPSRenderVercelDigitalOceanGCP

I choose deployment infrastructure based on workload, cost, and operational simplicity rather than forcing every project onto the same platform.

// Exploring
Cloudflare WorkersAI AgentsRAGPersistent Agent Memory

Already using agentic tool-calling in SiteStamp. Going deeper into RAG and persistent agent memory, while exploring Cloudflare Workers for smaller services.

// Testing & Quality
JestSupertestZodESLint

I prefer explicit validation, isolated boundaries, and tests around the parts of a system that are actually worth protecting.

// Developer Tooling
pnpmBunTurborepoDockerPodmanGitHub Actions

I keep the development workflow lightweight and reproducible, with fast package management, containerized environments, and automated CI.