We had a lot to teams in the company. Some of there were:
- developers
- writers
- designers
Each team had a separate project in YouTrack. Each task was a ticket. Let's say that we have finished a new version of software and we need a blog post announcement with video.
We would keep an eye on development ticket (DT-1).
We would create a parent ticket for content (CCT-1) that the release and would set it to depend on the development ticket DT-1.
We would also create child content tickets (CCT-2, CCT-3, CCT-4, etc.): one would be for blog post text, another fone for featured image, next one for social media images, etc.
We would also create a main ticket for announcement video (VPROD-1). It would have a subticket for creating a script (VPROD-2), record audio (VPROD-3), create screencast (VPROD-4), produce final video and upload it to YouTube (VPROD-5).
This allowed us to assign each task to different person: designer would get tickets for create images (CCT-1, CCT-3), writer would get tickets for text (CCT-2 and VPROD-2), narator would get VPROD-3, and video editor wound get VPROD-4 and VPROD-5.
Once the all content subtickets were completed (CCT2-CCT4) you would see that you have you have all subtickets/tasks done that you need to complete CCT-1.
Then you would just need to wait for development to release final version of software. We would know that they are done when DT-1 would change the state to "Completed". At that moment we would publish all of the content that was needed for that release: CCT-1 and all subtickets.
Same principle was applied to marketing tasks.
Take a look at https://www.jetbrains.com/youtrack/features. We have used Agile boards a lot (to keep track at which stage is some part of the project) and Customization to create custom flow.