Teknik borç, yazılım geliştirirken hızlı ilerlemek için bilinçli veya bilinçsiz şekilde geride bırakılan sorunların toplamıdır. İlk etapta çalışır görünen ama sonra geliştirmeyi yavaşlatan kodlar, plansız veritabanı yapısı, eksik testler ve geçici çözümler bu borca girer. Borç kelimesi boşuna kullanılmaz çünkü bugün zaman kazanmak için alınan kısa yol, ileride daha fazla zaman ve para olarak geri döner.
Bir projede başta "şimdilik böyle kalsın, sonra düzeltiriz" denilen yerler aylar sonra en pahalı noktalara dönüştü. Özellikle auth, ödeme ve bildirim akışları plansız yazılınca her yeni özellikte eski kod bir yerden patlıyordu. Teknik borç tamamen kötü değildir; bazen MVP çıkarmak için bilinçli alınır. Ama neyi ertelediğini yazmazsan, ekip değişince kimse neden öyle yapıldığını bilmez. Sonra ürün büyümek yerine kendi kodunun içinde boğulur.