Мы вчера смотрели большое нагруженное приложение, легаси, большая команда. Очень критично не падать и не пропускать ошибки в прод.
И там именно из-за этой критичности везде используются исключения. Чтобы проще ловить и чище "happy path"
Аргументы про непредсказуемость - слабые. Точно так же можно забывать обработать Failure и пропустить ее туда, куда не следовало бы.
Это про дисциплину, внимательность и опыт.
аргумент про не предсказуемость в том, что ты не знаешь от куда прилетит исключение. это может быть одна вложенность, а может прилететь через 5 разных зависимостей