Рефакторить надо, переписывать. Видишь, что можно улучшить - улучшай, переделывай.
Переделал и видишь, что хуже стало - откатывай к старому варианту. И вот так, как из глины вылепливаешь конфетку.
С опытом появляется навык сразу видеть оптимальные варианты и переделки уже не такие глобальные.
Возможно просто еще не достает опыта. Раз ты читал книги, то нужно делать упор на практику.