plugins/axiom-engineering-foundations/skills/using-software-engineering/SKILL.md
Use when facing complex engineering challenges that require systematic methodology - horrible bugs, safe refactoring, code review, production incidents, technical debt decisions, or building confidence in unfamiliar codebases
npx skillsauth add tachyon-beep/skillpacks using-software-engineeringInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Universal methodology for professional software engineering practice. Language-agnostic foundations that apply regardless of tech stack.
Engineering excellence is methodology, not heroics. Systematic approaches beat clever improvisation. These skills encode battle-tested processes for situations where "just figure it out" leads to wasted time and missed root causes.
Load this skill when:
Don't use for: Language-specific issues (use language packs), algorithm design (use CS fundamentals), infrastructure/deployment (use DevOps packs).
IMPORTANT: All reference sheets are in the SAME DIRECTORY as this SKILL.md.
When this skill is loaded from:
skills/using-software-engineering/SKILL.md
Reference sheets like complex-debugging.md are at:
skills/using-software-engineering/complex-debugging.md
NOT at:
skills/complex-debugging.md (WRONG PATH)
Symptoms:
Route to: complex-debugging.md
Why: Systematic debugging methodology using scientific method. Adapted for Claude's strengths (fast codebase reading, pattern recognition) and limitations (no interactive debuggers).
Integration: For domain-specific bugs, use this methodology THEN hand off to specialists:
yzmir-pytorch-engineering (debug-oom, debug-nan)yzmir-deep-rl (rl-debugging)bravos-simulation-tactics (debugging-simulation-chaos)yzmir-ml-production (production-debugging-techniques)Symptoms:
Route to: systematic-refactoring.md
Why: Safe, incremental transformation methodology. Preserves behavior while improving structure.
Pairs with: technical-debt-triage.md to decide WHAT to refactor, this skill for HOW.
Symptoms:
Route to: code-review-methodology.md
Why: Systematic review process - what to look for, in what order, how to give actionable feedback.
Pairs with: codebase-confidence-building.md when reviewing unfamiliar code areas.
Symptoms:
Route to: incident-response.md
Why: Fire-fighting methodology - contain, diagnose, fix, learn. Keeps you calm under pressure.
Note: Use DURING incidents for process. Use complex-debugging.md for the debugging portion.
Symptoms:
Route to: technical-debt-triage.md
Why: Systematic identification, categorization, and prioritization. When to pay down vs. live with debt.
Pairs with:
Symptoms:
Route to: codebase-confidence-building.md
Why: Systematic exploration to internalize a system you'll maintain. Different from archaeology (analysis) - this is about building working mental models.
Pairs with:
Related but different: axiom-system-archaeologist is for architecture ANALYSIS. This skill is for INTERNALIZATION of systems you'll maintain long-term.
When situation unclear, ASK ONE clarifying question:
"Help me with this code" → Ask: "What's the goal? Debug a bug? Review quality? Refactor safely? Understand it?"
"This is a mess" → Ask: "Do you need to debug something broken, or clean up working-but-ugly code?"
"Fix this" → Ask: "Is it broken (debugging) or just ugly (refactoring)?"
Never guess. Ask once, route accurately.
| Symptom | Wrong | Correct | Why | |---------|-------|---------|-----| | "Code needs cleanup" | complex-debugging | systematic-refactoring | Not broken, needs transformation | | "Bug in code I don't know" | complex-debugging only | confidence-building THEN debugging | Understand before debugging | | "Production down" | complex-debugging | incident-response THEN debugging | Contain first | | "Should we fix this debt?" | systematic-refactoring | technical-debt-triage | Decide WHAT before HOW | | "Review this PR" | complex-debugging | code-review-methodology | Review ≠ debugging |
| Sheet | Purpose | |-------|---------| | complex-debugging.md | Scientific method for horrible bugs | | systematic-refactoring.md | Safe incremental code transformation | | code-review-methodology.md | How to review systematically | | incident-response.md | Production fire methodology | | technical-debt-triage.md | Identify, prioritize, decide | | codebase-confidence-building.md | Internalize systems you maintain |
This plugin provides methodology. Other plugins provide domain expertise. Use together:
| This Plugin | Pairs With | For |
|-------------|------------|-----|
| complex-debugging | yzmir-pytorch-engineering | ML debugging (OOM, NaN) |
| complex-debugging | yzmir-deep-rl:rl-debugging | RL training issues |
| complex-debugging | ordis-quality-engineering | Flaky tests, observability |
| complex-debugging | yzmir-systems-thinking | Systemic/feedback loop bugs |
| incident-response | ordis-quality-engineering | Chaos engineering, load testing |
| technical-debt-triage | axiom-system-architect | Architecture-level debt |
| technical-debt-triage | ordis-quality-engineering | Quality metrics, static analysis |
| codebase-confidence-building | axiom-system-archaeologist | Formal architecture analysis |
Pattern: Use this plugin's methodology to structure your approach, then hand off to domain specialists for specific technical guidance.
All reference sheets are adapted for Claude's unique position:
Claude's Strengths (lean into these):
Claude's Limitations (work around these):
When to ask the user: Sooner rather than later, but ONLY if you can't get the information yourself. Check logs, code, git history, tests first.
development
Use when **managing the delivery of work** rather than building it — running a project or a program, not writing its code. Use when a team is busy but outcomes are not landing, when "when will it be done" has no defensible answer, when status is green every week until it is suddenly red, when dependencies surprise you, when a RAID log is a graveyard, or when several projects must be coordinated toward one outcome (a program). Lean/agile-leaning, honest about where program scale needs predictive structure. Pairs with `/axiom-planning` (turning one workstream into an implementation plan) and `/axiom-sdlc-engineering` (process maturity, requirements traceability, formal governance). Do not load for writing code, picking an architecture, or designing a single feature.
tools
--- name: using-product-management description: Use when a Claude is taking **standing ownership** of a software product and driving it end-to-end across many sessions — discovery, strategy, specs, delivery orchestration, and value validation — deciding *what to build, why, for whom,* and *whether it worked*, with continuity, decision provenance, and an authority boundary that escalates anything irreversible or outward-facing to the human owner. Owns the product disciplines: opportunity assessme
tools
Use when designing, implementing, or auditing an MCP (Model Context Protocol) server — tool API design, idempotency under agent retry, structured error envelopes agents can recover from, schema versioning across model drift, transport reliability (stdio / HTTP), output-shape and pagination discipline, and choosing between tools / resources / prompts / sampling. Also use when an MCP server's tools confuse agents, return unstructured errors, deadlock under concurrent calls, double-execute under retry, or lose state across reconnects. Do not use for general REST/GraphQL API design (use `/web-backend`), for client-side prompt engineering or tool-loop design (use `/llm-specialist`), for general in-process plugin architecture (use `/system-architect`), or for cryptographic-provenance audit trails (use `/audit-pipelines`).
development
Use when running **SQLite or DuckDB inside an application process** as the durable store — not as a development convenience but as the production database. Use when scaling an SQLite layer that worked at low concurrency and is now hitting SQLITE_BUSY, WAL bloat, lock contention, schema-migration ceremony, or correctness gaps under multi-process writers. Use when introducing DuckDB as an OLAP complement to an OLTP SQLite store, or when picking between the two for a new component. Pairs with `/web-backend` (the API surface above the DB) and `/audit-pipelines` (when the DB is also the audit trail). Do not load for server databases (Postgres, MySQL), key-value stores, or ORM choice in isolation.