When we hear about an "irreplaceable developer," we typically think of a developer with a unique skill set or unique technical knowledge related to his current job. Only this kind of developer knows the codebase inside out, and only he knows how to fix even the peskiest of bugs. We think of a person the entire development process depends on, someone whose knowledge the company depends on.
Big mistake! Those kinds of developers are not irreplaceable. They are dangerous.
To become truly irreplaceable, you have to decrease knowledge dependency and think of emotional dependency.
What does this mean in terms of actions?
First, when you see that your company’s dependency on your knowledge is growing, you have to think about how to eliminate the risks this dependency creates for the business. Notify your managers that there is a need for additional documentation, a need to train additional people, etc.
Next, increase emotional dependency. Be honest, grateful, kind, empathetic, and maintain a robust work ethic.
Sound hard? Maybe, but when you use this strategy, you will become truly irreplaceable. Everyone will work with you—not because they can't replace you but because they want to.