Engineering Tech Radar
Our living assessment of languages, databases, infrastructure, and architectural patterns. What we bet production systems on (Adopt), what we are testing (Trial), and what we actively avoid (Hold).
Next.js (App Router)
React Server Components reduce client JS payloads to near zero. Streaming suspense boundaries prevent blank screens, and route handlers with Edge runtime deliver sub-30ms API responses.
TypeScript (Strict Mode)
Eliminates 90% of runtime TypeError bugs at compile time. Paired with Zod schema parsing at the HTTP perimeter, we know exact payload shapes before touching database transactions.
PostgreSQL
ACID transactions, robust JSONB support, Row Level Security (RLS) for tenant isolation, and pgvector extensions make Postgres the only database 95% of businesses will ever need.
Drizzle ORM
Unlike heavyweight ORMs that generate hidden, slow multi-join queries, Drizzle stays close to real SQL while providing TypeScript inference and ultra-fast cold starts.
Redis & BullMQ
Decouples fast HTTP ingress from heavy background tasks (email dispatch, PDF rendering, external API syncing) with automated retry backoffs and dead-letter queueing.
Tailwind CSS
Utility tokens generate ultra-lean production stylesheets (under 15kb gzip). Avoids CSS specificity wars and enforces consistent spacing, typography, and color tokens.
Row Level Security (RLS)
Prevents cross-tenant data leaks even if an engineer omits a WHERE tenant_id clause in application code. Mathematically enforced at the PostgreSQL engine level.
pgvector
Eliminates the complexity and bill of external vector databases (Pinecone/Milvus) by keeping embedding vectors directly next to relational user data. HNSW indexes yield sub-35ms cosine lookups.
Bun Runtime
Installs node_modules in seconds and executes standalone scripts 3x faster than Node. We evaluate it for background utilities while keeping Node.js LTS for mission-critical core servers.
Hono.js
Runs identically across Cloudflare Workers, Node, Bun, and Deno with negligible footprint. Ideal for isolated webhook proxy microservices.
Local LLM Inference (Ollama)
Useful for pre-filtering sensitive client documents before sending to cloud APIs. We monitor memory footprint and latency tradeoffs on small cloud VPS instances.
Temporal.io Workflows
High value for multi-week human-in-the-loop approval workflows, though setup overhead is only justified for complex enterprise scale.
Heavy Monolithic ORMs
Abstracts SQL so heavily that teams ship queries fetching 50,000 rows into memory just to display 10 items. We prefer explicit, type-safe SQL builders like Drizzle.
Premature Kubernetes (K8s)
Small teams spend 60% of their maintenance hours debugging ingress controllers, Helm charts, and pod networking instead of shipping product. Managed platforms (Vercel, Railway, Fly.io) deliver better reliability with zero overhead.
Bloated All-in-One UI Frameworks
Massive component libraries that override CSS and introduce hydration layout shifts. We favor headless primitives (Radix) with tailored Tailwind styling.
Thin AI Wrappers without Guardrails
Sending ungrounded prompts directly to LLMs without schema validation, fallback models, or vector context produces hallucinated outputs and unpredictable costs.
Building on an aligned modern stack?
We ship on battle-tested tools with zero unnecessary abstractions so your team can maintain and scale effortlessly after handover.