using-software-engineering

Software Engineering Foundations

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "using-software-engineering" with this command: npx skills add tachyon-beep/skillpacks/tachyon-beep-skillpacks-using-software-engineering

Software Engineering Foundations

Universal methodology for professional software engineering practice. Language-agnostic foundations that apply regardless of tech stack.

Core Principle

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.

When to Use

Load this skill when:

  • Facing a bug that resists simple fixes

  • Need to refactor safely without breaking things

  • Reviewing code (yours or others')

  • Production is on fire

  • Deciding what technical debt to address

  • Taking ownership of code you don't fully understand

Don't use for: Language-specific issues (use language packs), algorithm design (use CS fundamentals), infrastructure/deployment (use DevOps packs).

How to Access Reference Sheets

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)

Routing by Situation

Horrible Bugs

Symptoms:

  • Bug resists simple fixes

  • "I've tried everything"

  • Intermittent failures

  • Works on my machine

  • Can't reproduce reliably

  • Multi-system interactions

  • Heisenbugs (changes when observed)

  • Race conditions suspected

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:

  • PyTorch issues → yzmir-pytorch-engineering (debug-oom, debug-nan)

  • RL training → yzmir-deep-rl (rl-debugging)

  • Simulation chaos → bravos-simulation-tactics (debugging-simulation-chaos)

  • ML production → yzmir-ml-production (production-debugging-techniques)

Safe Code Transformation

Symptoms:

  • "This code needs cleanup"

  • Large refactoring needed

  • Scared to change working code

  • Technical debt paydown

  • Architecture migration

  • "How do I change this without breaking it?"

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.

Code Review

Symptoms:

  • Reviewing someone's PR

  • Want feedback on your code

  • "Is this code good?"

  • Pre-merge quality check

  • Teaching through review

  • Review feels overwhelming

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.

Production Fire

Symptoms:

  • Production is down

  • Users are affected NOW

  • Incident in progress

  • Need to triage quickly

  • Postmortem needed

  • "Everything is broken"

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.

Technical Debt Decisions

Symptoms:

  • "Should we fix this?"

  • Prioritizing cleanup work

  • Debt is slowing us down

  • Sprint planning for maintenance

  • "Everything needs fixing"

  • Justifying refactoring to stakeholders

Route to: technical-debt-triage.md

Why: Systematic identification, categorization, and prioritization. When to pay down vs. live with debt.

Pairs with:

  • systematic-refactoring.md for HOW to fix

  • codebase-confidence-building.md to understand debt in unfamiliar areas

Building Codebase Confidence

Symptoms:

  • "I own this but don't fully understand it"

  • New to a codebase

  • Taking over from someone

  • ~70% confidence, need more

  • "Where do I even start?"

  • Undocumented system

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:

  • technical-debt-triage.md - confidence reveals debt

  • code-review-methodology.md - review helps you learn

Related but different: axiom-system-archaeologist is for architecture ANALYSIS. This skill is for INTERNALIZATION of systems you'll maintain long-term.

Cross-Cutting Scenarios

Taking Over a Codebase

  • codebase-confidence-building.md - Build mental model

  • technical-debt-triage.md - Identify what needs fixing

  • systematic-refactoring.md - Execute improvements

Inherited Bug in Unfamiliar Code

  • codebase-confidence-building.md - Understand relevant subsystem

  • complex-debugging.md - Apply debugging methodology

Major Refactoring Project

  • technical-debt-triage.md - Prioritize what to fix

  • systematic-refactoring.md - Safe transformation process

  • code-review-methodology.md - Validate changes

Production Incident with Unknown Root Cause

  • incident-response.md - Contain and triage

  • complex-debugging.md - Find root cause

  • incident-response.md - Postmortem

Ambiguous Queries - Ask First

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.

Common Routing Mistakes

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

Reference Sheet Catalog

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

Cross-Plugin Integration

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.

Claude-Specific Adaptations

All reference sheets are adapted for Claude's unique position:

Claude's Strengths (lean into these):

  • Fast codebase reading - can scan entire codebases quickly

  • Pattern recognition - spot similar bugs across files

  • Exhaustive search - check every occurrence of a pattern

  • No fatigue - systematic processes don't tire Claude out

  • Memory within session - track hypotheses and experiments

Claude's Limitations (work around these):

  • No interactive debuggers (gdb, pdb step-through)

  • Can't observe runtime state directly

  • Must ask user for information Claude can't get (logs, user actions, production state)

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.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

using-pytorch-engineering

No summary provided by upstream source.

Repository SourceNeeds Review
General

using-simulation-tactics

No summary provided by upstream source.

Repository SourceNeeds Review
General

using-system-architect

No summary provided by upstream source.

Repository SourceNeeds Review