Tagged articles

Software Architecture

1241 articles · Page 10 of 13
Alibaba Cloud Native
Alibaba Cloud Native
Aug 25, 2020 · Fundamentals

Why Software Complexity Explodes in Large Systems and How to Tame It

The article explains why large distributed applications quickly become complex, identifies cognitive‑load and collaboration‑cost as the two key dimensions of software complexity, analyses concrete causes such as poor logic, mismatched models, bad API design, naming and testing gaps, and offers practical principles for keeping complexity under control.

MicroservicesSoftware Architecturecode design
0 likes · 26 min read
Why Software Complexity Explodes in Large Systems and How to Tame It
DevOps
DevOps
Aug 24, 2020 · Fundamentals

Understanding Loose Coupling in Banking IT Systems: Concepts, Measurement, and Design Practices

This article explains the concept of loose coupling in banking IT systems, outlines its definitions, measurement criteria, and practical design guidelines across components, interfaces, data, and processes, while also discussing the trade‑offs and costs associated with adopting a loosely coupled architecture.

Loose CouplingSoftware ArchitectureSystem Design
0 likes · 16 min read
Understanding Loose Coupling in Banking IT Systems: Concepts, Measurement, and Design Practices
Alibaba Cloud Developer
Alibaba Cloud Developer
Aug 23, 2020 · Fundamentals

Why Large Software Systems Spiral into Complexity and How to Tame It

This article explores why massive distributed applications quickly become complex, identifies cognitive load and collaboration cost as the two main dimensions of software complexity, and offers practical design, naming, testing, and documentation strategies to keep systems maintainable over time.

MicroservicesSoftware Architecturecode quality
0 likes · 25 min read
Why Large Software Systems Spiral into Complexity and How to Tame It
Programmer DD
Programmer DD
Aug 15, 2020 · Fundamentals

Mastering the Strategy Pattern in Java: Real‑World Pricing and Payment Examples

This article explains the Strategy pattern with Java, showing how to refactor a naïve pricing module into a flexible, open‑closed design, and then extends the concept to payment processing and thread‑pool rejection handling, complete with code samples and UML diagrams.

Design PatternsSoftware ArchitectureStrategy Pattern
0 likes · 28 min read
Mastering the Strategy Pattern in Java: Real‑World Pricing and Payment Examples
Architects Research Society
Architects Research Society
Jul 31, 2020 · Operations

From Architectural Diagrams to Operational Reality: A Thought Experiment on Software Evolution and Microservices

The article uses a thought experiment of a computer left idle for a year to illustrate how software architecture must evolve from static diagrams to operationalized, continuously delivered microservices, emphasizing the importance of DevOps, feature toggles, and real‑world resilience.

MicroservicesSoftware Architecturecontinuous delivery
0 likes · 7 min read
From Architectural Diagrams to Operational Reality: A Thought Experiment on Software Evolution and Microservices
Architects Research Society
Architects Research Society
Jul 27, 2020 · Information Security

What Are Application Security Principles?

Application security principles are language‑agnostic design and implementation guidelines that help reduce the likelihood and impact of threats, providing a systematic way to make secure decisions, derive requirements, and identify potential defects in software systems.

Application SecurityInformation SecuritySoftware Architecture
0 likes · 5 min read
What Are Application Security Principles?
Java Backend Technology
Java Backend Technology
Jul 26, 2020 · Fundamentals

How to Craft Clear, Effective Architecture Diagrams: A Practical Guide

This article introduces a methodology for creating clear architecture diagrams, explains what architecture and architecture diagrams are, outlines their purposes, presents the 4+1 view classification, discusses common pitfalls, recommends the C4 model, and shares a real‑world case study to help readers communicate system designs without ambiguity.

C4 modelSoftware Architecturediagram design
0 likes · 10 min read
How to Craft Clear, Effective Architecture Diagrams: A Practical Guide
Xianyu Technology
Xianyu Technology
Jul 14, 2020 · Backend Development

Applying the Responsibility Tree Pattern for Versioned API Refactoring

To refactor a versioned API plagued by nested guards, the article proposes the Responsibility Tree pattern—a hybrid of Chain of Responsibility and Strategy—that routes requests through hierarchical handlers based on parameters, yielding cleaner code, easier debugging, and scalable extension for future versions.

Chain of ResponsibilityDesign PatternsSoftware Architecture
0 likes · 12 min read
Applying the Responsibility Tree Pattern for Versioned API Refactoring
Top Architect
Top Architect
Jul 7, 2020 · Fundamentals

Overview of Four Major Software Architecture Styles: Monolithic, Distributed, Microservices, and Serverless

This article explains the basic concepts, advantages and disadvantages of four common software architecture patterns—monolithic, distributed, microservices, and serverless—helping developers understand their evolution, trade‑offs, and suitable scenarios for modern application design.

DistributedServerlessSoftware Architecture
0 likes · 12 min read
Overview of Four Major Software Architecture Styles: Monolithic, Distributed, Microservices, and Serverless
Efficient Ops
Efficient Ops
Jul 2, 2020 · Cloud Native

How Agricultural Bank Built a Scalable Microservice Platform with DevOps

This article describes Agricultural Bank's "1+1" development model that combines a comprehensive microservice development platform with an end‑to‑end DevOps workflow, enabling rapid, automated delivery of cloud‑native financial applications and achieving industry‑leading continuous delivery maturity.

MicroservicesSoftware Architecturecontinuous delivery
0 likes · 10 min read
How Agricultural Bank Built a Scalable Microservice Platform with DevOps
Efficient Ops
Efficient Ops
Jun 19, 2020 · Operations

Inside PICC’s Distributed Core System: Achieving Top‑Tier DevOps Maturity

The article details how China People's Insurance (PICC) leveraged a distributed micro‑service architecture, AI integration, and a DevOps maturity model to attain a level‑3 continuous delivery rating, illustrating the practical benefits, metrics, challenges, and future plans of their transformation.

