Tagged articles

Software Architecture

1352 articles · Page 7 of 14
Architects Research Society
Architects Research Society
Dec 23, 2022 · Fundamentals

Fundamentals of Software Design: Concepts, Principles, and Modeling Languages

Software design is a systematic process that defines specifications, architectures, and components to solve problems, covering concepts such as abstraction, modularity, design principles, modeling languages, and considerations like scalability, maintainability, and security, providing a comprehensive overview of essential design practices and patterns.

Software Architecturedesign principlesmodeling languages
0 likes · 15 min read
Fundamentals of Software Design: Concepts, Principles, and Modeling Languages
Baidu Geek Talk
Baidu Geek Talk
Dec 22, 2022 · Fundamentals

Mastering the Decorator Pattern: Real‑World Java Examples for Extensible Code

This article explains the Decorator design pattern, presents its UML structure, describes the roles of abstract components, concrete components, and decorators, and demonstrates three practical Java scenarios—task processing, file I/O, and logging—showing how to extend functionality without modifying existing classes.

Decorator PatternDesign PatternsJava
0 likes · 12 min read
Mastering the Decorator Pattern: Real‑World Java Examples for Extensible Code
Architects Research Society
Architects Research Society
Dec 21, 2022 · Fundamentals

Evolution of Architecture Styles and Domains

This article outlines the evolution of software architecture styles, explains how different perspectives define architecture styles, and presents a comprehensive table of architecture domains and sub‑domains ranging from web and mobile applications to integration, data, analytics, and BI architectures.

Domain ArchitectureSoftware Architecturearchitecture styles
0 likes · 10 min read
Evolution of Architecture Styles and Domains
Architect's Guide
Architect's Guide
Dec 13, 2022 · Fundamentals

Complexity Must Exist Somewhere: Reflections on Software Architecture and Design

The article argues that complexity is an unavoidable aspect of software development that cannot be eliminated, only managed or transferred, and discusses how design choices, build‑tool trade‑offs, and knowledge models influence the way engineers cope with inevitable complexity.

Software Architecturecomplexity managementdesign principles
0 likes · 7 min read
Complexity Must Exist Somewhere: Reflections on Software Architecture and Design
ITPUB
ITPUB
Dec 12, 2022 · Fundamentals

Why Factories Matter in Go DDD: Clean Object Creation and Validation

This article explains how introducing factories in Domain‑Driven Design with Go separates object creation logic from domain responsibilities, hides implementation details, enforces invariants, and improves validation, while showing practical code patterns and design‑pattern choices for simple and complex domain objects.

DDDDomain-Driven DesignFactory Pattern
0 likes · 15 min read
Why Factories Matter in Go DDD: Clean Object Creation and Validation
Architect
Architect
Dec 11, 2022 · Fundamentals

Why Discussing the Problem Matters More Than Choosing a Solution: Lessons from a Solution Architect

The article argues that engineers should focus on thoroughly discussing and understanding the underlying business problem before jumping to favored technical solutions, illustrating this with real‑world anecdotes about solution‑architect roles, .env file debates, micro‑service hype, and the Five Whys technique.

Software Architecturemicroservicesproblem solving
0 likes · 9 min read
Why Discussing the Problem Matters More Than Choosing a Solution: Lessons from a Solution Architect
Architects Research Society
Architects Research Society
Dec 8, 2022 · Backend Development

Key Requirements, Challenges, and Best Practices for Migrating to a Microservices Architecture

This article outlines the essential requirements for empowering autonomous teams, details the challenges of transitioning and splitting monolithic systems into microservices—including organizational, technical, and cultural hurdles—and presents comprehensive best‑practice recommendations for platform design, service development, deployment, operations, and team management.

Software Architecturebackend developmentbest practices
0 likes · 12 min read
Key Requirements, Challenges, and Best Practices for Migrating to a Microservices Architecture
转转QA
转转QA
Dec 8, 2022 · Backend Development

Applying AOP to Reduce Coupling in a Data Construction Platform

This article explains how Aspect‑Oriented Programming (AOP) was introduced into a data construction platform to address high development effort, strong business coupling, and maintenance difficulty by isolating cross‑cutting concerns such as logging, thereby improving modularity, development speed, and code maintainability.

AOPData PlatformSoftware Architecture
0 likes · 5 min read
Applying AOP to Reduce Coupling in a Data Construction Platform
IT Architects Alliance
IT Architects Alliance
Dec 6, 2022 · Backend Development

A Comprehensive Guide to Service Splitting in Microservice Architecture

This article systematically explores the challenges of microservice service splitting—from technical choices and architectural reliability to business model validation and team collaboration—offering static and dynamic solutions, design principles, and practical guidelines for effective service decomposition.

Software Architecturebackend designenterprise architecture
0 likes · 7 min read
A Comprehensive Guide to Service Splitting in Microservice Architecture
21CTO
21CTO
Dec 6, 2022 · Fundamentals

Master the 23 Core Software Architecture Principles Every Engineer Should Know

This article presents a concise overview of 23 essential software architecture principles—from Dependency Inversion and Separation of Concerns to Bounded Context and KISS—explaining each concept, its practical impact, and providing code examples to help developers design clean, maintainable systems.

Dependency InjectionSOLIDSoftware Architecture
0 likes · 12 min read
Master the 23 Core Software Architecture Principles Every Engineer Should Know
IT Architects Alliance
IT Architects Alliance
Dec 5, 2022 · Fundamentals

Essential Software Architecture Principles with Example Implementations

This article outlines core software architecture principles such as Dependency Inversion, Separation of Concerns, Inversion of Control, Dependency Injection, Single Responsibility, DRY, Open‑Closed, Persistence Ignorance, and many others, and illustrates them with Java code examples for actions and converters.

