Our team features an imperial structure that makes clear who is able to do what and points out why. Currently, our hierarchy is organized as follows. You can check what group a developer is assigned to in the team doc.
|Head developer||Senior developer||Junior developer||Notes|
|Create an issue||Check||Check||Check|
|Start pull request|
|Django admin access||Check|
|App Store Connect||Check||(Check)|
(1) Branches are assigned for special development purposes. When one wants to work on the project freely, they can feel free to fork the repo at any time. (2) Some seniors may get App Store Connect access based on their impact on the project if needed.
The head developers decide which role is assigned to whom. We will not give roes based on what others say but purely on our own impression.