Case StudySoftware Architecturecontinuous delivery
0 likes · 12 min read
Inside PICC’s Distributed Core System: Achieving Top‑Tier DevOps Maturity
Alibaba Cloud Native
Alibaba Cloud Native
Jun 15, 2020 · Fundamentals

Mastering Architecture Diagrams: Why, What, and How to Create Effective Designs

This article explains what an architecture diagram is, why it matters, and provides a step‑by‑step methodology—including business and system modeling, abstraction techniques, diagram classification, drawing guidelines, and quality evaluation—to help engineers produce clear, purposeful diagrams that improve communication and collaboration.

Software ArchitectureSystem Designabstraction
0 likes · 28 min read
Mastering Architecture Diagrams: Why, What, and How to Create Effective Designs
ITPUB
ITPUB
Jun 15, 2020 · Fundamentals

How to Design Effective Architecture Diagrams: From Definition to Practical Modeling

This article explains what an architecture diagram is, why it matters, and provides a step‑by‑step methodology—including business and system modeling, abstraction techniques, and quality criteria—to create clear, purposeful diagrams for software projects.

High CohesionLow CouplingSoftware Architecture
0 likes · 30 min read
How to Design Effective Architecture Diagrams: From Definition to Practical Modeling
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Jun 10, 2020 · Fundamentals

Adapter Design Pattern: Concepts, Structure, Code Samples, and Spring MVC Application

This article explains the Adapter design pattern, illustrates its real‑world analogies, describes object and class adapter variants, provides complete Java code examples, demonstrates a voltage‑conversion demo, and shows how Spring MVC employs adapters to decouple controllers from request handling.

Adapter PatternClass AdapterDesign Patterns
0 likes · 15 min read
Adapter Design Pattern: Concepts, Structure, Code Samples, and Spring MVC Application
Programmer DD
Programmer DD
Jun 7, 2020 · Fundamentals

Master the Command Pattern: Decouple Actions for Flexible Software Design

Learn how the Command pattern separates request issuance from execution, introducing roles like Command, ConcreteCommand, Receiver, Invoker, and Client, and see real‑world analogies and examples such as Hystrix and Java’s ThreadPoolExecutor that illustrate its widespread use in modern software.

Command PatternSoftware ArchitectureUML
0 likes · 4 min read
Master the Command Pattern: Decouple Actions for Flexible Software Design
Programmer DD
Programmer DD
Jun 7, 2020 · R&D Management

Why Software Architects Should Still Write Code: Benefits and Risks

The article argues that keeping software architects hands‑on with coding improves team communication, design accuracy, tool awareness, and product ownership, while highlighting the pitfalls of architects staying away from code and offering practical solutions for better collaboration and architecture evolution.

Software Architecturecodingdesign principles
0 likes · 10 min read
Why Software Architects Should Still Write Code: Benefits and Risks
Architects Research Society
Architects Research Society
Jun 4, 2020 · Fundamentals

Overview of Software Architecture Patterns and Styles

This article introduces software architecture patterns as reusable solutions to common design problems and catalogs various architecture styles—including layered, microservices, event‑driven, and distributed systems—providing a concise reference for architects and developers.

Design PatternsMicroservicesSoftware Architecture
0 likes · 3 min read
Overview of Software Architecture Patterns and Styles
21CTO
21CTO
May 26, 2020 · R&D Management

How to Keep Learning and Grow as an Engineer While Working Full‑Time

This article shares practical principles, mindset tips, and concrete planning methods for engineers who want to continuously improve their technical skills, overcome common career dilemmas, and become effective architects and leaders despite a busy workload.

Project ManagementSoftware Architecturecareer development
0 likes · 34 min read
How to Keep Learning and Grow as an Engineer While Working Full‑Time
JD Retail Technology
JD Retail Technology
May 26, 2020 · Mobile Development

Case Study: Rapid Development of JD.com “Jingdong Fast Version” Mobile App

This article details how JD.com’s retail teams collaboratively designed, built, and launched the lightweight Jingdong Fast Version mobile app in early 2020, outlining the project’s tight timeline, cross‑team coordination, technical architecture, design simplifications, and the successful on‑time release despite pandemic constraints.

Case StudyJD.comMobile App
0 likes · 13 min read
Case Study: Rapid Development of JD.com “Jingdong Fast Version” Mobile App
Full-Stack Internet Architecture
Full-Stack Internet Architecture
May 25, 2020 · Fundamentals

Understanding the Six SOLID Principles of Design Patterns

This article explains the six core SOLID principles—Single Responsibility, Interface Segregation, Dependency Inversion, Liskov Substitution, Law of Demeter, and Open/Closed—detailing their definitions, benefits, practical examples, and how they improve code reusability, readability, maintainability, and system extensibility.

Design PatternsSOLIDSoftware Architecture
0 likes · 8 min read
Understanding the Six SOLID Principles of Design Patterns
21CTO
21CTO
May 23, 2020 · Backend Development

Mastering Microservice Architecture: 9 Fundamentals for Successful Design

This article explains the core benefits, essential design principles, and common limitations of microservice architecture, offering practical guidance on functional scope, cohesion, API integration, data isolation, traffic management, automation, and monitoring to help teams build scalable, resilient software systems.

Backend DevelopmentSoftware Architecturedesign principles
0 likes · 13 min read
Mastering Microservice Architecture: 9 Fundamentals for Successful Design
Amap Tech
Amap Tech
May 14, 2020 · Frontend Development

Evolution of Gaode (Amap) Front‑End Technology from 2015 to Present

From 2015’s rapid, short‑cycle UI tweaks to a 100‑person front‑end organization, Gaode’s Amap team progressively adopted componentization, templating, a C++‑based dynamic engine and JSX framework, scaling code from 30 k to 600 k lines, and now focuses on fine‑grained, standardized, differentiated, low‑code and platformized development for long‑term stability.

Dynamic UIGaode MapsSoftware Architecture
0 likes · 12 min read
Evolution of Gaode (Amap) Front‑End Technology from 2015 to Present
Efficient Ops
Efficient Ops
May 13, 2020 · Operations

