> with Neil Ford & Mark Richards
Architecture is the highest level concept of the expert developers.
"In most successful software projects, the experts developers working on that project have a shared understanding of the system design. This shared understanding is called 'architecture'. This understanding includes how the system is divided into components and how the components interact through interfaces. These components are usually composed of smaller components, but the architecture only include the components and interfaces that are understood by all the developers."
Basically, its made up of three different things:
- Struture of the application (e.g., micro-kernel, micro-services, event-driven etc.)
- Architecture Decisions (e.g., n-layered architecture)
- Design Principles (e.g., inter-service communication should be leverage async messaging whenever possible to increase perfomance)
- Software Architecture?
- Expectations of an architect
- Architectural Thinking
- Architecture Characteristics
- Architecture Patterns
- Component Based thinking
- Continuous Delivery
- Documenting Architecture
- Presenting Architectire
- Architecture Katas
- Analysing Architecture
- Enterprise Architecture
- Evolutionary Architectures
- Career Path and Resources