Собираемся работать с широчайшим ассорти разработчиков, как им давать задания, чтобы при этом они не имели доступа к секретным местам системы? Если пробовать микросервисы, то надо все равно делать API от главного сервера, соответственно доступ нужен. Или это вообще невозможно?
Возможно. Зависимость проста и понятна: чем меньше разработчик знает о разрабатываемом продукте, тем хуже результат его работы. Для лучшего понимания проблемы почитайте где-нибудь, чем кодер отличается от программиста.
Ядро и клей между стыками отдельно кодируемых модулей.
В качестве клея - система интерфейсов, управляемая ядром.
Это всё проектирует архитектор программного комплекса.
Требования и регламент для создания модулей - пишут технические писатели согласно требованиям архитектора.
Будете засекречивать - упрут просто из принципа.
А вообще все просто: система разбивается на модули, модули документируются, доступ к исходникам модулей есть только у их разработчиков.