What I learned decomposing a field-service product into 14 NestJS services — service boundaries, a shared Zod contract layer, an auth gateway, and async messaging — without drowning in distributed-systems complexity.
Role flags do not survive contact with a real enterprise app. Here is the three-tier access model — module, feature, resource — I built for a large manufacturing dashboard, and why each tier earns its place.
For a newer AI-agent platform I reached past the usual Express/Nest defaults for a lighter, edge-friendly stack. Here is what Hono and Drizzle buy you — and the trade-offs to go in with eyes open.