Technical Debt (also refered as tech debt) is one of the most important concept in software development. It refers to the results of taking shortcuts in coding or not respescting state-of-the-art coding in order to ensure the delivery of the functionality before the deadline or to reduce time-to-market. It is described as debt because the piece of code will have to be refactored later to make the implementation of new pieces of code easier in the future. Please note that technical debt can also be caused by evolution of technologies, coding methods, APIs implementation and is not always intentional. As per the Agile Principle about technical excellence, there should be no technical debt in Agile. Being realistic, there will always be some technical debt, which is fine, as long as refactoring is planned and understood by the whole Team. Most Teams even plan refactoring sprints that will only be allocated to reduce the technical debt. It is called debt, because for a single feature for which you took the easy path, it might add 10% of working time for the next 20 releases for example.