I’ve spent many years working in operational roles supporting complex architectures. Almost everyone one of them had a high degree of Technical debt.
Network architectures that have been poorly designed, do not scale well or too complicated to support without an armada of highly trained and skilled engineers.
This picture I came across on twitter illustrates beautifully the affect of technical debt. Its obvious the upgrade to round wheels will significantly increase their productivity but they are simply too bogged down with work or business pressure prevents them from stopping to implement the change.
Some examples that come to mind:
- Scope and requirements for the design not properly captured resulting in issues being revealed post production
- Designs which are not POC tested / validated before being deployed to production
- Once in production change control process make improvements hard
- Snowflakes which are essentially complicated architectures that do not follow the vendors best practices for deployment and have been ‘tuned’ to solve problems instead of going back to the design stage. Some call this ‘turning the nerd nobs’
- Designs that do not take into account the existing technical skills of the operational teams.
Hopefully the DevOps / SDN revolution will help reduce the amount of technical debt as we move towards automation and network programmability. I still think we are a few years away from this network utopia but its certainly something to look forward to. In fact I’m certain its a few years away as pretty much every customer I work for has operational challenges just as the picture illustrates.