• Once you are in a senior position your role is to develop the team, not the software.

    The individuals with a poor attitude are far more rare than their impact would suggest.  I do see poor culture and organisation that provides a breeding ground for practises generating tech debt.

    Once it goes live and is delivering something to the organisation people tend not to like interruptions in service.  "It works why do you want to stop it and why should I care"?

    Team structure and empowerment helps here.  If a team can own an end-to-end product then the team feel the pain of the technical debt, gain an understanding of it and are keen to address it.  If teams are siloed along functional boundaries then as long as it mechanically functions it becomes the downstream teams problem.  It doesn't cause a problem within the area of responsibility for the siloed team.  The downstream team have to convince people that something is a problem of sufficient magnitude that it stands a chance of being prioritised in the battle for resources.

    I think that people in more senior positions have to focus more on staff development so juniors learn the correct way of doing things.  I find that staff development is somewhat of an after thought with all the focus going on technical stuff rather than people and process.