I’m by no means an expert when it comes to Postman, however I can say I periodically rework how my collections and environments play together. I do this as things change and when I find a better way of doing things. I used to have each of my different deploy environments (Dev, Int, QA, Beta, Prod, etc) setup with each having a separate Postman environment. This would probably be much the same way you are using environments for different roles.
As we change some of the ways our APIs work I started to move more towards having anything the environments share in common placed into the Postman global variables. Then I started splitting the different deploy environments into separate folders underneath a single collection. This way I only have a single Postman collection, environment variables and global variables file. This has been beneficial when using Newman to run at time of deploy. The individual environment folder gets called per deploy environment.
The more I use Postman the more I think “Why wasn’t I doing it this way from the beginning?” What was logical at one time might not be logical in the future as we learn from our mistakes and new ways of accomplishing goals get discovered.
My hope is others will chime in on your question so you and I can see how more than just I am using Postman.
Best of luck in your discoveries,