Сьогодні хочу поділитися з вами метафорою, яку я використовую для пояснення “технічного боргу” бізнесу.
У вас вдома є горище для зберігання речей (attic for storage)? В ідеалі ми акуратно складаємо туди предмети, але зазвичай буває інакше. Особисто я, коли поспішаю, навіть не піднімаюсь повністю сходами: просто привідкриваю люк і закидаю чергову коробку кудись усередину.
Так само відбувається й у розробці: інженери в поспіху не «піднімаються нагору», щоб грамотно структурувати код, написати тести й оновити документацію. Вони просто «закидають» фічі, аби швидше рухатися далі. Такий підхід накопичує технічний борг.
Настає момент, коли речі перемішані, коробки не підписані або банально закінчується місце. У мене так теж було. Повернувшись із поїздки, я не зміг покласти на горище валізу, яку брав звідти тиждень тому. Довелось влаштовувати генеральне прибирання, на яке пішли всі вихідні. Так само й із технічним боргом: що довше відкладаєш, то дорожче обходиться «прибирання».
Цю метафору можна чудово розвинути й на «технічну смерть» (горище просто обвалилося), і на зміну архітектури/framework (горище вже замале, потрібен повноцінний склад), і на регулярний технічний аудит (періодична інвентаризація горища).