Building a Custom Jenkins Pipeline Engine with Shared Libraries

This presentation walks through a step‑by‑step approach that blends real‑world business needs, design patterns, and Jenkins features to demonstrate how a shared‑library‑based pipeline engine can support large‑scale, complex CI/CD scenarios, from native solutions to structured atomic units and dynamic execution refactoring.

CI/CDJenkinsShared Library
0 likes · 2 min read
Building a Custom Jenkins Pipeline Engine with Shared Libraries
Continuous Delivery 2.0
Continuous Delivery 2.0
May 13, 2020 · Backend Development

Practical Guide to Unit Testing: Experiences, Benefits, Obstacles, and Implementation Strategies

This comprehensive article shares the author's hands‑on experience with unit testing, explains why testing drives better design and lower costs, outlines common misconceptions and obstacles, and provides detailed implementation guidelines—including architecture refactoring, dependency inversion, and a real‑world TV service example—to help developers start writing effective unit tests.

Software ArchitectureUnit Testingcode quality
0 likes · 26 min read
Practical Guide to Unit Testing: Experiences, Benefits, Obstacles, and Implementation Strategies
Architects Research Society
Architects Research Society
May 11, 2020 · Fundamentals

10 Common Software Architectural Patterns and Their Uses

This article introduces ten widely used software architectural patterns—including layered, client‑server, master‑slave, pipe‑filter, broker, peer‑to‑peer, event‑bus, MVC, blackboard, and interpreter—explaining their structures, typical applications, advantages, and disadvantages, and provides a comparative overview.

Design PatternsMVCSoftware Architecture
0 likes · 8 min read
10 Common Software Architectural Patterns and Their Uses
High Availability Architecture
High Availability Architecture
May 11, 2020 · Backend Development

Understanding CQRS Complexity: Goals, Common Pitfalls, and Practical Solutions

This article examines the CQRS (Command Query Responsibility Segregation) pattern, outlining its objectives, three major complexity traps—over‑isolated commands, event sourcing coupling, and excessive tooling—and offers practical mitigation strategies, including relaxed isolation, alternative projection techniques, and careful service decomposition.

CQRSDesign PatternsEvent Sourcing
0 likes · 10 min read
Understanding CQRS Complexity: Goals, Common Pitfalls, and Practical Solutions
Architects Research Society
Architects Research Society
May 9, 2020 · Fundamentals

Key Software Architecture Trends for 2020: Micro Frontends, AsyncAPI, Data Mesh, Policy as Code, Serverless, Low‑Code, and More

The article surveys the most significant software‑architecture trends of 2020—including micro frontends, AsyncAPI, data mesh, policy‑as‑code, serverless, low‑code/no‑code, and GraphQL—highlighting expert opinions, adoption status, and the ethical considerations shaping modern distributed systems.

Data MeshGraphQLServerless
0 likes · 14 min read
Key Software Architecture Trends for 2020: Micro Frontends, AsyncAPI, Data Mesh, Policy as Code, Serverless, Low‑Code, and More
21CTO
21CTO
May 8, 2020 · Backend Development

Why You Should Rethink Using Microservices

This article examines common misconceptions about microservices—such as promises of simpler code, faster performance, easier collaboration, and better resilience—and offers practical guidance on when the architecture truly adds value, urging developers to evaluate domain boundaries and operational costs before adoption.

Design PitfallsSoftware Architecturescalability
0 likes · 13 min read
Why You Should Rethink Using Microservices
vivo Internet Technology
vivo Internet Technology
May 6, 2020 · Backend Development

Understanding Aggregates, Entities, and Value Objects in Domain-Driven Design

The article explains DDD’s core building blocks—entities identified by persistent IDs, immutable value objects, and aggregates that group related objects under a single root—using a car‑model case study to show how roots enforce invariants, how factories, repositories and lazy‑loaded references fit within a hexagonal architecture, and why these practices improve modular, maintainable software.

AggregatesDomain-Driven DesignEntities
0 likes · 31 min read
Understanding Aggregates, Entities, and Value Objects in Domain-Driven Design
dbaplus Community
dbaplus Community
May 4, 2020 · Fundamentals

Why Design Patterns May Harm Your Projects More Than Help

The article argues that, despite the popularity of design patterns, blindly applying the 23 classic patterns rarely improves software quality and often leads to over‑engineered or fragile code, urging developers to critically assess their context, language features, and multi‑paradigm alternatives before using them.

Design PatternsObject-Oriented ProgrammingSoftware Architecture
0 likes · 16 min read
Why Design Patterns May Harm Your Projects More Than Help
Qunar Tech Salon
Qunar Tech Salon
Apr 30, 2020 · Fundamentals

Logical Architecture: Basic Constraints, Reuse, and Layering

This article explores the essential constraints of logical architecture, discusses software design principles and patterns for reuse, examines various reuse strategies, and details how logical architecture can be layered and partitioned across different granularities to improve maintainability, scalability, and efficiency.

Software Architecturedesign principleslayered architecture
0 likes · 30 min read
Logical Architecture: Basic Constraints, Reuse, and Layering
Top Architect
Top Architect
Apr 24, 2020 · R&D Management

Full‑time Software Architect: Roles, Responsibilities, Rights, and Evaluation

The article explains the distinction between part‑time and full‑time software architects, outlines the core responsibilities such as global technical planning, unified methods and standards, robust foundational construction, and practical implementation, and discusses the rights, assessment criteria, and practical ideas for establishing an effective architecture function within large organizations.

R&D ManagementSoftware Architecturearchitect role
0 likes · 11 min read
Full‑time Software Architect: Roles, Responsibilities, Rights, and Evaluation
Top Architect
Top Architect
Apr 22, 2020 · Fundamentals

Choosing the Right Diagram for Software Development: Use‑Case, Robustness, Mind‑Map, DFD, Flowchart, UML Class, State, ER, and Sequence Diagrams