Dependency InjectionObject-Oriented ProgrammingSOLID
0 likes · 11 min read
Essential Software Architecture Principles with Example Implementations
IT Architects Alliance
IT Architects Alliance
Dec 1, 2022 · Fundamentals

How to Become a Better Software Architect: Roles, Skills, and Roadmap

This article outlines the essential definitions, hierarchical layers, daily responsibilities, and ten core competencies—including design, decision‑making, simplification, programming, and documentation—that aspiring software architects need to master to advance from application‑level to enterprise‑level architecture.

Design PatternsSoftware Architecturearchitect skills
0 likes · 14 min read
How to Become a Better Software Architect: Roles, Skills, and Roadmap
IT Architects Alliance
IT Architects Alliance
Nov 24, 2022 · Fundamentals

Why Code Reuse Often Fails to Improve Efficiency in System Design

The article examines the common belief that reusing code and components boosts productivity, explains the flawed reasoning behind it, highlights the hidden costs of excessive abstraction, and proposes autonomy and consistency metrics as guidelines for sensible system design.

ConsistencySoftware Architectureautonomy
0 likes · 9 min read
Why Code Reuse Often Fails to Improve Efficiency in System Design
Baidu Geek Talk
Baidu Geek Talk
Nov 23, 2022 · Backend Development

Applying Domain‑Driven Design (DDD) to Microservice Decomposition

The article shows how Domain‑Driven Design can guide microservice decomposition by using strategic layers (core, supporting, generic domains) and tactical building blocks (aggregates, entities, value objects, services, events), illustrated with a membership‑center example and a four‑layer Go code architecture, while noting DDD’s suitability for complex domains.

DDDGoSoftware Architecture
0 likes · 15 min read
Applying Domain‑Driven Design (DDD) to Microservice Decomposition
Top Architect
Top Architect
Nov 23, 2022 · Backend Development

Chain of Responsibility Pattern in Java: Design, Implementation, and Practical Example

This article explains the Chain of Responsibility design pattern, demonstrates its use for request validation and processing in Java backend applications, provides complete code examples—including abstract handler, concrete validators, business logic, and a test harness—while discussing its advantages, drawbacks, and real‑world analogues such as servlet filters.

Chain of ResponsibilityDesign PatternJava
0 likes · 11 min read
Chain of Responsibility Pattern in Java: Design, Implementation, and Practical Example
Alibaba Cloud Developer
Alibaba Cloud Developer
Nov 23, 2022 · Fundamentals

Why Design Patterns Can Overcomplicate Software and How to Avoid Their Pitfalls

Design patterns, often hailed as software design standards, can lead to over‑engineering, increased complexity, and maintenance challenges in fast‑changing internet applications, but when applied judiciously and evolved with functional approaches, they also enhance code reuse, readability, and long‑term system growth.

Code MaintainabilityDesign PatternsFunctional Programming
0 likes · 22 min read
Why Design Patterns Can Overcomplicate Software and How to Avoid Their Pitfalls
phodal
phodal
Nov 20, 2022 · Industry Insights

Can Fklang’s DDD‑Driven DSL Bring Industrial‑Scale Software Development?

This article explores the design and implementation of Fklang, a DDD‑guided architecture DSL, detailing its layered syntax, integration with IDEs, infrastructure abstractions, AI‑assisted code generation, mock server creation, and how it aims to industrialize software development through standardized modeling and tooling.

DDDDSLSoftware Architecture
0 likes · 14 min read
Can Fklang’s DDD‑Driven DSL Bring Industrial‑Scale Software Development?
21CTO
21CTO
Nov 10, 2022 · Cloud Native

How Enterprise Architecture Evolves: From Monoliths to Cloud‑Native Platforms

This article explores the evolution of enterprise technical architecture—from single‑instance monoliths through distributed and microservice designs to modern cloud‑native platforms—detailing definitions, classifications, a real‑world case study, and the stability, efficiency, and process challenges faced along the way.

Software Architectureenterprise architecture
0 likes · 26 min read
How Enterprise Architecture Evolves: From Monoliths to Cloud‑Native Platforms
DevOps
DevOps
Nov 9, 2022 · Fundamentals

Understanding Cross‑Functional Requirements for Tech Leads

The article explains what cross‑functional (non‑functional) requirements are, illustrates common scenarios where they cause issues, and provides guidance for tech leads on identifying, discussing, and prioritizing these requirements from multiple stakeholder perspectives to avoid technical debt and risk.

Software ArchitectureTech Leadcross-functional requirements
0 likes · 5 min read
Understanding Cross‑Functional Requirements for Tech Leads
21CTO
21CTO
Nov 8, 2022 · Fundamentals

Master Software Architecture Diagrams: Clear, Audience‑Focused Design Guide

This article introduces a practical methodology for creating effective software architecture diagrams, explains the purpose and classification of various diagram types—including context, container, component, and code diagrams—offers guidelines for audience‑centric design, and showcases the C4 model with real‑world examples and tool recommendations.

C4 modelSoftware Architecturediagramming
0 likes · 11 min read
Master Software Architecture Diagrams: Clear, Audience‑Focused Design Guide
DaTaobao Tech
DaTaobao Tech
Nov 7, 2022 · Fundamentals

Understanding the Decorator Pattern in Java: Concepts, Implementation, and Comparison

The article explains Java’s Decorator pattern, detailing its four roles, how to build abstract components and concrete decorators, demonstrates dynamic runtime extension of object behavior through sample code, compares it with inheritance, Proxy and Adapter patterns, and outlines its advantages, drawbacks, and suitable use cases.

Code ExampleDecorator PatternJava
0 likes · 15 min read
Understanding the Decorator Pattern in Java: Concepts, Implementation, and Comparison
Architect's Guide
Architect's Guide
Nov 3, 2022 · Fundamentals

Understanding Software Architecture: Definitions, Layers, and Classifications

