There are a number of reasons others have touched on that contribute to the spaghetti code. Some of them are business-centric, others are engineering-centric: Unreasonable Deadlines. You know, the feature your company promised an external stakeholder “will be ready …