problem for you to have an API that has repository and service and then it has controllers towards rest towards GRP see towards the Kafka or other streaming platforms so try to separate it both horizontally and vertically clean architecture programming the development practices so I try to split them up by organization level and T blow so in order to have a good development and good api's some rules in the organization needs to be set up it talking in small companies when you have a small team and startup you are