Your approach ensures a stable master branch while allowing parallel development in team branches. However, maintaining a long-lived development branch can lead to merge conflicts and delays. Instead, consider feature branches directly off master, with short-lived release branches for final QA. Automate CI/CD to deploy team branches to DEV, development/release branches to QA, and release branch to PROD. Merge release back to master post-deployment. This optimizes collaboration, reduces merge complexity, and ensures faster, reliable releases