
Fundamentals of Software Architecture: An Engineering Approach

The quickest way to deliver the best outcomes for users is by driving in the straightest possible lines of incremental improvement. Select from the best service-level architecture and deployment options based on full knowledge of need and purpose.
Vaughn Vernon • Strategic Monoliths and Microservices: Driving Innovation Using Purposeful Architecture (Addison-Wesley Signature Series (Vernon))
Architectures drive technologies, which drive skill sets. While we'd love for every team to be a full stack team that can work on any layer of the architecture, in practice that's often not an option.
Marty Cagan • INSPIRED: How to Create Tech Products Customers Love (Silicon Valley Product Group)
Implement feedback loops, which enable us to iterate through the software development life cycle and understand the impact of architectural decisions. Feedback loops are required so that the team can react quickly to developments in requirements and any unforeseen impact of architectural decisions. In today’s rapid development cycles, we need to be
... See moreMurat Erder • Continuous Architecture in Practice: Software Architecture in the Age of Agility and DevOps (Addison-Wesley Signature Series (Vernon))
How Big Things Get Done: The Surprising Factors That Determine the Fate of Every Project, from Home Renovations to Space Exploration and Everything In Between
amazon.com
Architects must watch out for composite architecture characteristics—ones that aren’t objectively measurable but are really composites of other measurable things. For example, “agility” isn’t measurable, but if an architect starts pulling the broad term agility apart, the goal is for teams to be able to respond quickly and confidently to change, ei
... See moreNeal Ford • Software Architecture: The Hard Parts
