Projects that hire contractors are plagued.
They are plagued by ‘roll-offs.’ I am talking specifically about when a developer leaves the team, or is replaced by a new developer.
Sure, pairing mitigates the lose of knowledge but it doesn’t allow a developer to quickly step in to fill the gap left behind. A single developer’s knowledge split across multiple pairs doesn’t cause silos, it causes ghettos.
A ghetto defined in this context is something that makes it nearly impossible to find out which developer knows the best answer. The person who has the most context and can quickly answer the question could of just rolled off. Now what?
Take this scenario — you have a complex ETL process, and the developer who was the anchor on developing at has recently rolled off. Two weeks later, the process fails at 0300. The on-call developer picks up the trails and tracks the issue that woke them down to the ETL process. What does the developer do next?
What would you do next?