The article explains why diagrams are essential in software development, describes the problems they solve, and details nine common diagram types—use‑case, robustness, mind‑map, data‑flow, flowchart, UML class, state, ER, and sequence—showing their appropriate scenarios, advantages, and drawbacks to help architects and developers select the most suitable visual tool for each stage of the development lifecycle.

Software ArchitectureUMLdesign process
0 likes · 13 min read
Choosing the Right Diagram for Software Development: Use‑Case, Robustness, Mind‑Map, DFD, Flowchart, UML Class, State, ER, and Sequence Diagrams
Top Architect
Top Architect
Apr 21, 2020 · Mobile Development

Designing a Cross‑Platform Architecture for WeChat Pay: From Problems to Solutions

The article analyzes the inconsistencies and maintenance challenges of separate iOS and Android implementations of WeChat Pay, then presents a C++‑based cross‑platform framework with UseCase‑driven business flow, routing, unified network handling and strict data passing, showing how these changes cut code size, keep crash rates stable and dramatically improve development productivity.

C++Design PatternsMobile Development
0 likes · 14 min read
Designing a Cross‑Platform Architecture for WeChat Pay: From Problems to Solutions
Programmer DD
Programmer DD
Apr 18, 2020 · Fundamentals

How to Design Clear Architecture Diagrams: A Practical Guide

This article explains why clear architecture diagrams are essential for effective communication, outlines common pitfalls when drawing them, defines architecture and its diagram types, introduces the C4 modeling approach, and provides concrete examples and best‑practice tips to create self‑describing, audience‑focused diagrams.

C4 modelSoftware ArchitectureSystem Design
0 likes · 11 min read
How to Design Clear Architecture Diagrams: A Practical Guide
Top Architect
Top Architect
Apr 17, 2020 · Fundamentals

Understanding Software Architecture: Concepts, Layers, Classifications, and Evolution

This comprehensive article explains the essential concepts of software architecture, including definitions of systems, subsystems, modules, components, frameworks, and architecture itself, and then details various architectural layers such as business, application, data, code, technical, and deployment, while also covering evolution from monoliths to micro‑services and common pitfalls.

Software ArchitectureSystem Designarchitecture patterns
0 likes · 29 min read
Understanding Software Architecture: Concepts, Layers, Classifications, and Evolution
DevOps
DevOps
Apr 16, 2020 · R&D Management

The Role of Value‑Stream Architects in Modern Software Development

This article explains how value‑stream architects act as influencers, consultants, optimizers, and architects who visualize, influence, design, and train around software delivery pipelines, enabling organizations to accelerate business value flow and achieve continuous improvement in large‑scale DevOps environments.

R&D efficiencySoftware ArchitectureValue Stream
0 likes · 9 min read
The Role of Value‑Stream Architects in Modern Software Development
macrozheng
macrozheng
Apr 14, 2020 · Fundamentals

Why Code Quality Matters: 4 Common Pitfalls and Proven Solutions for Developers

This article examines why high‑quality, maintainable code is essential for software projects, outlines four recurring code‑quality problems—including oversized components, low cohesion, tangled logic, and excessive if‑else—and presents concrete refactoring patterns such as inverted‑pyramid design, proper lib/framework reuse, Template Method separation, and rich enum types, while also introducing a CODEX indexing technique for large codebases.

Best PracticesDesign PatternsSoftware Architecture
0 likes · 38 min read
Why Code Quality Matters: 4 Common Pitfalls and Proven Solutions for Developers
Top Architect
Top Architect
Apr 10, 2020 · Fundamentals

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

This article explains the purpose and benefits of software architecture diagrams, defines key concepts such as architecture and diagram types, outlines common pitfalls, introduces the 4+1 and C4 modeling approaches, and provides practical guidance and examples for producing clear, audience‑focused diagrams.

C4 modelSoftware ArchitectureSystem Design
0 likes · 10 min read
How to Create Effective Software Architecture Diagrams: Concepts, Types, and Best Practices
Efficient Ops
Efficient Ops
Apr 8, 2020 · R&D Management

Designing Autonomous Teams: Reduce Collaboration Overhead for End‑to‑End Ownership

The article explains how designing autonomous, end‑to‑end responsible teams—by minimizing inter‑team collaboration, adopting full‑process or cross‑functional squads, and leveraging automation tools—leads to better software architecture, aligns with Conway’s law, and improves efficiency in modern DevOps environments.

AgileAutomationConway's Law
0 likes · 6 min read
Designing Autonomous Teams: Reduce Collaboration Overhead for End‑to‑End Ownership
Open Source Linux
Open Source Linux
Apr 8, 2020 · Fundamentals

How to Design Clear Architecture Diagrams: A Practical Guide for Engineers

This article explains why clear architecture diagrams are essential for communication, defines core concepts, categorizes diagram types, outlines common pitfalls, and introduces the C4 model with practical tips to create self‑describing, audience‑focused diagrams that align with code.

C4 modelSoftware ArchitectureSystem Design
0 likes · 11 min read
How to Design Clear Architecture Diagrams: A Practical Guide for Engineers
Alibaba Cloud Developer
Alibaba Cloud Developer
Apr 7, 2020 · Mobile Development

Why Alibaba Is Betting on Flutter: Inside Its Mobile Development Strategy

This article explores how Alibaba’s groups have adopted Flutter for rapid, cross‑platform mobile development, detailing its efficiency gains, UI expressiveness, infrastructure build‑outs, business deployments, and future plans to make Flutter a core development model across the company.

Software ArchitectureUI Performancedevelopment efficiency
0 likes · 30 min read
Why Alibaba Is Betting on Flutter: Inside Its Mobile Development Strategy
Alibaba Cloud Developer
Alibaba Cloud Developer
Apr 3, 2020 · Fundamentals

How to Master a New System Quickly: A Practical Guide for Developers

This guide explains how developers can efficiently get up to speed with an unfamiliar system by covering business learning, technical learning across five architectural views, operational concerns, and hands‑on practice, offering concrete questions and steps for each stage.