This article explains the fundamental concepts of software architecture, distinguishing systems, subsystems, modules, components, and frameworks, and then details the various layers—business, application, data, code, technical, and deployment—while outlining the architect’s responsibilities and the criteria for when architecture design is needed.

Business ArchitectureSoftware Architectureapplication architecture
0 likes · 10 min read
Understanding Software Architecture: Definitions, Layers, and Classifications
Architect
Architect
Oct 30, 2022 · Fundamentals

Managing Complexity in Software Architecture

The article argues that complexity in software systems is unavoidable and must be consciously placed, managed, and reduced through thoughtful architectural decisions, prioritizing high‑frequency changes, eliminating duplication, and accepting that perfect local consequences are impossible.

ComplexitySoftware Architecturecode organization
0 likes · 9 min read
Managing Complexity in Software Architecture
Architect
Architect
Oct 29, 2022 · Fundamentals

Embracing Complexity: Reflections on Software Architecture

The article argues that complexity is an unavoidable aspect of software development and architecture, urging engineers to acknowledge, manage, and strategically place it rather than trying to eliminate it, while illustrating the trade‑offs in tooling, abstractions, and micro‑service design.

ComplexitySoftware Architecturedesign principles
0 likes · 7 min read
Embracing Complexity: Reflections on Software Architecture
Weimob Technology Center
Weimob Technology Center
Oct 27, 2022 · Fundamentals

Mastering Design Patterns: Essential Concepts and Real-World Frontend Examples

This article introduces design patterns, explains their origins and core principles, and demonstrates how common patterns such as Publish‑Subscribe, Strategy, Adapter, Proxy, Chain of Responsibility, and Singleton can be applied in frontend development with practical code examples and usage guidelines.

Design PatternsSoftware Architecturefrontend development
0 likes · 19 min read
Mastering Design Patterns: Essential Concepts and Real-World Frontend Examples
Programmer DD
Programmer DD
Oct 27, 2022 · Backend Development

Do Frameworks Really Damage Software Maintainability?

This article examines how adopting software frameworks—especially web frameworks—can undermine long‑term maintainability through control inversion, mismatched goals, design trade‑offs, and hidden costs, while also showing how a decoupled approach can retain benefits without the drawbacks.

BackendFrameworksSoftware Architecture
0 likes · 19 min read
Do Frameworks Really Damage Software Maintainability?
Architect's Guide
Architect's Guide
Oct 26, 2022 · Fundamentals

How to Become a Software Architect: Roles, Skills, and Practices

This article explains what a software architect does, outlines the three levels of architecture, lists daily activities and ten essential skills—including design, decision‑making, communication, documentation, estimation, and marketing—while offering practical advice on design patterns, quality metrics, technology experimentation, documentation automation, conflict resolution, and influencing stakeholders.

Design PatternsDocumentationSoftware Architecture
0 likes · 18 min read
How to Become a Software Architect: Roles, Skills, and Practices
Baidu Geek Talk
Baidu Geek Talk
Oct 25, 2022 · Fundamentals

How Adapter Pattern Solves Interface Mismatches in Real-World Scenarios

This article explains the Adapter Pattern, its core roles, and demonstrates three practical applications—object adapter for document formats, class adapter for component replacement, and interface adapter for large interfaces—complete with Java code examples and key takeaways.

Adapter PatternClass AdapterDesign Patterns
0 likes · 8 min read
How Adapter Pattern Solves Interface Mismatches in Real-World Scenarios
Alibaba Terminal Technology
Alibaba Terminal Technology
Oct 19, 2022 · Mobile Development

Reimagining Mobile Development: Unified Cross-Platform Containers and the KUN Strategy

This article outlines the evolving trends in terminal devices and software architecture, argues for unified cross‑platform containers, proposes a streamlined organizational model with fewer, more versatile roles, and introduces the KUN project—a high‑performance, extensible Flutter‑based rendering engine aimed at boosting mobile development efficiency.

FlutterMobile DevelopmentSoftware Architecture
0 likes · 23 min read
Reimagining Mobile Development: Unified Cross-Platform Containers and the KUN Strategy
Top Architect
Top Architect
Oct 18, 2022 · Fundamentals

How to Create Effective Software Architecture Diagrams: 4+1 and C4 Views

This article explains the purpose and classification of software architecture diagrams, introduces the 4+1 view model and the C4 model, and provides practical guidance on choosing the right view for different audiences to produce clear, self‑describing architectural drawings.

4+1 viewArchitecture DiagramsC4 model
0 likes · 9 min read
How to Create Effective Software Architecture Diagrams: 4+1 and C4 Views
IT Architects Alliance
IT Architects Alliance
Oct 17, 2022 · R&D Management

Mastering System Architecture Diagrams: 4+1 and C4 Views Explained

This guide explains how to create clear, self‑describing system architecture diagrams by defining architecture concepts, outlining business, application, technical and data layers, and detailing the 4+1 and C4 view models with practical tips for audience‑focused visual communication.

4+1 viewC4 modelSoftware Architecture
0 likes · 9 min read
Mastering System Architecture Diagrams: 4+1 and C4 Views Explained
IT Architects Alliance
IT Architects Alliance
Oct 16, 2022 · R&D Management

How Progressive Thinking Shapes Business Architecture for Large-Scale Websites

The article explains why a progressive, incremental approach to business architecture—balancing clear primary requirements with flexible handling of secondary and emergent features—helps large‑scale website projects avoid the pitfalls of rigid waterfall planning and enables smoother versioned development.

AgileR&D ManagementSoftware Architecture
0 likes · 10 min read
How Progressive Thinking Shapes Business Architecture for Large-Scale Websites
Programmer DD
Programmer DD
Oct 12, 2022 · Backend Development

From Monolith to Distributed: How We Transformed a Stock System with CQRS

This article explains what software architecture is, why choosing an architectural style matters, compares monolithic and distributed approaches using a real‑world inventory system case study, and details the step‑by‑step functional and business splitting, CQRS implementation, code refactoring, and handling of distributed transactions.

