There are 40 hours in the work week. During that time, you work on assigned tasks in specific order until completion.
More times than not, you work on more than one task item. And throughout the week, more requests arrive. Meetings, more work, assistance, whatever. How do they get added to the stack of current items.
You'd typically reshuffle the list, prioritize the list again and reset expectations.
Sometimes you get requests from multiple people, it's not funneled in from a single source. For example, Person A assigns 3 tasks. Person B assigns 5 tasks. Person C assigns 4 tasks. Each of the 3 sponsors have no idea what you already have on your plate. So they think their task item is top priority and should be done shortly. Meanwhile, you have 9 task items all due at the same time.
So you set out trying to meet all your deadlines. As you don't want to say no to the people assigning the work. Surely they wouldn't deliberately overload you, better get busy.
I would say its possible to survive in these types of environments. For so long. You can put in extra hours to try and stay caught up. All it takes is one hiccup and then the finger pointing as to why you missed deadlines.
The reason you failed is because you were set up to fail from the beginning. By not following best practices on basic project management.
How do you prevent this. You set expectations. Assign any task item in any order. Based on estimated hours and time available, this task item should be done in x days.
You can add resources to the tasks, more developers.
You can extend the deadlines.
You can remove some functionality to shorten the task item.
However, you can't add more task items, add more complexity, add more meetings, shorten the time lines, constantly change priorities.
You need to provide accurate estimates. You need to provide your available hours for the week. And need to disclose other task items competing for your time. And you need to set expectations, and relay any changes upstream as soon as possible, if they have impact on deliverable.
The other thing you'll need to understand, it's nobody's responsibility to make this happen, except yours.
From your sponsors perspective, they don't know there's a problem. "I only assigned you a few task items, what's the delay?".
Well, you added scope to the project, you didn't provide written requirements, you didn't communicate in timely manor to provide answers to questions, and you set the timelines without asking for developers perspective. Also, I have ten other task items that need attention as nobody's prioritizing the workload.
It's up to you to manage expectations. It's part of your job to let project managers know that the assigned deliverable's are impossible. Let them know about the golden rules of project management listed above: add resources, extend timeline or remove functionality.
These tasks add up to 75 hours. There are 40 hours in the week. We'll need to extend the deadline, add resources or remove functionality. What should we do?
Now apply that to the dozen task items assigned from various sponsors and you're good to go. It's better they understand the implications of overwork beforehand, as if you wait until you miss every deliverable, it's all on you.
We don't want failed project. We don't want to burn out. We don't want to give away valuable time to the client for free.
The solution is, set expectations based on the Golden Rules of Project Management.