Вы решили разбить свой монолит на микросервисы. Вы начали с правой ноги, отделяя логику приложения на основе определенных вами ограниченных контекстов. В этом случае вы описываете контекст «страны» и контекст «пользователя».
Микросервисы могут быть развернуты независимо, поэтому вы правы, они должны быть отдельными банками. Ваш «пользовательский» сервис будет вызывать сервис «стран» через сеть, как обычно в архитектуре микросервисов.
Обычно каждый микросервис имеет свой репо (проект), так что разработчики, которые должны работать над сервисом,не нужно знакомиться с большой кодовой базой или выяснять, почему существует код, не связанный с их службой (ограниченным контекстом).
При этом, если в настоящее время ваш проект довольно мал, вы можете оставить этикак отдельные модули ( не импортируйте модуль стран в пользовательский модуль ) в рамках одного проекта и разбивайте их позже.