Your question is Initialization Order in Game Engines. Take a moment with it on the right.
Talk me through your thinking if you like. When you're confident, submit your answer and I'll grade it like a real screen (7/10 or better passes).
Describe how you would design a system that ensures proper initialization order of various systems within a game engine, without requiring individual developers to specify the priority of their own systems.