This article raises some good points, but I disagree with the solution. Writing an official list of responsibilities will likely lead to hand-wringing tradeoffs any time a new ask comes in. This is not an efficient way to manage ones time. There are many reasons why I don't think it's efficient (overhead, accuracy, etc), but fundamentally I don't want to be in a "default no" stance when someone asks me for help. Letting past work be an albatross around my neck that accumulates a base maintenance cost prevents seizing future opportunity is soul crushing.
That doesn't mean I don't have baseline responsibilities—I have many—but my goal is to make those things as efficient as possible. When I write code I work hard to make it as robust and self-documenting as possible and include test coverage. When I set up a new process at work (whether as an employee or founder), I make sure it's documented and bring others along. It's not possible for every conceivable maintenance task or call for assistance to be fully supported, but one thing I will never give up is my agency to prioritize my own time and decide what is most important. That way lies burnout.
That doesn't mean I don't have baseline responsibilities—I have many—but my goal is to make those things as efficient as possible. When I write code I work hard to make it as robust and self-documenting as possible and include test coverage. When I set up a new process at work (whether as an employee or founder), I make sure it's documented and bring others along. It's not possible for every conceivable maintenance task or call for assistance to be fully supported, but one thing I will never give up is my agency to prioritize my own time and decide what is most important. That way lies burnout.