Software Architecturebusiness analysispractical guide
0 likes · 10 min read
How to Master a New System Quickly: A Practical Guide for Developers
Alibaba Cloud Developer
Alibaba Cloud Developer
Apr 1, 2020 · Fundamentals

How to Rapidly Boost Your Software Design Skills: Practical Steps for Developers

This article shares practical advice on improving a programmer's design ability, covering coding practice, theory study, hands‑on implementation, revisiting concepts, summarizing lessons, sharing knowledge, and additional tips such as designing before coding and avoiding blind reliance on patterns.

Design PatternsProgramming FundamentalsSoftware Architecture
0 likes · 9 min read
How to Rapidly Boost Your Software Design Skills: Practical Steps for Developers
Architects' Tech Alliance
Architects' Tech Alliance
Mar 31, 2020 · Backend Development

99 Things Every Software Architect Should Know

This article compiles 99 practical guidelines for software architects, covering everything from continuous learning, simplifying complexity, effective communication, performance awareness, requirement analysis, coding discipline, design trade‑offs, testing, and team leadership, offering a comprehensive roadmap to becoming a high‑impact architect.

Best PracticesLeadershipPerformance
0 likes · 22 min read
99 Things Every Software Architect Should Know
21CTO
21CTO
Mar 26, 2020 · Mobile Development

How WeChat Pay’s C++ Cross‑Platform Framework Solved Mobile Payment Challenges

WeChat Pay’s new C++ cross‑platform framework unifies iOS and Android payment flows, reducing code by 45%, cutting development time, improving crash stability, and introducing a routing mechanism, use‑case abstraction, and disciplined data handling to boost productivity and quality across mobile payment services.

C++Cross-PlatformPerformance Optimization
0 likes · 14 min read
How WeChat Pay’s C++ Cross‑Platform Framework Solved Mobile Payment Challenges
Top Architect
Top Architect
Mar 25, 2020 · Fundamentals

Architecture Corruption: Causes, Stages, and Mitigation Strategies

Long‑running software projects inevitably see their initially clean architectures degrade as codebases grow, teams expand, and build times increase, but by understanding the stages of architectural decay and applying practices such as modular isolation, incremental builds, tooling upgrades, and disciplined refactoring, teams can slow or reverse this corrosion.

Build OptimizationSoftware Architecturemodularization
0 likes · 23 min read
Architecture Corruption: Causes, Stages, and Mitigation Strategies
Architects' Tech Alliance
Architects' Tech Alliance
Mar 23, 2020 · Fundamentals

What Really Defines Software Architecture? A Deep Dive into Concepts, Layers, and Evolution

This article explains the fundamental concepts of software architecture, distinguishes systems, subsystems, modules, components, and frameworks, outlines various architecture layers and classifications, describes architecture levels, tracks the evolution from monolithic to micro‑services, and discusses how to evaluate and avoid common architectural pitfalls.

MicroservicesSoftware ArchitectureSystem Design
0 likes · 21 min read
What Really Defines Software Architecture? A Deep Dive into Concepts, Layers, and Evolution
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Mar 23, 2020 · Fundamentals

Mastering Software Architecture Patterns: From Layered to Cloud‑Native

This article explains the classic definition of patterns, introduces architecture patterns, and reviews five common software architecture styles—layered, microservices, microkernel, event‑driven, and cloud‑native—detailing their principles, advantages, drawbacks, and typical use cases, helping developers choose the right structure for complex systems.

Design PatternsMicroservicesSoftware Architecture
0 likes · 14 min read
Mastering Software Architecture Patterns: From Layered to Cloud‑Native
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Mar 23, 2020 · Fundamentals

15 Timeless Architecture Principles Every Engineer Should Follow

This article outlines how to create solid software architectures by presenting a process for forming design principles, detailing fifteen universal architecture guidelines, and explaining service‑splitting and key design rules that together help build scalable, maintainable, and resilient systems.

MicroservicesSoftware ArchitectureSystem Design
0 likes · 16 min read
15 Timeless Architecture Principles Every Engineer Should Follow
ITPUB
ITPUB
Mar 22, 2020 · R&D Management

What Makes a Great Architect? Lessons from “The Model Thinker”

This reading note explains the definition of architecture, its three essential elements, the role of an architect, how to distinguish problems, means and challenges, and how model‑thinking complements architectural thinking through concrete examples and classic models such as the cognitive pyramid and the Solow growth model.

Software ArchitectureSystem Designarchitecture
0 likes · 14 min read
What Makes a Great Architect? Lessons from “The Model Thinker”
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Mar 20, 2020 · Backend Development

From Monolith to Microservices: A Practical Guide to Architecture Evolution

This article explains the hierarchical architecture levels, contrasts strategic and tactical design, and walks through the evolution from monolithic applications to distributed services and micro‑services, highlighting benefits, drawbacks, and key metrics for evaluating a sound system architecture.

MicroservicesSoftware ArchitectureSystem Design
0 likes · 11 min read
From Monolith to Microservices: A Practical Guide to Architecture Evolution
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Mar 20, 2020 · Fundamentals

Avoid Common Architecture Pitfalls and Build Scalable Systems

This article outlines frequent software architecture misconceptions, traces the evolution of large‑scale system designs, presents core architectural patterns and essential elements, and recommends key books to help engineers create high‑performance, reliable, and secure applications.

Software ArchitectureSystem Designscalability
0 likes · 9 min read
Avoid Common Architecture Pitfalls and Build Scalable Systems
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Mar 20, 2020 · Fundamentals

What Is Software Architecture? Core Concepts, Layers, and Design Principles

This article explains the fundamental definition of software architecture, distinguishes related concepts such as system, subsystem, module, component, and framework, and outlines the various architectural layers—including business, application, data, code, technical, and deployment—while highlighting the architect's responsibilities and when architecture design is needed.

Business ArchitectureSoftware ArchitectureSystem Design
0 likes · 12 min read
What Is Software Architecture? Core Concepts, Layers, and Design Principles
Top Architect
Top Architect
Mar 19, 2020 · Fundamentals

