How to build a scalable and maintainable code?