When the team is dependent on my presence, I have either failed to do my job or I have not completed my task. Everyone on the team should work towards a system and development that replaces them someday. This doesn’t happen for two reasons and both are selfish. First, people are insecure about not being needed. They build systems that depend on them so the team will suffer if they ever have to leave. This is selfish and shortsighted. The other reason is that doing the job is easier than training others to do the job. It’s just more work and if we haven’t mastered the tasks ourselves, how can we train others to do so? Great teammates work hard to replace themselves because it’s what is good for the team even after they separate from the team.