CQRSSoftware Architecturedistributed systems
0 likes · 20 min read
From Monolith to Distributed: How We Transformed a Stock System with CQRS
MaGe Linux Operations
MaGe Linux Operations
Oct 10, 2022 · Backend Development

Mastering Backend Layering: From Alibaba Specs to Practical Optimizations

This article examines common pitfalls in application layering, outlines Alibaba's recommended multi‑layer architecture, proposes an optimized layering approach with clear responsibilities for controllers, services, managers, and DAOs, and discusses domain model conversions to improve maintainability and team collaboration.

Alibaba coding standardsDomain ModelSoftware Architecture
0 likes · 9 min read
Mastering Backend Layering: From Alibaba Specs to Practical Optimizations
Architect
Architect
Oct 7, 2022 · Backend Development

What Does a Software Architect Do? Roles, Skills, and Career Path

This article explains the responsibilities, required skills, and career advice for software architects, covering job duties, real‑world examples, essential technical and soft‑skill preparation, and practical tips for advancing toward and succeeding in an architecture role.

Software ArchitectureTeam LeadershipTechnical Skills
0 likes · 12 min read
What Does a Software Architect Do? Roles, Skills, and Career Path
IT Architects Alliance
IT Architects Alliance
Oct 7, 2022 · Fundamentals

Eight Common Software Architecture Design Patterns and Their Advantages and Disadvantages

The article introduces eight widely used software architecture design patterns—including single‑database single‑application, content distribution, query separation, microservices, multi‑level caching, sharding, elastic scaling, and multi‑data‑center modes—explaining their structures, typical use cases, and the pros and cons of each.

CachingDesign PatternsSoftware Architecture
0 likes · 20 min read
Eight Common Software Architecture Design Patterns and Their Advantages and Disadvantages
Architect's Guide
Architect's Guide
Oct 4, 2022 · Fundamentals

Key Insights on System Architecture, Evolution, and Feedback Loops

This article shares practical experiences and concepts about software architecture, covering stakeholder‑driven definitions, non‑functional requirements, iterative evolution, closed‑loop feedback, microservice adoption, organizational impact, and the soft skills needed for effective architects.

DevOpsSoftware Architecturefeedback loop
0 likes · 14 min read
Key Insights on System Architecture, Evolution, and Feedback Loops
MaGe Linux Operations
MaGe Linux Operations
Oct 3, 2022 · Backend Development

8 Essential Software Architecture Patterns Every Engineer Should Master

This article introduces eight core software architecture design patterns—including single‑database single‑app, content distribution, query separation, microservices, multi‑level caching, sharding, elastic scaling, and multi‑datacenter deployment—explaining their structures, typical use cases, advantages, and drawbacks to help developers choose the right architecture for their systems.

Design PatternsSoftware Architecturedatabase sharding
0 likes · 21 min read
8 Essential Software Architecture Patterns Every Engineer Should Master
Architects' Tech Alliance
Architects' Tech Alliance
Oct 1, 2022 · Fundamentals

Understanding Software Architecture: Essence, Layers, and Classifications

This article explains the fundamental concepts of software architecture, distinguishing it from frameworks, defining system, subsystem, module, and component, outlining the four core aspects of architecture, and detailing the various layers such as business, application, data, code, technical, and deployment architectures.

Software Architectureapplication architecturearchitecture fundamentals
0 likes · 9 min read
Understanding Software Architecture: Essence, Layers, and Classifications
DaTaobao Tech
DaTaobao Tech
Sep 30, 2022 · Fundamentals

Understanding the Strategy Design Pattern in Java

The Strategy design pattern in Java encapsulates interchangeable algorithms behind a common interface, using concrete strategy classes and a context holder to delegate behavior at runtime, which enhances flexibility, adheres to the Open/Closed principle, reduces conditional complexity, though it may increase class count and require client awareness of available strategies.

Code ExampleJavaSoftware Architecture
0 likes · 14 min read
Understanding the Strategy Design Pattern in Java
Top Architect
Top Architect
Sep 27, 2022 · Fundamentals

Fundamentals of Software Architecture: Concepts, Layers, and Classifications

This article provides a comprehensive overview of software architecture, defining core concepts such as system, subsystem, module, component, framework, and architecture itself, and detailing the various layers—including business, application, data, code, technical, and deployment architectures—along with their design principles and practical considerations.

ModulesSoftware Architecturearchitecture layers
0 likes · 9 min read
Fundamentals of Software Architecture: Concepts, Layers, and Classifications
IT Architects Alliance
IT Architects Alliance
Sep 25, 2022 · Backend Development

12 Proven Strategies to Seamlessly Migrate Your Monolith to Microservices

This guide presents twelve practical steps—from understanding the trade‑offs and planning the transition to adopting monorepos, CI pipelines, API gateways, feature flags, and observability—that help teams safely decompose a large monolithic application into a robust microservices architecture.

API GatewayCI/CDFeature Flags
0 likes · 14 min read
12 Proven Strategies to Seamlessly Migrate Your Monolith to Microservices
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Sep 24, 2022 · Backend Development

12 Proven Strategies to Seamlessly Migrate from a Monolith to Microservices

This article outlines twelve practical steps—including planning, adopting a monorepo, setting up CI/CD pipelines, using API gateways, containerizing, feature flags, and adding observability—to help teams transition their large monolithic applications to a robust microservices architecture with minimal disruption.

Software Architecturemicroservicesmonolith migration
0 likes · 12 min read
12 Proven Strategies to Seamlessly Migrate from a Monolith to Microservices
HomeTech
HomeTech
Sep 23, 2022 · Backend Development

Why Use Domain-Driven Design (DDD) and How to Apply It

