The current code base that i am working on is "legacy" ( not in the age but the way things are a laid out ) , although codebase is fairly new it follows outdated conventions like creating an interface for every concrete (service)class, fat services and thin models, procedural blobs of code .
What are some arguments for breaking (bad) conventions?