Блокирование - это нормально. Разработчиками необходимо договариваться об интерфейсах ("стыках" зон ответственности). Как правило, любая крупная фича как минимум делится по слоям: представление - бизнес-логика - доступ к данным, в вебе чаще всего эти слои присутствуют как на фронте, так и на бэкенде. Кроме того сервисный слой может и должен крошиться на независимые функциональные блоки (сервисы).
Если же идут отмазки в духе: "Я же не знаю, какие данные мне могут понадобиться", то это укажет на недостаток планирования и/или необходимость "разведки боем" в виде какого-то прототипа наивной имплементации.