Ваша работа, за которую вы получаете деньи, заключается в реализации необходимых бизнесу механизмов.
С одной стороны, - объяснять руководству, что в коде всё плохо - значит очернять людей, которые этот код писали. По моему опыту, руководство зачастую негативно к подобным выходкам относится. На моей памяти небыло ни одного начальника, который бы понял и принял прискорбный факт, что код - говно.
С другой стороны, - пытаться развивать паршивый код, - задача тоже не из приятных. А перепиливать его во внеурочное время - значит отнимать время и деньги у себя. Тратить на это часы, в которые начальство будет думать, что вы работаете над новым функционалом, - значит отнимать время и деньги у компании.
Иными словами, у вас два выхода. Либо позитивные моменты (зарплата там и прочее) перевешивают негатив - и вы просто живёте с той кодовой базой, которая есть. Либо перевешивают негативные моменты - и вы увольняетесь и идёте в ту компанию, где нет проектов с таким плохом кодом. Не нужно строить из себя робингуда и супермена в одном флаконе - в лучшем случае этого просто никто не оценит.