Ответ
Основные причины:
- Недооценка сроков – сложность задач оказалась выше ожидаемой.
- Изменение требований – частые правки от заказчика/менеджера.
- Технические ограничения – например, API с неожиданными багами или лимитами.
- Зависимости от других команд – задержки по интеграциям.
Пример:
// Задача: реализовать платежный модуль
// Проблема: API банка не поддерживал нужную валюту
fun processPayment(amount: Double, currency: String) {
if (!bankApi.supportsCurrency(currency)) {
throw UnsupportedCurrencyException() // Пришлось переделывать логику
}
}
Всегда анализировал причины и предлагал решения: уточнял ТЗ заранее, добавлял буфер по времени, тестировал API до интеграции.