The article explains why Domain-Driven Design (DDD) is valuable for handling complex business logic, compares it with traditional transaction‑script approaches, introduces core DDD concepts such as ubiquitous language, bounded contexts, entities, value objects, aggregates, factories, repositories and domain services, and provides practical steps and examples for adopting DDD in backend development.

DDDDesign PatternsDomain-Driven Design
0 likes · 12 min read
Why Use Domain-Driven Design (DDD) and How to Apply It
Top Architect
Top Architect
Sep 21, 2022 · Fundamentals

Understanding Software Architecture: Principles, Patterns, and the COLA Framework

This article explains the concept of software architecture, why it is essential, the responsibilities of architects, various architectural classifications, and introduces classic patterns such as layered, CQRS, hexagonal, onion, and the open‑source COLA framework with its design, extension, and specification guidelines.

COLA frameworkCQRSOnion Architecture
0 likes · 16 min read
Understanding Software Architecture: Principles, Patterns, and the COLA Framework
Top Architect
Top Architect
Sep 21, 2022 · Fundamentals

How to Create Clear Software Architecture Diagrams: Concepts, Types, and Best Practices

This article explains the importance of clear software architecture diagrams, defines basic concepts and various diagram types such as context, container, component, and class diagrams, offers practical guidelines for creating self‑describing, audience‑focused diagrams, and shares tools and examples to improve communication among developers, ops, and stakeholders.

C4 modelSoftware Architecturediagram methodology
0 likes · 12 min read
How to Create Clear Software Architecture Diagrams: Concepts, Types, and Best Practices
DaTaobao Tech
DaTaobao Tech
Sep 21, 2022 · Fundamentals

Factory Pattern: Simple Factory, Factory Method, and Abstract Factory – Concepts, Code, UML, Pros & Cons

The article explains the Factory design pattern family—Simple Factory, Factory Method, and Abstract Factory—showing how each separates object creation from use, presents Java code and UML examples, and compares their advantages such as decoupling and Open/Closed compliance against drawbacks like increased complexity and class proliferation.

Factory PatternJavaSoftware Architecture
0 likes · 19 min read
Factory Pattern: Simple Factory, Factory Method, and Abstract Factory – Concepts, Code, UML, Pros & Cons
Architect's Guide
Architect's Guide
Sep 18, 2022 · Fundamentals

How to Create Effective Architecture Diagrams: Concepts, Types, and Best Practices

This article explains the importance of clear architecture diagrams, defines key concepts such as architecture and architecture diagrams, outlines the 4+1 view taxonomy, offers criteria for good diagrams, addresses common pitfalls, and introduces the C4 modeling approach with practical examples and tool recommendations.

Architecture DiagramsC4 modelSoftware Architecture
0 likes · 13 min read
How to Create Effective Architecture Diagrams: Concepts, Types, and Best Practices
DeWu Technology
DeWu Technology
Sep 16, 2022 · R&D Management

Technical Growth Path: From Engineer to Architect and Leader

The article maps a technical professional’s journey from engineer to architect and leader, urging deep mastery of code and business logic, proactive incident handling, defensive design, domain expertise, broad architectural thinking, and balanced leadership skills to achieve sustainable career growth.

Engineering ManagementSoftware Architecturecareer development
0 likes · 21 min read
Technical Growth Path: From Engineer to Architect and Leader
DevOps
DevOps
Sep 16, 2022 · Operations

Rebuilding Uber’s Experimentation Platform: Architecture, Goals, and Lessons Learned

After more than a year of effort, Uber migrated its entire experimentation and feature‑flag ecosystem—including thousands of developers, dozens of partners, multiple mobile apps, and hundreds of services—to a new, unified platform that improves reliability, flexibility, and data quality while retiring over 50,000 legacy experiments.

A/B testingSoftware ArchitectureUber
0 likes · 25 min read
Rebuilding Uber’s Experimentation Platform: Architecture, Goals, and Lessons Learned
Huolala Tech
Huolala Tech
Sep 13, 2022 · Frontend Development

Mastering the Chain of Responsibility Pattern: From Classic Story to Front‑End Code

This article explains the Chain of Responsibility design pattern, illustrates it with a historical Three Kingdoms story, shows progressive refactorings from procedural code to abstract handlers in TypeScript, and demonstrates practical front‑end scenarios such as flexible location retrieval.

Chain of ResponsibilityDesign PatternOOP
0 likes · 10 min read
Mastering the Chain of Responsibility Pattern: From Classic Story to Front‑End Code
Architect's Guide
Architect's Guide
Sep 13, 2022 · Fundamentals

30 Architectural Principles for Software Engineers

The article presents thirty concise architectural principles covering simplicity, iterative development, automation, ROI, user focus, concurrency, distributed system design, configuration management, and practical guidance, aiming to help architects and developers build maintainable, scalable, and user‑centric software systems.

Software Architecturebackend developmentdesign principles
0 likes · 11 min read
30 Architectural Principles for Software Engineers
Java High-Performance Architecture
Java High-Performance Architecture
Sep 2, 2022 · Backend Development

Eight Essential Software Architecture Patterns Every Backend Engineer Should Master

This article explains eight core software architecture patterns—from single‑database single‑application to microservices, multi‑level caching, and multi‑datacenter deployments—detailing their designs, typical use cases, advantages, and drawbacks to help engineers choose the right approach for scalable, high‑performance systems.

CachingSoftware Architecturescalability
0 likes · 23 min read
Eight Essential Software Architecture Patterns Every Backend Engineer Should Master
21CTO
21CTO
Aug 22, 2022 · Operations

How Meituan Scaled Its Pipeline Engine to Power 100k Daily Jobs

This article explains how Meituan built a unified, highly available pipeline engine that supports nearly 100,000 daily executions across dozens of services with 99.99% success, detailing the challenges faced, the architectural decisions made, and the future roadmap for further scalability and cloud‑native improvements.