Overview of Common Software Architecture Styles: Monolithic, Distributed, Microservices, and Serverless

The article explains four major software architecture patterns—monolithic, distributed, microservices, and serverless—detailing their structures, advantages, drawbacks, and suitable scenarios to help developers broaden their architectural knowledge and make informed design choices.

ServerlessSoftware Architecturedistributed systems
0 likes · 12 min read
Overview of Common Software Architecture Styles: Monolithic, Distributed, Microservices, and Serverless
Cloud Native Technology Community
Cloud Native Technology Community
Mar 18, 2020 · Backend Development

Microservice Splitting Strategies: Perspectives and Practices

The article explores various microservice decomposition approaches—vertical vs. horizontal, business‑driven, stability‑based, reliability‑focused, and performance‑oriented—highlighting trade‑offs, team size considerations, and practical guidelines for achieving scalable, maintainable service architectures.

MicroservicesSoftware ArchitectureTeam Organization
0 likes · 9 min read
Microservice Splitting Strategies: Perspectives and Practices
Top Architect
Top Architect
Mar 16, 2020 · R&D Management

Why Software Architects Should Write Code: Benefits, Risks, and Best Practices

The article argues that the common belief that architects need not code is a misconception, explaining how hands‑on coding improves architectural decisions, team collaboration, design quality, and product ownership while also addressing potential drawbacks and offering practical solutions.

Software Architecturearchitect rolecoding
0 likes · 11 min read
Why Software Architects Should Write Code: Benefits, Risks, and Best Practices
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Mar 13, 2020 · Fundamentals

Mastering Software Architecture with the C4 Model: A Practical Guide

Clear, layered software architecture diagrams prevent misunderstandings, and the C4 model—covering Context, Container, Component, and Code levels—offers a simple, universal language for visualizing static system structures, guiding teams from high‑level overviews to detailed code maps across diverse audiences.

C4 modelSoftware ArchitectureSystem Design
0 likes · 8 min read
Mastering Software Architecture with the C4 Model: A Practical Guide
Java Backend Technology
Java Backend Technology
Mar 11, 2020 · Fundamentals

What Really Defines Software Architecture? Concepts, Layers, and Evolution Explained

This comprehensive guide explains the true essence of software architecture, covering definitions, system vs. subsystem, modules vs. components, frameworks vs. architecture, various architectural layers (business, application, data, code, technical, deployment), evolution from monolith to microservices, common pitfalls, and recommended reading, all aimed at helping architects design suitable, efficient, and maintainable systems.

Software ArchitectureSystem Designapplication architecture
0 likes · 26 min read
What Really Defines Software Architecture? Concepts, Layers, and Evolution Explained
Architects' Tech Alliance
Architects' Tech Alliance
Mar 5, 2020 · R&D Management

Understanding the Mid‑Platform (Zhongtai) Architecture: History, Practices, and Pitfalls in Major Tech Companies

This article examines the evolution of the mid‑platform concept in Chinese tech giants, outlines how companies like Tencent, Baidu, Xiaomi, Didi, JD, NetEase, Yonyou and Zhihu implement and differentiate front‑end, back‑end, and mid‑platform layers, categorizes platform types, and discusses common challenges and organizational pitfalls.

Case StudySoftware Architectureenterprise platforms
0 likes · 13 min read
Understanding the Mid‑Platform (Zhongtai) Architecture: History, Practices, and Pitfalls in Major Tech Companies
Architecture Digest
Architecture Digest
Feb 18, 2020 · Backend Development

Differences Between Software Architects and Senior Developers: Path to Becoming an Architect

The article shares practical insights from a year‑long experience in an internet company, comparing the work attitudes, technical foundations, and responsibilities of architects versus senior developers, and offers concrete steps and resources for engineers aiming to upgrade to an architect role.

Backend DevelopmentSoftware ArchitectureSystem Design
0 likes · 12 min read
Differences Between Software Architects and Senior Developers: Path to Becoming an Architect
Top Architect
Top Architect
Feb 14, 2020 · Backend Development

Understanding Microservice Architecture: From Monolithic Three‑Tier to Distributed Services

This article explains the evolution from traditional three‑layer monolithic architecture to microservice architecture, detailing the concepts, advantages, disadvantages, key characteristics, and practical challenges such as distributed complexity, DevOps, testing, and dependency management.

Software ArchitectureThree-tierdistributed systems
0 likes · 13 min read
Understanding Microservice Architecture: From Monolithic Three‑Tier to Distributed Services
Top Architect
Top Architect
Feb 12, 2020 · Backend Development

Refactoring a 3000‑Line Legacy Data‑Center Management System to 15 Lines: Lessons and Best Practices

This article recounts how a developer transformed a massive three‑thousand‑line C# data‑center monitoring client into a concise fifteen‑line solution by applying reflection, generics, and systematic refactoring, while sharing practical advice on avoiding code generators, reinventing the wheel, and using unit tests to foster clean architecture.

C#Software ArchitectureUnit Testing
0 likes · 18 min read
Refactoring a 3000‑Line Legacy Data‑Center Management System to 15 Lines: Lessons and Best Practices
Architecture Digest
Architecture Digest
Feb 6, 2020 · Backend Development

Refactoring a 3000‑Line C# System to 15 Lines: Lessons and Practices

An experienced developer recounts how he transformed a cumbersome three‑tier C# data‑center management system from thousands of lines to a concise, maintainable codebase using reflection, generics, and thoughtful refactoring, while sharing practical advice on avoiding code generators, reducing duplication, and embracing unit testing.

Backend DevelopmentC#Design Patterns
0 likes · 18 min read
Refactoring a 3000‑Line C# System to 15 Lines: Lessons and Practices
Architects' Tech Alliance
Architects' Tech Alliance
Jan 22, 2020 · R&D Management

The Evolution, Practices, and Pitfalls of Mid‑Platform (Zhongtai) Architecture in Large Tech Companies

