Dear professional developers. Don't overengineer your solutions to the point where it looks like someone took a challenge to squeeze all patterns he ever heard of to one project. Then pushing small change takes 3 days and time to market does not exist. Companies need to hire someone like me to fix your shit and delete 70% of syntax sugar which does not solves any issues but creates them and increases complexity.