CI/CDMeituanSoftware Architecture
0 likes · 24 min read
How Meituan Scaled Its Pipeline Engine to Power 100k Daily Jobs
Continuous Delivery 2.0
Continuous Delivery 2.0
Aug 22, 2022 · Fundamentals

Key Principles for Code Review and Software Architecture

This extensive article discusses essential software engineering concepts such as code review value, architectural principles, SOLID, dependency inversion, documentation practices, testing strategies, and practical guidelines for writing maintainable, decoupled, and self‑explanatory code across various programming languages.

SOLIDSoftware Architecturedependency inversion
0 likes · 44 min read
Key Principles for Code Review and Software Architecture
Architecture Digest
Architecture Digest
Aug 18, 2022 · Backend Development

From Monolith to CQRS: An Evolutionary Guide to Read‑Write Separation

This article walks through the progressive evolution of a software system—from a traditional monolithic architecture to a task‑oriented monolith, then to Command‑Query Separation (CQS) and finally to a full CQRS solution—explaining the motivations, trade‑offs, and techniques such as eventual consistency, event sourcing, and read‑model generation.

CQRSRead-Write SeparationSoftware Architecture
0 likes · 11 min read
From Monolith to CQRS: An Evolutionary Guide to Read‑Write Separation
Top Architect
Top Architect
Aug 17, 2022 · Backend Development

From Monolithic to Microservices: Evolution of Software Architecture and Essential Tech Stack

This article traces the evolution of software architecture from monolithic applications through vertical splitting and distributed services to modern microservices, outlines the key stages of microservice development, and presents a comprehensive technology stack—including communication protocols, API gateways, authentication, fault‑tolerance, logging, configuration, containerization, orchestration, and CI/CD tools—required to build robust backend systems.

CI/CDSoftware Architecture
0 likes · 18 min read
From Monolithic to Microservices: Evolution of Software Architecture and Essential Tech Stack
Xianyu Technology
Xianyu Technology
Aug 17, 2022 · Mobile Development

Future Trends and R&D Organization for Mobile Development at Xianyu

The article predicts smartphones will dominate traffic for the next three years, argues that cross‑device frameworks like ReactNative, Weex and Flutter are essential, and proposes a streamlined R&D model at Xianyu with full‑stack mobile engineers and infrastructure engineers supported by a unified container, programming plane, workflow, and the high‑performance, W3C‑compliant KUN rendering engine to boost iteration speed, consistency, and talent efficiency.

FlutterKUNMobile Development
0 likes · 21 min read
Future Trends and R&D Organization for Mobile Development at Xianyu
Architect
Architect
Aug 14, 2022 · Databases

42 Lessons Learned from Building a Production Database – Translated Summary

This article translates Mahesh Balakrishnan’s 42 practical lessons on building a production database, covering customer focus, project management, design principles, code review, strategy, observability, and research, offering actionable guidance for infrastructure engineers and architects.

InfrastructureSoftware Architecturedesign principles
0 likes · 12 min read
42 Lessons Learned from Building a Production Database – Translated Summary
Zhuanzhuan Tech
Zhuanzhuan Tech
Aug 12, 2022 · Backend Development

Objective Understanding of DDD and Its Practice in ZuanZuan Pricing System

This article objectively explains Domain‑Driven Design, compares it with traditional data‑driven approaches, and details how DDD was applied in the architecture, strategic and tactical design, context integration, and business‑logic implementation of ZuanZuan's complex pricing system, including code examples.

DDDJavaSoftware Architecture
0 likes · 13 min read
Objective Understanding of DDD and Its Practice in ZuanZuan Pricing System
Architects Research Society
Architects Research Society
Aug 9, 2022 · Fundamentals

Software Architecture Tradeoffs: What We Trade and Why It Matters

This article explains the concept of software‑architecture tradeoffs, why they are inevitable, the key system attributes involved, and how architects can consciously balance scalability, simplicity, interoperability and other “‑ilities” to make informed design decisions.

InteroperabilitySoftware Architecturedesign principles
0 likes · 12 min read
Software Architecture Tradeoffs: What We Trade and Why It Matters
21CTO
21CTO
Aug 7, 2022 · Fundamentals

How Open-Source Projects Boost Your Architecture, DevOps, and Cross-Platform Skills

By exploring popular open-source codebases such as Chromium, Electron, Flutter, React, and Go, developers can deepen their understanding of software architecture, DevOps practices, cross-platform development, and essential programming principles, turning code reading into a powerful self-learning strategy.

DevOpsSoftware Architectureopen source
0 likes · 8 min read
How Open-Source Projects Boost Your Architecture, DevOps, and Cross-Platform Skills
DevOps Cloud Academy
DevOps Cloud Academy
Aug 7, 2022 · Operations

Key Capabilities for Continuous Delivery and DevOps Success

The article outlines twenty‑four essential capabilities—spanning continuous delivery, architecture, product and process, lean management, and culture—that research shows drive high performance in software delivery and organizational outcomes.

CultureDevOpsLean Management
0 likes · 10 min read
Key Capabilities for Continuous Delivery and DevOps Success
Architecture Digest
Architecture Digest
Aug 6, 2022 · Backend Development

Understanding Onion Architecture and Its Role in Domain‑Driven Design

This article explains how Onion Architecture, built on Domain‑Driven Design principles, organizes software into concentric layers that isolate core business logic, improve maintainability, testability, and flexibility, and outlines its layers, dependencies, services, testing strategies, and applicability to microservices.

Onion ArchitectureSoftware Architecturelayered design
0 likes · 11 min read
Understanding Onion Architecture and Its Role in Domain‑Driven Design
IT Architects Alliance
IT Architects Alliance
Aug 6, 2022 · Backend Development

Evolution of Software Architecture and the Microservice Technology Stack

This article reviews the rapid growth of software scale and complexity, traces the evolution from monolithic to microservice architectures, and outlines the essential backend technologies—including service communication, API gateways, authentication, fault handling, logging, configuration, containers, orchestration, and CI/CD—that enable modern cloud‑native microservice systems.