This article traces the origin of the mid‑platform concept, examines how major Chinese tech giants implement and classify their mid‑platforms, explains the distinction between front‑end, back‑end, and mid‑platform layers, and outlines common pitfalls and practical challenges in building and operating such platforms.

Data PlatformEnterpriseSoftware Architecture
0 likes · 16 min read
The Evolution, Practices, and Pitfalls of Mid‑Platform (Zhongtai) Architecture in Large Tech Companies
Top Architect
Top Architect
Jan 15, 2020 · Cloud Native

2019 Architecture Review: Middle Platform, Cloud‑Native, Microservices, Reactive and Serverless Trends

The article reviews the major software‑architecture changes in 2019, covering the emergence of the middle platform, the shift to cloud‑native and microservice designs, the rise of reactive and serverless computing, and the evolving front‑end landscape, while reflecting on future directions.

ServerlessSoftware Architecturecloud-native
0 likes · 14 min read
2019 Architecture Review: Middle Platform, Cloud‑Native, Microservices, Reactive and Serverless Trends
Top Architect
Top Architect
Jan 3, 2020 · Backend Development

Understanding the Role of Software Architects: Responsibilities, Differences from Developers, and Practical Guidance

The article explains a software architect's core duties, contrasts them with developers, outlines how to become an architect, and provides practical advice on topics such as UML, Spring Cloud vs Dubbo, distributed tasks, high concurrency, rate limiting, data synchronization, and large‑scale data updates.

Software ArchitectureSystem DesignUML
0 likes · 10 min read
Understanding the Role of Software Architects: Responsibilities, Differences from Developers, and Practical Guidance
Java Captain
Java Captain
Jan 1, 2020 · Fundamentals

Why Enums Are Considered Poor Choices for API Return Values

The article explains why using enums as API return values is often criticized, highlighting their lack of extensibility, potential serialization errors when newer enum values appear, and contrasting this with the safety they provide as input parameters, illustrated with Java examples and community opinions.

API designEnumSoftware Architecture
0 likes · 4 min read
Why Enums Are Considered Poor Choices for API Return Values
G7 EasyFlow Tech Circle
G7 EasyFlow Tech Circle
Dec 9, 2019 · Cloud Native

Inside the Cloud Native Tech Salon: Lessons from Industry Leaders

The cloud native tech salon in Chengdu gathered experts from Meituan, Huawei, and G7 to discuss platform evolution, container innovations, and the convergence of cloud native with IoT, while showcasing sponsor support, a book signing, and vibrant community activities.

Container TechnologyIoTSoftware Architecture
0 likes · 4 min read
Inside the Cloud Native Tech Salon: Lessons from Industry Leaders
Amap Tech
Amap Tech
Dec 6, 2019 · Backend Development

Full-Chain Dependency Analysis System for Gaode App: Architecture, Implementation, and Use Cases

The Gaode App full‑chain dependency analysis system parses source code across JS, C++, Android and iOS into ASTs, extracts forward and reverse dependencies, stores them for GraphQL queries, and uses the data to guide regression testing, API deprecation, migration trends, and package‑size optimization, improving codebase governance.

ASTDependency AnalysisGraphQL
0 likes · 12 min read
Full-Chain Dependency Analysis System for Gaode App: Architecture, Implementation, and Use Cases
Alibaba Cloud Developer
Alibaba Cloud Developer
Dec 6, 2019 · R&D Management

Mastering Problem Definition: How Layered Thinking Fuels Engineering Innovation

This article explores the true nature of problems, explains why precise problem definition is essential for success, introduces a three‑dimensional framework for assessing severity, categorises problems, and presents "layered" and "dimensional" thinking techniques that help engineers and managers generate innovative solutions.

R&D ManagementSoftware Architectureinnovation
0 likes · 22 min read
Mastering Problem Definition: How Layered Thinking Fuels Engineering Innovation
Alibaba International Technology
Alibaba International Technology
Dec 5, 2019 · Fundamentals

Key Architecture Principles from Clean Architecture Explained

This article distills the core concepts of the book “Clean Architecture,” outlining software system value, architecture goals, programming paradigms, design principles such as OCP, SRP, DIP, and practical guidelines for component splitting, dependency handling, and boundary design to build maintainable systems.

Clean ArchitectureProgramming ParadigmsSoftware Architecture
0 likes · 21 min read
Key Architecture Principles from Clean Architecture Explained
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Dec 3, 2019 · Backend Development

Software Architect Role: Responsibilities, Required Skills, and Learning Resources

This guide outlines the duties of a software architect, the essential technical and soft‑skill competencies required, a detailed technology stack covering collections, frameworks, security, JVM, concurrency, databases, big data, and distributed systems, and provides a curated learning‑material package for aspiring architects.

Learning ResourcesSoftware ArchitectureSystem Design
0 likes · 8 min read
Software Architect Role: Responsibilities, Required Skills, and Learning Resources
Selected Java Interview Questions
Selected Java Interview Questions
Nov 24, 2019 · Fundamentals

Introduction to the Singleton Design Pattern

The Singleton pattern ensures a class has only one instance, providing a global point of access, and is explained with its definition, implementation steps, advantages, disadvantages, thread‑safety concerns, usage guidelines, and typical real‑world scenarios such as configuration management, logging, and resource pooling.

SingletonSoftware Architecturedesign-pattern
0 likes · 9 min read
Introduction to the Singleton Design Pattern
21CTO
21CTO
Nov 16, 2019 · Fundamentals

Why Strategic Design, Not Just Tactical, Is the True Heart of DDD

In this article, Meituan‑Dianping expert Mu Zongyan’s GIAC conference talk highlights that while Domain‑Driven Design has become popular with microservices, its true power lies in strategic design rather than rigid tactical patterns, urging architects to focus on broader business contexts.

DDDDomain-Driven DesignSoftware Architecture
0 likes · 4 min read
Why Strategic Design, Not Just Tactical, Is the True Heart of DDD
macrozheng
macrozheng
Nov 12, 2019 · R&D Management

