Разработчики SimbirSoft описали подход к управлению техническим долгом при внедрении новых функций в приложение сервиса аренды самокатов «Юрент». Концепция «управляемого технического долга» подразумевает осознанное принятие решений, ведение документации и наличие плана по исправлению кода, чтобы предотвратить его превращение в неконтролируемый легаси.

Для добавления промокнопки команда применила принципы чистой архитектуры, разделив код на независимые слои: Domain для бизнес-логики, Data для работы с данными и Core для базовых компонентов. Использование интерфейсов и внедрение зависимостей позволили изолировать изменения и упростить тестирование через подстановку моков.

Реализация промокнопки включает кеширование данных в ConcurrentHashMap. Разработчики осознанно оставили кеш без механизма TTL, так как акции обновляются редко. Этот долг задокументирован в коде и в системе Jira, что позволяет при необходимости быстро внести изменения в репозиторий, не затрагивая бизнес-логику или интерфейс приложения.

Помимо архитектуры, команда провела унификацию UI-компонентов. В приложении было обнаружено 34 вида шторок BottomSheet с различающимися отступами, стилями и логикой навигации. Разработчики создали универсальный UI-компонент и стандартизировали поведение шторок, разделив их на модальные и немодальные типы для обеспечения единообразия интерфейса.