🎁 New User? Get 20% off your first purchase with code NEWUSER20 Register Now →
Menu

Categories

Programming Concepts Beginner

What is Technical Debt?

The implied cost of additional rework caused by choosing a quick solution now instead of a better approach that would take longer.

Technical debt is a metaphor comparing shortcuts in code to financial debt — borrowing speed now costs interest (maintenance burden) later. Types include deliberate debt (conscious trade-offs for deadlines), accidental debt (poor design due to inexperience), and bit rot (code degrading as requirements evolve). Symptoms include slow feature development, frequent bugs, long onboarding times, and fear of changing code. Managing technical debt requires tracking it explicitly, allocating time for repayment (refactoring sprints), preventing accumulation (code review, testing), and making debt visible to stakeholders. Some technical debt is strategic; unmanaged debt is dangerous.

Related Terms

Stack
A data structure that follows Last-In-First-Out (LIFO) ordering, where elements are added and removed from the same end (top).
Singleton Pattern
A design pattern that restricts a class to a single instance and provides a global point of access to that instance.
Twelve-Factor App
A methodology of twelve best practices for building modern, scalable, maintainable software-as-a-service applications.
Thread
The smallest unit of execution within a process, allowing concurrent operations to run within a single program.
Data Structure
A way of organizing and storing data in a computer so it can be accessed and modified efficiently.
Linked List
A linear data structure where elements are stored in nodes, each containing data and a pointer to the next node in the sequence.
View All Programming Concepts Terms →