Software Architecturemicroservices
0 likes · 16 min read
Evolution of Software Architecture and the Microservice Technology Stack
macrozheng
macrozheng
Aug 5, 2022 · Backend Development

Transform IF Chains into Scalable Java: Master the Responsibility Pattern

This article explains the Chain of Responsibility design pattern in Java, illustrating its use for multi‑level approval workflows during high‑traffic events, provides step‑by‑step code implementations, refactors naive IF logic into modular link classes, and demonstrates testing, highlighting benefits for clean, extensible backend architecture.

Chain of ResponsibilityDesign PatternJava
0 likes · 21 min read
Transform IF Chains into Scalable Java: Master the Responsibility Pattern
Programmer DD
Programmer DD
Aug 3, 2022 · Backend Development

Why Your “Distributed Monolith” Is Still a Single Point of Failure

The article explains how many microservice migrations end up as “distributed monoliths,” detailing why splitting a monolith without proper domain design and protective mechanisms can worsen stability, increase latency, and fail to deliver the promised efficiency gains.

Software Architecturedistributed monolithmicroservices
0 likes · 7 min read
Why Your “Distributed Monolith” Is Still a Single Point of Failure
Architect's Guide
Architect's Guide
Aug 3, 2022 · Backend Development

Eight Common Software Architecture Design Patterns and Their Pros and Cons

This article introduces eight typical software architecture design patterns—including single-database single-application, content distribution, query separation, microservices, multi-level caching, sharding, elastic scaling, and multi-datacenter deployment—explaining their structures, typical use cases, advantages, and disadvantages for building scalable, high-performance systems.

Design PatternsSoftware Architecturebackend development
0 likes · 20 min read
Eight Common Software Architecture Design Patterns and Their Pros and Cons
Shopee Tech Team
Shopee Tech Team
Jul 29, 2022 · Product Management

Design and Implementation of a Configurable System for Adding New Products at Shopee

Shopee’s Merchant Services team created a visual, configurable onboarding platform that abstracts purchase flows into reusable templates and six modular configuration sections, moving product‑launch responsibilities from developers to operators, cutting code changes, boosting launch efficiency by about 75 % and adding import/export and validation tools.

ShopeeSoftware Architectureconfigurable system
0 likes · 12 min read
Design and Implementation of a Configurable System for Adding New Products at Shopee
DevOps
DevOps
Jul 29, 2022 · R&D Management

Strategies for Managing Large‑Scale Legacy Systems at Different Scales

The article examines the typical traits of massive legacy codebases, outlines the technical debt they generate, and proposes practical strategies—from design‑pattern mastery and daily code reviews for small teams to metrics‑driven debt tracking, agile practices, and clean‑architecture principles for million‑line and ten‑million‑line systems—aimed at safely evolving such systems while maintaining team stability.

Software Architecturelegacy systemsmicroservices
0 likes · 15 min read
Strategies for Managing Large‑Scale Legacy Systems at Different Scales
Architect's Guide
Architect's Guide
Jul 28, 2022 · Fundamentals

How to Create Effective Architecture Diagrams: Concepts, Types, and Best Practices

This article explains why clear architecture diagrams are essential for communication, outlines common pitfalls, defines architecture and its diagram types, introduces the 4+1 view classification and the C4 modeling approach, and provides practical guidance and examples for producing self‑describing, audience‑focused diagrams.

Architecture DiagramsC4 modelDiagram Design
0 likes · 12 min read
How to Create Effective Architecture Diagrams: Concepts, Types, and Best Practices
DevOps
DevOps
Jul 22, 2022 · Fundamentals

Why Measure Software Architecture and Which Metrics to Use

The article explains the importance of measuring software architecture, outlines the granularity of metrics from code to infrastructure, and provides concrete measurement indicators for code implementation, component design, architecture design, and runtime infrastructure to guide effective architecture governance.

Software Architecturemetricsquality measurement
0 likes · 13 min read
Why Measure Software Architecture and Which Metrics to Use
Architect's Guide
Architect's Guide
Jul 21, 2022 · Backend Development

Designing a Flexible Workflow Engine: From Simple Chains to Complex Nested Nodes

This article chronicles the step‑by‑step evolution of a workflow engine, detailing how simple sequential approvers were expanded into hierarchical trees supporting parallel, multi‑sign, conditional, proxy, and scripted nodes, while introducing state management, rejection handling, and progress metrics.

BackendSoftware Architectureapproval-process
0 likes · 9 min read
Designing a Flexible Workflow Engine: From Simple Chains to Complex Nested Nodes
Software Development Quality
Software Development Quality
Jul 9, 2022 · Fundamentals

Mastering Simple & Effective Software Architecture: KISS Principles and Design Guidelines

This article explains how to keep software architecture simple and appropriate by applying KISS principles, balancing completeness, flexibility, and lightness, outlines when pre‑design is sufficient or excessive, presents core design principles such as SOLID, N+1, statelessness, and details a six‑step C4‑based design and review process.

AgileC4KISS
0 likes · 14 min read
Mastering Simple & Effective Software Architecture: KISS Principles and Design Guidelines
Baidu Geek Talk
Baidu Geek Talk
Jul 7, 2022 · Fundamentals

Mastering the Observer Pattern: Real‑World Java and PHP Examples

This article explains the Observer design pattern, outlines its advantages and drawbacks, and demonstrates practical implementations through three real‑world scenarios—weather forecasting, payment processing, and data subscription—providing complete Java and PHP code samples that illustrate subjects, observers, and notification mechanisms.

Design PatternsJavaObserver Pattern
0 likes · 12 min read
Mastering the Observer Pattern: Real‑World Java and PHP Examples
Top Architect
Top Architect
Jun 28, 2022 · Fundamentals

