# Backend

> Backend engineering judgment, distilled from a stronger model - invoke when CHOOSING a tech stack, language, database, queue, or architecture; designing a service, API, business logic, or schema; making a system production-ready (observability, failure handling, security); or reviewing server-side code and judging codebase health. Scenario-driven stack tradeoffs, logic-design rules, data discipline, production floors, and a rot catalog (the early signs of unmaintainable code).

- Skill: `telagod/backend` (Agent Skill, multi-file: 6 files)
- Install (CLI): `npx skillmds@latest add telagod/backend`
- Raw SKILL.md: https://api.skillmd.com/api/skills/telagod/backend/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: telagod (https://skillmd.com/u/telagod)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/telagod/backend

---


# Backend — stack, logic, data, operations, rot

Rule content lives in the five files below; this SKILL.md only routes
(`doctrine/04-maintenance.md` governs edits to this bundle too).

## Route by moment

| You are about to… | Read (in this folder) |
|---|---|
| Pick a language / framework / DB / queue / architecture, or judge a stack proposal | `stack.md` |
| Design or review a service, module, API, or piece of business logic | `logic.md` |
| Design a schema, transaction, migration, or cache | `data.md` |
| Ship to production — observability, config, failure modes, security, jobs, limits | `operate.md` |
| Review existing code, plan a refactor, or explain why a codebase feels dangerous | `rot.md` |

Starting a new system usually means `stack.md` → `logic.md` → `data.md`, in that order:
stack only after the scenario interrogation, endpoints only after the data model.

## Scope and neighbors

Server-side engineering judgment only. Whether to delegate and when to escalate →
`doctrine`; how to investigate/verify anything → `methods`; the visual/UI layer →
`frontend`.

## The stance

The one test governing the whole bundle is `logic.md`'s opening line — is change still
cheap and safe — and `rot.md`'s opening defines the failure mode and the ugly-but-safe
tiebreak. Read those two openings before judging any backend.

