Hi, have you ever wonder about answer for a question what makes a great architecture really great? Of course there are many aspects in many projects and everything shall correspond with functional requirements. But in my opinion nothing can be build based on functional requirements. It is exactly the same situation like when we trying to design for example buildings or power lines and even a delivery chains of post packages. Everything should be planned based on common patterns and components. And then we can build someting well recognized and well designed with most important factor that is extensibility in every possible way.
I think that most of modern challenges of software architecture came from backend systems. Because any of modern systems have some kind of backend. Even a pure business applications have some layer and/or component for communication for example with relational database or document database or invokation of requests via HTTP or TCP connection is necessary for requesting or receiving some data. Even when we create calculator apps is good to connect that application to public web service’s or REST applications.
Currently I focused on designing fast and scalable backend systems. And challenges for me are multi-platform interoperability, aspects of data transformations in multi-core environment and redundancy especially for high availability. There are many implementations that actually resolve of such problems. And I am still trying to measure everything and I am also trying to find best solutions that is sometimes not very easy. And I will try to share with you on this blog in near future possible resolution of mentioned problems.