Software engineers deal a lot with the organization of code. How can we create a program that meets X and Y requirements, but it is still maintainable and easy to understand?

Computer scientists...