this is a very nebulous concept, because it varies between orgs. In your situation, I would minimise the size of projects where possible.
Think about the rate of change that you have between different things. I’d use component resources to group things together where needed