Fundamentals of Software Modeling and Design Documentation

This article explains the basic concepts of software modeling, the role of UML diagrams, and how to organize those models into a coherent software design document that guides architects, developers, testers, and stakeholders throughout the development lifecycle.

Software ArchitectureSoftware ModelingUML
0 likes · 14 min read
Fundamentals of Software Modeling and Design Documentation
Alibaba Terminal Technology
Alibaba Terminal Technology
Jun 23, 2022 · Fundamentals

Why MVC Still Matters: Navigating Architecture Choices for Modern Apps

This article explores the practical challenges of using MVC and related architectural patterns, compares implementations from Microsoft, Apple, and industry experts, discusses controller bloat and view‑model relationships, and proposes solutions such as view‑to‑model factories, multi‑controller designs, and MVVM adoption to improve testability and maintainability.

Design PatternsMVCMVVM
0 likes · 24 min read
Why MVC Still Matters: Navigating Architecture Choices for Modern Apps
Architect's Guide
Architect's Guide
Jun 23, 2022 · Backend Development

Strategic and Tactical Design Principles for Technical Architecture

This article explains how to design robust technical architectures by applying strategic principles of suitability, simplicity, and evolution, alongside tactical guidelines for high concurrency, high availability, and business design, and illustrates the concepts with logical and physical architecture diagrams.

High ConcurrencySoftware Architecturebackend development
0 likes · 12 min read
Strategic and Tactical Design Principles for Technical Architecture
IT Architects Alliance
IT Architects Alliance
Jun 22, 2022 · Fundamentals

How to Create Clear Software Architecture Diagrams: Concepts, Types, and Best Practices

This article explains the purpose and benefits of software architecture diagrams, introduces basic concepts and the 4+1 view classification, describes what makes a good diagram, outlines common pitfalls, and presents the C4 modeling approach with practical examples for clear communication among stakeholders.

Architecture DiagramC4 modelSoftware Architecture
0 likes · 12 min read
How to Create Clear Software Architecture Diagrams: Concepts, Types, and Best Practices
Top Architect
Top Architect
Jun 21, 2022 · Fundamentals

How to Create Clear Architecture Diagrams: Concepts, Types, and Best Practices

This article explains the purpose and definition of software architecture diagrams, introduces the 4+1 view classification and the C4 model (system context, container, component, and code diagrams), discusses common pitfalls, and provides practical guidance and tool recommendations for producing self‑describing, audience‑focused architecture visuals.

Architecture DiagramsC4 modelSoftware Architecture
0 likes · 11 min read
How to Create Clear Architecture Diagrams: Concepts, Types, and Best Practices
Architect's Guide
Architect's Guide
Jun 21, 2022 · Fundamentals

5 Best Software Architectural Patterns You Must Know About

This article introduces the concept of software architectural patterns, explains why they are essential, and details five popular patterns—layered, microkernel, event‑driven, microservices, and space‑based—along with guidance on when and where to apply each.

Design PatternsMicrokernelSoftware Architecture
0 likes · 17 min read
5 Best Software Architectural Patterns You Must Know About
NetEase Yanxuan Technology Product Team
NetEase Yanxuan Technology Product Team
Jun 20, 2022 · Backend Development

DDD Practice in E-commerce Product Center Middle-Platform Service Construction

The article details how NetEase Yanxuan applied Domain‑Driven Design to reconstruct its Product Center middle‑platform, using strategic and tactical design, COLA layered architecture, and an event‑driven mechanism to eliminate duplicated logic and heavy coupling, cutting code volume by roughly two‑thirds while addressing entity scope, model richness, and microservice granularity challenges.

COLA ArchitectureDDDDomain-Driven Design
0 likes · 12 min read
DDD Practice in E-commerce Product Center Middle-Platform Service Construction
Java Backend Technology
Java Backend Technology
Jun 16, 2022 · Fundamentals

Mastering the Chain of Responsibility Pattern: From Pitfalls to Clean Implementations

This article explains the Chain of Responsibility design pattern, illustrates common misuse with a multi‑if game‑level example, and then shows step‑by‑step refactorings—including linked handlers, an abstract base class, a factory and enum‑based configuration—to produce clean, extensible Java code.

Chain of ResponsibilityDesign PatternSoftware Architecture
0 likes · 12 min read
Mastering the Chain of Responsibility Pattern: From Pitfalls to Clean Implementations
Top Architect
Top Architect
Jun 15, 2022 · Fundamentals

Common Software Architecture Patterns and Their Applications

This article introduces ten common software architecture patterns—layered, client‑server, master‑slave, pipe‑filter, proxy, P2P, event‑bus, MVC, blackboard, and interpreter—explaining their structures, typical use cases, and advantages to help developers choose suitable designs for large‑scale systems.

BackendDesign PatternsMVC
0 likes · 11 min read
Common Software Architecture Patterns and Their Applications
Top Architect
Top Architect
Jun 5, 2022 · Fundamentals

Understanding Software Architecture: From Machine Language to Modern Design

This article explains the evolution of programming—from machine code, assembly, and high‑level languages—to the software crises that led to structured programming, object‑oriented design, and ultimately the emergence of software architecture as a solution for managing system complexity.

Software ArchitectureTechnology Fundamentalsprogramming languages
0 likes · 14 min read
Understanding Software Architecture: From Machine Language to Modern Design
IT Architects Alliance
IT Architects Alliance
May 30, 2022 · R&D Management

From Machine Code to Modern Systems: A Deep Dive into Software Architecture

This article traces the evolution of software development—from machine language and assembly to high‑level languages—explores the two software crises, explains why software architecture emerged, and clarifies core concepts such as systems, subsystems, modules, components, frameworks, and architecture itself.

ComponentSoftware ArchitectureSoftware History
0 likes · 13 min read
From Machine Code to Modern Systems: A Deep Dive into Software Architecture