Why Modern Companies Need a “Middle Platform” to Accelerate Innovation

The article explains how traditional front‑end/back‑end structures limit agility, introduces the concept of a middle platform (中台) that centralizes common services, showcases successful examples like SuperCell, Alibaba and Huawei, and outlines when and how organizations should adopt such a platform.

Game DevelopmentPlatform EngineeringSoftware Architecture
0 likes · 7 min read
Why Modern Companies Need a “Middle Platform” to Accelerate Innovation
Architecture Digest
Architecture Digest
Nov 4, 2019 · Fundamentals

From Chaotic Code to Structured Architecture: Reflections on Software Planning and Domain‑Driven Design

The article reflects on the parallels between urban planning and software design, critiques the pitfalls of unplanned legacy systems, outlines a typical three‑layer development workflow, and introduces domain‑driven design concepts as a disciplined approach to building maintainable backend architectures.

Domain-Driven DesignSoftware Architecturedatabase modeling
0 likes · 12 min read
From Chaotic Code to Structured Architecture: Reflections on Software Planning and Domain‑Driven Design
Architecture Digest
Architecture Digest
Nov 1, 2019 · Fundamentals

Reflections on Transaction System Design: Principles, Patterns, and Evolution

This article reflects on the redesign of a large‑scale transaction system, describing a decision‑making routine that starts from purpose and goals, discusses programming paradigms, SOLID principles, domain‑driven design, bounded contexts, component splitting, layering, and the trade‑offs of patterns such as State and CQRS to achieve a flexible, maintainable backend architecture.

Design PatternsDomain-Driven DesignSOLID
0 likes · 21 min read
Reflections on Transaction System Design: Principles, Patterns, and Evolution
21CTO
21CTO
Oct 24, 2019 · R&D Management

How Alibaba Scales R&D Efficiency for 50,000 Engineers: Key Practices and Insights

This article outlines Alibaba’s approach to scaling R&D efficiency across its 50,000‑engineer workforce, detailing the challenges of large‑scale development, agile and DevOps practices, value‑focused delivery, and systematic tools that enable sustained high‑quality software production.

AgileR&D ManagementSoftware Architecture
0 likes · 8 min read
How Alibaba Scales R&D Efficiency for 50,000 Engineers: Key Practices and Insights
Sohu Tech Products
Sohu Tech Products
Oct 17, 2019 · Fundamentals

Software Architecture Is Overrated: Practical Design Practices from Large‑Scale Tech Companies

The article argues that simple, term‑free design processes—focused on business problems, whiteboard brainstorming, concise documentation, and iterative feedback—outperform formal architecture tools, patterns, and dedicated architects in large‑scale systems like Uber, emphasizing engineering culture over rigid methodologies.

Best PracticesEngineering CultureSoftware Architecture
0 likes · 12 min read
Software Architecture Is Overrated: Practical Design Practices from Large‑Scale Tech Companies
Architects' Tech Alliance
Architects' Tech Alliance
Oct 17, 2019 · Backend Development

Java Developer Career Path: From Beginner to Architect

This article outlines the "golden five years" concept for Java programmers, offering stage‑by‑stage advice—from mastering fundamentals and design patterns to exploring distributed systems and boosting professional influence—culminating in a roadmap toward becoming a Java architect.

Software Architecturebackendcareer development
0 likes · 5 min read
Java Developer Career Path: From Beginner to Architect
Programmer DD
Programmer DD
Oct 15, 2019 · R&D Management

How Conway’s Law Shapes Your System Architecture and Team Structure

This article explains Conway’s Law and its four principles, showing how an organization’s communication patterns dictate system design, affect microservice adoption, agile practices, and the need for political navigation in large‑scale software architecture.

Conway's LawMicroservicesSoftware Architecture
0 likes · 7 min read
How Conway’s Law Shapes Your System Architecture and Team Structure
Senior Brother's Insights
Senior Brother's Insights
Oct 10, 2019 · Fundamentals

Why Your System Mirrors Your Organization: Unpacking Conway’s Law

The article explains Conway’s Law and its four derived principles, showing how communication structures shape system design, why small teams reduce complexity, how agile and micro‑service approaches address time and scalability constraints, and why architecture decisions are inherently political.

Conway's LawMicroservicesSoftware Architecture
0 likes · 9 min read
Why Your System Mirrors Your Organization: Unpacking Conway’s Law
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Sep 30, 2019 · Fundamentals

Why Simple, Terminology‑Free Design Beats Complex Architecture Patterns

The article explains how leading tech companies like Uber and Skype design massive systems using simple, informal diagrams and collaborative documentation instead of formal architecture tools or dedicated architects, emphasizing simplicity, team autonomy, and practical trade‑offs over rigid patterns.

Engineering CultureSoftware ArchitectureSystem Design
0 likes · 13 min read
Why Simple, Terminology‑Free Design Beats Complex Architecture Patterns
Alibaba Cloud Developer
Alibaba Cloud Developer
Sep 30, 2019 · Fundamentals

How to Design Robust Service‑Oriented Architecture and Tame Legacy Code

This article explains the distinction between software design and architecture, outlines core principles for building service‑oriented systems, provides a step‑by‑step method for creating new services, and shares practical strategies for refactoring and migrating legacy code without creating future technical debt.

Legacy CodeNBF frameworkSoftware Architecture
0 likes · 8 min read
How to Design Robust Service‑Oriented Architecture and Tame Legacy Code
dbaplus Community
dbaplus Community
Sep 26, 2019 · Product Management

What Lessons Do We Learn From a Year of Building an Education Middle Platform?

This article recounts a product manager’s year‑long journey creating an education‑focused middle platform, detailing the initial challenges, design principles, technical architecture, organizational hurdles, value‑quantification methods, and the broader strategic insights gained from the experience.

Education TechnologyOrganizational StrategyProduct Management
0 likes · 31 min read
What Lessons Do We Learn From a Year of Building an Education Middle Platform?