After conceptualizing this idea, I spent a couple of weeks working to build a proof-of-concept of my solution. After a lot of thought and planning, plus some serious hands-on-keyboard time, I had built an algorithm that could schedule product work as required while respecting cross-team dependencies, priority and capacity constraints.