Как писать много кода, оставляя его простым, как в начале?
1) Документируй
2) Абстрагируйся всегда максимально
3) Пиши классы по принципу "черного ящика"
4) Один класс решает одну конкретную задачу, не стоит городить комбайны.
Я делаю как бы "микросервисы внутри" (черные ящики) - модули с несколькими публичными методами, которые должны давать гарантированный результат. А уж внутри черного ящика может быть любое месево, главное оно не влияет на проект. Так же любой черный ящик может быть переписан с нуля не затронув остальные части проекта.
Любой черный ящик можно будет превратить в реальный микросервис, так же не затронув остальной проект.Тут я для себя сделал небольшой свод правил, хотя он относится к синхронному коду (стилю), а у вас js, тут со старта сложность повышается. Бизнес логику писать в асинхроне не желательно.