Technical Debt Management
Skill Profile
(Select at least one profile to enable specific modules)
Overview
Technical debt is the implied cost of additional rework caused by choosing an easy solution now instead of using a better approach that would take longer. This skill provides frameworks for identifying, classifying, quantifying, and managing technical debt to maintain code quality, team velocity, and system health. It enables teams to balance short-term delivery speed with long-term maintainability through systematic debt tracking and repayment.
Why This Matters
- Increases Development Velocity: Reducing technical debt prevents accumulated complexity that slows down future feature development
- Reduces Maintenance Burden: Systematic debt management prevents endless cycles of fixing the same problems repeatedly
- Enables Informed Decision-Making: Understanding the cost of shortcuts helps teams make better trade-offs between speed and quality
- Improves Code Quality: Debt repayment and prevention strategies directly improve codebase health and readability
- Enhances Team Morale: Reducing frustrating workarounds and legacy systems improves developer satisfaction and productivity
Core Concepts & Rules
1. Core Principles
- Follow established patterns and conventions
- Maintain consistency across codebase
- Document decisions and trade-offs
2. Implementation Guidelines
- Start with the simplest viable solution
- Iterate based on feedback and requirements
- Test thoroughly before deployment
Inputs / Outputs / Contracts
- Inputs:
- Codebase analysis results
- Code review feedback
- Architectural review findings
- Team-reported debt items
- Performance and stability metrics
- Entry Conditions:
- Codebase is accessible
- Code analysis tools are configured
- Team is trained on debt identification
- Outputs:
- Debt register with all identified items
- Debt classification by type and severity
- Quantified debt metrics (effort, interest, risk)
- Prioritized repayment plan
- Prevention strategies and processes
- Artifacts Required (Deliverables):
- Debt register document
- Debt analysis report
- Repayment plan with timeline
- Prevention process documentation
- Acceptance Evidence:
- Debt register is complete and accessible
- Repayment capacity is allocated
- Prevention processes are implemented
- Team is trained on debt management
- Success Criteria:
- Debt is tracked and visible
- Repayment capacity is allocated
- Debt reduction metrics are improving
- Team velocity is maintained or improved
Skill Composition
Quick Start / Implementation Example
- Review requirements and constraints
- Set up development environment
- Implement core functionality following patterns
- Write tests for critical paths
- Run tests and fix issues
- Document any deviations or decisions
# Example implementation following best practices
def example_function():
# Your implementation here
pass
Assumptions / Constraints / Non-goals
- Assumptions:
- Development environment is properly configured
- Required dependencies are available
- Team has basic understanding of domain
- Constraints:
- Must follow existing codebase conventions
- Time and resource limitations
- Compatibility requirements
- Non-goals:
- This skill does not cover edge cases outside scope
- Not a replacement for formal training
Compatibility & Prerequisites
- Supported Versions:
- Python 3.8+
- Node.js 16+
- Modern browsers (Chrome, Firefox, Safari, Edge)
- Required AI Tools:
- Code editor (VS Code recommended)
- Testing framework appropriate for language
- Version control (Git)
- Dependencies:
- Language-specific package manager
- Build tools
- Testing libraries
- Environment Setup:
.env.example keys: API_KEY, DATABASE_URL (no values)
Test Scenario Matrix (QA Strategy)
| Type |
Focus Area |
Required Scenarios / Mocks |
| Unit |
Core Logic |
Must cover primary logic and at least 3 edge/error cases. Target minimum 80% coverage |
| Integration |
DB / API |
All external API calls or database connections must be mocked during unit tests |
| E2E |
User Journey |
Critical user flows to test |
| Performance |
Latency / Load |
Benchmark requirements |
| Security |
Vuln / Auth |
SAST/DAST or dependency audit |
| Frontend |
UX / A11y |
Accessibility checklist (WCAG), Performance Budget (Lighthouse score) |
Technical Guardrails & Security Threat Model
1. Security & Privacy (Threat Model)
- Top Threats: Injection attacks, authentication bypass, data exposure
2. Performance & Resources
3. Architecture & Scalability
4. Observability & Reliability
Agent Directives & Error Recovery
(ข้อกำหนดสำหรับ AI Agent ในการคิดและแก้ปัญหาเมื่อเกิดข้อผิดพลาด)
- Thinking Process: Analyze root cause before fixing. Do not brute-force.
- Fallback Strategy: Stop after 3 failed test attempts. Output root cause and ask for human intervention/clarification.
- Self-Review: Check against Guardrails & Anti-patterns before finalizing.
- Output Constraints: Output ONLY the modified code block. Do not explain unless asked.
Definition of Done (DoD) Checklist
Anti-patterns / Pitfalls
- ⛔ Don't: Log PII, catch-all exception, N+1 queries
- ⚠️ Watch out for: Common symptoms and quick fixes
- 💡 Instead: Use proper error handling, pagination, and logging
Reference Links & Examples
- Internal documentation and examples
- Official documentation and best practices
- Community resources and discussions
Versioning & Changelog
- Version: 1.0.0
- Changelog:
- 2026-02-22: Initial version with complete template structure
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
1---2name: technical-debt-management3description: Technical debt is the implied cost of additional rework caused by choosing Use when this capability is needed.4---56# Technical Debt Management78## Skill Profile9*(Select at least one profile to enable specific modules)*10- [ ] **DevOps**11- [x] **Backend**12- [ ] **Frontend**13- [ ] **AI-RAG**14- [ ] **Security Critical**1516## Overview17Technical debt is the implied cost of additional rework caused by choosing an easy solution now instead of using a better approach that would take longer. This skill provides frameworks for identifying, classifying, quantifying, and managing technical debt to maintain code quality, team velocity, and system health. It enables teams to balance short-term delivery speed with long-term maintainability through systematic debt tracking and repayment.1819## Why This Matters20- **Increases Development Velocity**: Reducing technical debt prevents accumulated complexity that slows down future feature development21- **Reduces Maintenance Burden**: Systematic debt management prevents endless cycles of fixing the same problems repeatedly22- **Enables Informed Decision-Making**: Understanding the cost of shortcuts helps teams make better trade-offs between speed and quality23- **Improves Code Quality**: Debt repayment and prevention strategies directly improve codebase health and readability24- **Enhances Team Morale**: Reducing frustrating workarounds and legacy systems improves developer satisfaction and productivity2526---2728## Core Concepts & Rules2930### 1. Core Principles31- Follow established patterns and conventions32- Maintain consistency across codebase33- Document decisions and trade-offs3435### 2. Implementation Guidelines36- Start with the simplest viable solution37- Iterate based on feedback and requirements38- Test thoroughly before deployment394041## Inputs / Outputs / Contracts42* **Inputs**:43 - Codebase analysis results44 - Code review feedback45 - Architectural review findings46 - Team-reported debt items47 - Performance and stability metrics48* **Entry Conditions**:49 - Codebase is accessible50 - Code analysis tools are configured51 - Team is trained on debt identification52* **Outputs**:53 - Debt register with all identified items54 - Debt classification by type and severity55 - Quantified debt metrics (effort, interest, risk)56 - Prioritized repayment plan57 - Prevention strategies and processes58* **Artifacts Required (Deliverables)**:59 - Debt register document60 - Debt analysis report61 - Repayment plan with timeline62 - Prevention process documentation63* **Acceptance Evidence**:64 - Debt register is complete and accessible65 - Repayment capacity is allocated66 - Prevention processes are implemented67 - Team is trained on debt management68* **Success Criteria**:69 - Debt is tracked and visible70 - Repayment capacity is allocated71 - Debt reduction metrics are improving72 - Team velocity is maintained or improved7374## Skill Composition75* **Depends on**: [architectural-reviews](../architectural-reviews/SKILL.md), [code-review](../01-foundations/code-review/SKILL.md)76* **Compatible with**: [refactoring-strategies](../01-foundations/refactoring-strategies/SKILL.md), [system-thinking](../system-thinking/SKILL.md)77* **Conflicts with**: None78* **Related Skills**: [risk-assessment](../risk-assessment/SKILL.md), [decision-records](../decision-records/SKILL.md)7980---8182## Quick Start / Implementation Example83841. Review requirements and constraints852. Set up development environment863. Implement core functionality following patterns874. Write tests for critical paths885. Run tests and fix issues896. Document any deviations or decisions9091```python92# Example implementation following best practices93def example_function():94 # Your implementation here95 pass96```979899## Assumptions / Constraints / Non-goals100101* **Assumptions**:102 - Development environment is properly configured103 - Required dependencies are available104 - Team has basic understanding of domain105* **Constraints**:106 - Must follow existing codebase conventions107 - Time and resource limitations108 - Compatibility requirements109* **Non-goals**:110 - This skill does not cover edge cases outside scope111 - Not a replacement for formal training112113114## Compatibility & Prerequisites115116* **Supported Versions**:117 - Python 3.8+118 - Node.js 16+119 - Modern browsers (Chrome, Firefox, Safari, Edge)120* **Required AI Tools**:121 - Code editor (VS Code recommended)122 - Testing framework appropriate for language123 - Version control (Git)124* **Dependencies**:125 - Language-specific package manager126 - Build tools127 - Testing libraries128* **Environment Setup**:129 - `.env.example` keys: `API_KEY`, `DATABASE_URL` (no values)130131132## Test Scenario Matrix (QA Strategy)133134| Type | Focus Area | Required Scenarios / Mocks |135| :--- | :--- | :--- |136| **Unit** | Core Logic | Must cover primary logic and at least 3 edge/error cases. Target minimum 80% coverage |137| **Integration** | DB / API | All external API calls or database connections must be mocked during unit tests |138| **E2E** | User Journey | Critical user flows to test |139| **Performance** | Latency / Load | Benchmark requirements |140| **Security** | Vuln / Auth | SAST/DAST or dependency audit |141| **Frontend** | UX / A11y | Accessibility checklist (WCAG), Performance Budget (Lighthouse score) |142143144## Technical Guardrails & Security Threat Model145146### 1. Security & Privacy (Threat Model)147* **Top Threats**: Injection attacks, authentication bypass, data exposure148- [ ] **Data Handling**: Sanitize all user inputs to prevent Injection attacks. Never log raw PII149- [ ] **Secrets Management**: No hardcoded API keys. Use Env Vars/Secrets Manager150- [ ] **Authorization**: Validate user permissions before state changes151152### 2. Performance & Resources153- [ ] **Execution Efficiency**: Consider time complexity for algorithms154- [ ] **Memory Management**: Use streams/pagination for large data155- [ ] **Resource Cleanup**: Close DB connections/file handlers in finally blocks156157### 3. Architecture & Scalability158- [ ] **Design Pattern**: Follow SOLID principles, use Dependency Injection159- [ ] **Modularity**: Decouple logic from UI/Frameworks160161### 4. Observability & Reliability162- [ ] **Logging Standards**: Structured JSON, include trace IDs `request_id`163- [ ] **Metrics**: Track `error_rate`, `latency`, `queue_depth`164- [ ] **Error Handling**: Standardized error codes, no bare except165- [ ] **Observability Artifacts**:166 - **Log Fields**: timestamp, level, message, request_id167 - **Metrics**: request_count, error_count, response_time168 - **Dashboards/Alerts**: High Error Rate > 5%169170171## Agent Directives & Error Recovery172*(ข้อกำหนดสำหรับ AI Agent ในการคิดและแก้ปัญหาเมื่อเกิดข้อผิดพลาด)*173174- **Thinking Process**: Analyze root cause before fixing. Do not brute-force.175- **Fallback Strategy**: Stop after 3 failed test attempts. Output root cause and ask for human intervention/clarification.176- **Self-Review**: Check against Guardrails & Anti-patterns before finalizing.177- **Output Constraints**: Output ONLY the modified code block. Do not explain unless asked.178179180## Definition of Done (DoD) Checklist181182- [ ] Tests passed + coverage met183- [ ] Lint/Typecheck passed184- [ ] Logging/Metrics/Trace implemented185- [ ] Security checks passed186- [ ] Documentation/Changelog updated187- [ ] Accessibility/Performance requirements met (if frontend)188189190## Anti-patterns / Pitfalls191192* ⛔ **Don't**: Log PII, catch-all exception, N+1 queries193* ⚠️ **Watch out for**: Common symptoms and quick fixes194* 💡 **Instead**: Use proper error handling, pagination, and logging195196197## Reference Links & Examples198199* Internal documentation and examples200* Official documentation and best practices201* Community resources and discussions202203204## Versioning & Changelog205206* **Version**: 1.0.0207* **Changelog**:208 - 2026-02-22: Initial version with complete template structure209210---211> Converted and distributed by [TomeVault](https://tomevault.io/claim/amnadtaowsoam) — claim your Tome and manage your conversions.212<!-- tomevault:4.0:skill_md:2026-04-13 -->