Tagged articles

System Design

761 articles · Page 6 of 8
21CTO
21CTO
Jan 30, 2021 · R&D Management

What Makes a Great System Architect? Lessons from Alibaba’s Business Platform

Drawing on years at Alibaba, the author shares insights on top‑level design, physical and application architecture, the evolving role of architects, and the essential skills—problem discovery, definition, solution, communication, breadth, and continuous learning—required to tackle complex, global system challenges.

Software EngineeringSystem Designarchitecture
0 likes · 14 min read
What Makes a Great System Architect? Lessons from Alibaba’s Business Platform
ITPUB
ITPUB
Jan 19, 2021 · Backend Development

How to Build a Scalable Marketing Automation Engine with FSM and Real‑Time Controls

This article explains the full design of a marketing automation system—from requirement analysis and essential capabilities to a four‑layer architecture, FSM‑based engine model, execution strategies, and key modules such as state control, time control, event rule processing, action execution, monitoring, exception handling, and data warehousing—providing a practical blueprint for developers.

Finite State MachineMarketing AutomationSystem Design
0 likes · 11 min read
How to Build a Scalable Marketing Automation Engine with FSM and Real‑Time Controls
Code Ape Tech Column
Code Ape Tech Column
Jan 13, 2021 · Fundamentals

How to Craft Clear Architecture Diagrams with the C4 Model

This article explains the fundamentals of software architecture diagrams, outlines the purpose and classification of different diagram types, describes common pitfalls, and provides a step‑by‑step guide to using the C4 model—including system context, container, component, and class diagrams—plus a real‑world case study.

C4 modelSystem Designarchitecture
0 likes · 11 min read
How to Craft Clear Architecture Diagrams with the C4 Model
Architects Research Society
Architects Research Society
Dec 30, 2020 · Fundamentals

Key Challenges in Designing Distributed Systems

Designing a distributed system involves overcoming major challenges such as heterogeneity, transparency, openness, concurrency, security, scalability, and fault tolerance, each requiring careful consideration of hardware, software, network, and management aspects to build robust, scalable, and secure architectures.

Fault ToleranceSystem Designdistributed systems
0 likes · 9 min read
Key Challenges in Designing Distributed Systems
Code Ape Tech Column
Code Ape Tech Column
Dec 23, 2020 · Fundamentals

Technical Concepts Illustrated Through Relationship Analogies

The article humorously maps various relationship scenarios to core IT concepts such as backup strategies, high‑availability mechanisms, scaling methods, security measures, cloud services, and big‑data techniques, providing an engaging overview of fundamental system design principles.

BackupBig DataCloud Computing
0 likes · 8 min read
Technical Concepts Illustrated Through Relationship Analogies
Qunar Tech Salon
Qunar Tech Salon
Dec 9, 2020 · Backend Development

Improving L‑D Stage Smoothness and Refactoring the Rebuild System for International Hotel Pricing

This article details how the L‑D stage of international hotel pricing was optimized through a new offline‑fetch scheduling mechanism, cache‑freshness calculations, and a comprehensive refactor of the rebuild system, resulting in lower latency, higher throughput, and a smoother user experience.

SchedulingSystem Designbackend
0 likes · 11 min read
Improving L‑D Stage Smoothness and Refactoring the Rebuild System for International Hotel Pricing
IT Architects Alliance
IT Architects Alliance
Dec 2, 2020 · Operations

Understanding High Availability: Sources of Complexity and Decision Strategies

The article explains high availability as a source of system complexity, describing how redundancy, hardware and software failures, external disasters, and state‑decision mechanisms such as dictatorial, negotiated, and democratic approaches affect both compute and storage layers, and discusses trade‑offs like the CAP theorem.

CAP theoremHigh AvailabilitySystem Design
0 likes · 12 min read
Understanding High Availability: Sources of Complexity and Decision Strategies
Selected Java Interview Questions
Selected Java Interview Questions
Dec 2, 2020 · Backend Development

Designing a High‑Concurrency Flash Sale (Seckill) System: Architecture, Principles, and Optimization

This article explains how to design a flash‑sale (seckill) system that handles massive concurrent reads and writes by applying principles such as minimizing data and request volume, shortening request paths, eliminating single points of failure, and employing layered caching, traffic shaping, and robust high‑availability strategies.

Flash SaleSystem Designjava
0 likes · 44 min read
Designing a High‑Concurrency Flash Sale (Seckill) System: Architecture, Principles, and Optimization
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Dec 1, 2020 · Backend Development

Mastering Cache: Core Concepts, Pitfalls, and Patterns for Scalable Systems

Cache leverages the space‑time trade‑off to boost performance, but introduces complexity; this guide explains its fundamental idea, local vs distributed solutions, popular Java caching libraries, and key read/write patterns such as Cache‑Aside, Read‑Through, and Write‑Behind, highlighting benefits, drawbacks, and best‑practice considerations.

System Designcache patternscaching
0 likes · 13 min read
Mastering Cache: Core Concepts, Pitfalls, and Patterns for Scalable Systems
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Nov 28, 2020 · Fundamentals

What 19 Core Topics Every Software Architect Must Master

This article outlines a comprehensive knowledge framework for software architects, covering nineteen essential areas such as responsibilities, foundational concepts, internet system challenges, distributed caching, messaging, load balancing, performance testing, operating systems, algorithms, networking, database design, JVM internals, flash-sale systems, microservices, domain‑driven design, security, high‑availability, big data, and blockchain.

Big DataMicroservicesSystem Design
0 likes · 6 min read
What 19 Core Topics Every Software Architect Must Master
IT Architects Alliance
IT Architects Alliance
Nov 27, 2020 · R&D Management

Why Do We Really Need Software Architecture? Uncovering the True Purpose

This article examines common misconceptions about software architecture, explains that its core purpose is to manage system complexity, offers practical guidance for identifying complexity hotspots, and presents a concrete university student‑management system case study to illustrate effective architectural decision‑making.

Design PrinciplesR&DSystem Design
0 likes · 11 min read
Why Do We Really Need Software Architecture? Uncovering the True Purpose
Top Architect
Top Architect
Nov 27, 2020 · Fundamentals

Common Software Architecture Patterns and Their Applications

This article introduces ten widely used software architecture patterns—including layered, client‑server, master‑slave, pipe‑filter, broker, P2P, blackboard, interpreter, and MVC—explaining their structures, typical use cases, advantages, and disadvantages, and provides a comparative table to help developers select the most suitable pattern for enterprise‑level system design.

System Designarchitecture patternssoftware architecture
0 likes · 11 min read
Common Software Architecture Patterns and Their Applications
Selected Java Interview Questions
Selected Java Interview Questions
Nov 8, 2020 · Backend Development

Designing a Scalable Feed Stream System Architecture

This article explains the principles, data models, storage choices, synchronization strategies, metadata handling, and scaling considerations for building a high‑performance feed‑stream system that can support millions to billions of users, with practical guidance on using NoSQL or relational databases.

NoSQLSystem DesignTablestore
0 likes · 21 min read
Designing a Scalable Feed Stream System Architecture
Architecture Digest
Architecture Digest
Nov 1, 2020 · Backend Development

Design and Technical Challenges of High‑Concurrency Flash Sale (Seckill) Systems

The article analyzes flash‑sale (秒杀) business characteristics, outlines the technical challenges of massive concurrent requests, and presents architectural principles, backend design, database strategies, concurrency control, anti‑cheat measures, and practical code examples to build a reliable high‑throughput system.

Flash SaleSystem Designbackend
0 likes · 31 min read
Design and Technical Challenges of High‑Concurrency Flash Sale (Seckill) Systems
NetEase Yanxuan Technology Product Team
NetEase Yanxuan Technology Product Team
Oct 28, 2020 · Product Management

Three General Principles for B2B Product Design: A Case Study from NetEase Yanxuan

Drawing from NetEase Yanxuan’s experience, the article outlines three universal B2B design principles: define clear system boundaries and ownership, enforce order through universal interaction rules as scale grows, and prioritize abstract rule‑based capabilities over mere process digitization to create scalable, adaptable solutions.

B2B productsNetEase YanxuanSystem Design
0 likes · 9 min read
Three General Principles for B2B Product Design: A Case Study from NetEase Yanxuan
IT Architects Alliance
IT Architects Alliance
Oct 26, 2020 · R&D Management

What Skills Do You Need to Become a Great Software Architect?

This comprehensive guide outlines the philosophical mindset, core competencies, technical knowledge, architectural principles, and essential tools that aspiring software architects should master to build robust, scalable, and secure systems in modern IT environments.

Cloud ComputingDevOpsSkill Development
0 likes · 14 min read
What Skills Do You Need to Become a Great Software Architect?
IT Architects Alliance
IT Architects Alliance
Oct 25, 2020 · R&D Management

What Skills Make a Software Architect the Driving Force Behind a Company?

The article outlines the essential competencies—technical mastery, business understanding, design foresight, depth and breadth of knowledge, communication, and systematic thinking—that a software architect must develop to effectively lead and deliver complex projects within an organization.

R&D ManagementSkill DevelopmentSystem Design
0 likes · 15 min read
What Skills Make a Software Architect the Driving Force Behind a Company?
IT Architects Alliance
IT Architects Alliance
Oct 22, 2020 · Fundamentals

15 Universal Software Architecture Principles and Key Design Guidelines

The article presents a comprehensive set of fifteen universal software architecture principles—ranging from redundancy and rollback to automation and non‑intrusive design—along with essential design guidelines such as separation of concerns, single responsibility, and low coupling to help architects build scalable, reliable, and maintainable systems.

Design PrinciplesSystem Designbest practices
0 likes · 12 min read
15 Universal Software Architecture Principles and Key Design Guidelines
dbaplus Community
dbaplus Community
Oct 22, 2020 · Operations

Choosing the Right Open‑Source Monitoring System: Zabbix, Open‑Falcon, and Prometheus Compared

This article systematically explains monitoring fundamentals, the seven core functions of a monitoring system, proper usage practices, common monitoring objects and metrics, the basic data flow, and provides detailed comparisons of three popular open‑source solutions—Zabbix, Open‑Falcon, and Prometheus—to guide informed selection decisions.

MonitoringOpen-FalconOperations
0 likes · 20 min read
Choosing the Right Open‑Source Monitoring System: Zabbix, Open‑Falcon, and Prometheus Compared
IT Architects Alliance
IT Architects Alliance
Oct 21, 2020 · R&D Management

Turning Requirements into Effective Architecture Designs: A Practical Guide

This article explains how to conduct thorough requirement analysis, classify and prioritize needs, and translate them into solid software architecture decisions, highlighting demand capture, functional, quality, and constraint considerations, as well as practical steps for prioritization and implementation.

R&D ManagementRequirement AnalysisSystem Design
0 likes · 6 min read
Turning Requirements into Effective Architecture Designs: A Practical Guide
Top Architect
Top Architect
Oct 19, 2020 · Fundamentals

Common Software Architecture Patterns and Their Comparisons

This article introduces ten widely used software architecture patterns, explains their purposes, advantages, disadvantages, and typical application scenarios, and provides a comparative table to help developers choose the most suitable architecture for large‑scale enterprise systems.

MVCSystem Designbroker pattern
0 likes · 11 min read
Common Software Architecture Patterns and Their Comparisons
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Oct 16, 2020 · Fundamentals

Why the 4+1 View Model Transforms Software Architecture Design

This article explains the 4+1 view model for software architecture, detailing its logical, process, development, and physical views, how scenarios tie them together, and why using multiple concurrent views improves design, documentation, and risk management in large‑scale systems.

4+1 view modelSystem Designarchitectural views
0 likes · 25 min read
Why the 4+1 View Model Transforms Software Architecture Design
Open Source Linux
Open Source Linux
Oct 12, 2020 · Fundamentals

What Is Software Architecture? Core Concepts, Layers, and Evolution Explained

This comprehensive guide explains the essence of software architecture, clarifies related concepts such as systems, modules, and frameworks, and details various architectural layers, classifications, evolution paths, and best‑practice considerations for building robust, scalable systems.

MicroservicesSystem Designapplication architecture
0 likes · 22 min read
What Is Software Architecture? Core Concepts, Layers, and Evolution Explained
Programmer DD
Programmer DD
Oct 11, 2020 · Backend Development

Designing Scalable Feed Stream Systems: Architecture, Storage, and Sync Strategies

This article explains how to design a high‑performance feed‑stream system—covering product definition, data categories, storage options, synchronization modes, metadata handling, commenting, likes, search, sorting, deletion, and update—so you can build a solution that scales to millions or billions of users.

Backend ArchitectureScalableSystem Design
0 likes · 21 min read
Designing Scalable Feed Stream Systems: Architecture, Storage, and Sync Strategies
IT Architects Alliance
IT Architects Alliance
Oct 8, 2020 · Fundamentals

Understanding Software Architecture: Core Concepts, Layers, and Evolution

This comprehensive guide explains what software architecture is, distinguishes systems, subsystems, modules, components, and frameworks, outlines architecture layers and classifications, describes strategic versus tactical design, tracks the evolution from monoliths to micro‑services, and highlights how to evaluate and avoid common architectural pitfalls.

MicroservicesSystem Designarchitecture patterns
0 likes · 25 min read
Understanding Software Architecture: Core Concepts, Layers, and Evolution
Architects' Tech Alliance
Architects' Tech Alliance
Oct 7, 2020 · Fundamentals

Understanding Software Architecture: Concepts, Layers, Types, Evolution, and Common Pitfalls

This article explains the fundamental concepts of software architecture, distinguishes systems, subsystems, modules and components, describes various architectural layers such as business, application, data, code, technical and deployment, outlines evolution from monoliths to micro‑services, and highlights common misconceptions and measurement criteria for a sound architecture.

MicroservicesSystem Designarchitecture patterns
0 likes · 29 min read
Understanding Software Architecture: Concepts, Layers, Types, Evolution, and Common Pitfalls
Alibaba Cloud Native
Alibaba Cloud Native
Oct 6, 2020 · Fundamentals

Mastering System Design: From Core Concepts to Practical Architecture

This comprehensive guide walks you through the fundamentals of system design, covering core concepts, analytical thinking, modeling techniques, architecture classification, design tools, and best‑practice principles to help you build robust, scalable software systems.

Domain-Driven DesignModelingSoftware Engineering
0 likes · 46 min read
Mastering System Design: From Core Concepts to Practical Architecture
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Oct 5, 2020 · Backend Development

When Microservices Fail: 5 Scenarios to Avoid Their Use

Microservices aren’t a universal solution; this article outlines five common situations—insufficient complexity, small teams, indivisible applications, legacy system integration, and tight real‑time integration—where adopting a microservice architecture can add unnecessary overhead and risk, advising developers to choose the right architecture for their needs.

MicroservicesSystem Designlegacy integration
0 likes · 6 min read
When Microservices Fail: 5 Scenarios to Avoid Their Use
Tencent Cloud Developer
Tencent Cloud Developer
Oct 1, 2020 · Cloud Computing

Evolution of Architecture and High‑Availability Design: Insights from Tencent Cloud Experts

In a Cloud+ community salon, three Tencent Cloud senior engineers dissect the three‑stage evolution of software architecture—from monolithic to distributed to AI‑driven—share the iterative design of Tencent Cloud Disk, outline request‑centric high‑availability metrics, advise systematic project takeover, and stress hands‑on learning, proactive incident response, and future‑ready practices while inviting talent to join.

High AvailabilitySoftware EngineeringSystem Design
0 likes · 32 min read
Evolution of Architecture and High‑Availability Design: Insights from Tencent Cloud Experts
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Sep 22, 2020 · Operations

How to Build Highly Available, Scalable, and Resilient Systems

This article explains the principles and practical techniques for achieving high availability, scalability, isolation, decoupling, rate limiting, degradation, and circuit breaking in modern software systems, providing concrete examples, algorithms, and deployment patterns to improve reliability and performance.

High AvailabilitySystem Designcircuit breaker
0 likes · 18 min read
How to Build Highly Available, Scalable, and Resilient Systems
Huawei Cloud Developer Alliance
Huawei Cloud Developer Alliance
Sep 17, 2020 · Fundamentals

Why Distributed Systems Matter: Core Concepts, Design Trade‑offs & CAP

This article explores the fundamentals of distributed systems, explaining what they are, why they’re used, design considerations such as replication and partitioning, the implications of the CAP theorem, common distribution strategies, typical architectural patterns, and the advantages and challenges of building and operating such systems.

CAP theoremShardingSystem Design
0 likes · 14 min read
Why Distributed Systems Matter: Core Concepts, Design Trade‑offs & CAP
IT Architects Alliance
IT Architects Alliance
Sep 3, 2020 · Fundamentals

Understanding Software Architecture: Concepts, Layers, and Evolution

This article explains the fundamental concepts of software architecture, including definitions of systems, modules, frameworks, various architectural layers such as business, application, data, code, technical and deployment, and discusses the evolution from monolithic to distributed and microservice architectures along with evaluation criteria and common pitfalls.

MicroservicesSystem Designapplication layers
0 likes · 20 min read
Understanding Software Architecture: Concepts, Layers, and Evolution
Architects' Tech Alliance
Architects' Tech Alliance
Sep 2, 2020 · Fundamentals

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

This article explains the fundamental concepts of software architecture, distinguishes system, subsystem, module, component, and framework, outlines architectural layers and classifications, describes the evolution from monolithic to distributed and micro‑service architectures, and discusses how to evaluate and avoid common design pitfalls.

MicroservicesSystem Designarchitecture principles
0 likes · 18 min read
Understanding Software Architecture: Concepts, Layers, Classifications, and Evolution
Java Architect Essentials
Java Architect Essentials
Sep 2, 2020 · Backend Development

Designing a High-Concurrency Flash Sale (Seckill) System: Architecture, Challenges, and Solutions

This article presents a comprehensive design of a flash‑sale system, covering business scenario analysis, high‑concurrency problems such as overselling and malicious requests, and detailed front‑end, Nginx, risk‑control, back‑end, database, and distributed‑transaction solutions to ensure reliability and performance.

Flash SaleRedisSystem Design
0 likes · 16 min read
Designing a High-Concurrency Flash Sale (Seckill) System: Architecture, Challenges, and Solutions
Architect
Architect
Aug 31, 2020 · Fundamentals

Software Architecture Design: Modeling with UML and Key Design Practices

This article explains how software architects can use UML‑based modeling and a series of design documents to capture domain problems and system solutions, communicate functional and non‑functional requirements, and guide development across requirement analysis, architectural design, and detailed implementation.

System DesignUMLdesign documentation
0 likes · 14 min read
Software Architecture Design: Modeling with UML and Key Design Practices
58 Tech
58 Tech
Aug 21, 2020 · Backend Development

Design and Optimization Practices of the Advertising Transmission Channel at LEGO Platform

This article systematically introduces the advertising transmission process, outlines challenges of scale and stability, and presents a comprehensive set of architectural, operational, and performance optimizations—including primary‑backup high availability, stateless incremental processing, message reliability, flow tiering, indexing sharding, and schedule management—to achieve high‑throughput, low‑latency, and eventually consistent ad delivery.

AdvertisingData ConsistencySystem Design
0 likes · 8 min read
Design and Optimization Practices of the Advertising Transmission Channel at LEGO Platform
Youku Technology
Youku Technology
Aug 18, 2020 · Backend Development

How Youku Engineered a High‑Performance, Low‑Latency Marketing Platform

This article details Youku's membership marketing system architecture, covering complex marketing scenarios, high‑availability and low‑latency requirements, rule‑based QL engine, unified marketing framework, multi‑cache storage, multithreaded matching, asynchronous reward distribution, and distributed transaction mechanisms.

High AvailabilitySystem Designbackend
0 likes · 12 min read
How Youku Engineered a High‑Performance, Low‑Latency Marketing Platform
21CTO
21CTO
Aug 12, 2020 · Backend Development

How to Build a High‑Performance Distributed Unique ID Generator with MySQL and Redis

This article explains the challenges of generating globally unique IDs in sharded databases, compares common solutions such as auto‑increment, UUID, Snowflake, and Redis, and presents a practical MySQL‑based design that uses table‑level auto‑increment combined with in‑memory segment allocation to achieve high concurrency, reliability, and performance.

RedisSystem Designdistributed ID
0 likes · 9 min read
How to Build a High‑Performance Distributed Unique ID Generator with MySQL and Redis
Xianyu Technology
Xianyu Technology
Aug 11, 2020 · Backend Development

Tellus: A User‑and‑Item Task System for Xianyu’s Light Publishing

Tellus, a user‑and‑item task system for Xianyu’s lightweight publishing, guides sellers to complete missing item details or adjust prices by decoupling task creation via MetaQ, storing billions of records in Table Store, and offering configurable, template‑based tasks that have doubled completion rates and accelerated feature rollout.

AlibabaNoSQLSystem Design
0 likes · 9 min read
Tellus: A User‑and‑Item Task System for Xianyu’s Light Publishing
Programmer DD
Programmer DD
Aug 2, 2020 · Backend Development

How to Solve Session Sharing and Cache Issues in Distributed Systems

This article explains how to handle session sharing in distributed systems through replication, sticky sessions, or a dedicated session server, and addresses cache penetration and avalanche issues with practical mitigation techniques such as request filtering, empty-object caching, hash repositories, Redis clustering, staggered expirations, and concurrency controls.

System Designbackend developmentdistributed systems
0 likes · 6 min read
How to Solve Session Sharing and Cache Issues in Distributed Systems
Programmer DD
Programmer DD
Jul 31, 2020 · Fundamentals

What Is Distributed Architecture and Why It Powers Modern Systems

This article explains the concept of distributed architecture, its evolution from monolithic systems, core design principles, common challenges such as network latency and data consistency, and how major tech companies adopt it to achieve high availability, scalability, and fault tolerance.

Fault ToleranceSystem Design
0 likes · 11 min read
What Is Distributed Architecture and Why It Powers Modern Systems
Programmer DD
Programmer DD
Jul 28, 2020 · Fundamentals

What Makes Distributed Architecture Essential for Modern Systems?

Distributed architecture, built on distributed computing technologies like J2EE, transforms monolithic systems into multi‑layer, fault‑tolerant platforms by decoupling services, ensuring high availability, scalability, and resilience, while addressing challenges such as network latency, data consistency, and system complexity, as illustrated by real‑world case studies.

Case studyFault ToleranceSystem Design
0 likes · 11 min read
What Makes Distributed Architecture Essential for Modern Systems?
JavaEdge
JavaEdge
Jul 24, 2020 · Backend Development

Designing High‑Concurrency Systems: Key Strategies Interviewers Expect

This guide explains practical techniques—service splitting, caching, message queues, database sharding, read/write separation, and Elasticsearch—to design high‑concurrency back‑end systems that impress interviewers and handle real‑world traffic spikes.

Message QueueMicroservicesSystem Design
0 likes · 6 min read
Designing High‑Concurrency Systems: Key Strategies Interviewers Expect
Swan Home Tech Team
Swan Home Tech Team
Jul 20, 2020 · Backend Development

Design and Evolution of a Reconciliation Center: From Version 1.0 to 3.0

This article introduces the concept, core capabilities, and architectural evolution of a reconciliation center—from its initial 1.0 design through 2.0 and 3.0 upgrades—highlighting problem statements, solution approaches, and the applicable scenarios that make it essential for large‑scale data consistency in modern micro‑service systems.

OperationsReconciliationSystem Design
0 likes · 14 min read
Design and Evolution of a Reconciliation Center: From Version 1.0 to 3.0
HaoDF Tech Team
HaoDF Tech Team
Jul 8, 2020 · Operations

How We Rebuilt Our Monitoring System into a Scalable Alert Service

After two months of intensive development, the team launched a new monitoring and alerting platform that transforms a legacy system into a service‑oriented solution, addressing pain points such as inflexible escalation, noisy alerts, and poor ownership while introducing phone alerts, automated escalation, Prometheus integration, and a unified rule engine.

AutomationDevOpsMonitoring
0 likes · 16 min read
How We Rebuilt Our Monitoring System into a Scalable Alert Service
Beike Product & Technology
Beike Product & Technology
Jul 2, 2020 · Mobile Development

How the Haishen Platform Detects and Resolves iOS Crashes in Real Time

This article explains the design and implementation of the Haishen crash monitoring platform for iOS, covering its system architecture, data collection, parsing, aggregation, routing, SDK features, exception handling, stack capture, startup crash detection, and upload mechanisms to quickly expose, locate, and fix crashes.

Crash MonitoringException HandlingSystem Design
0 likes · 17 min read
How the Haishen Platform Detects and Resolves iOS Crashes in Real Time
macrozheng
macrozheng
Jun 29, 2020 · Fundamentals

What to Expect in Google’s Engineering Interview: A Step‑by‑Step Guide

The article walks through a candidate’s full Google engineering interview experience—including recruiter screening, phone coding rounds, onsite technical sessions, system‑design challenges, and interview logistics—while offering practical tips and resources to help future applicants prepare effectively.

Google interviewSoftware EngineeringSystem Design
0 likes · 11 min read
What to Expect in Google’s Engineering Interview: A Step‑by‑Step Guide
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.

ModelingSystem Designabstraction
0 likes · 28 min read
Mastering Architecture Diagrams: Why, What, and How to Create Effective Designs
JD Retail Technology
JD Retail Technology
Jun 10, 2020 · Operations

Logistics R&D Preparation for the 618 Promotion: System Readiness, Stress Testing, and Real‑Time Monitoring

The logistics R&D team spent 62 days preparing for the 618 promotion by analyzing core processes, applying stress tests, implementing fault‑tolerant architectures, planning capacity, and deploying real‑time monitoring tools to ensure system stability and performance under peak traffic.

MonitoringOperationsPerformance Testing
0 likes · 7 min read
Logistics R&D Preparation for the 618 Promotion: System Readiness, Stress Testing, and Real‑Time Monitoring
Top Architect
Top Architect
Jun 10, 2020 · Fundamentals

A Comprehensive Guide to Learning Distributed Systems

This article provides a thorough overview of distributed systems, explaining their definition, core challenges, key characteristics, essential components, common protocols, and practical implementations to help readers build a solid, structured learning path for mastering distributed architectures.

Fault ToleranceSystem Designdistributed systems
0 likes · 16 min read
A Comprehensive Guide to Learning Distributed Systems
Programmer DD
Programmer DD
Jun 4, 2020 · Backend Development

How Meituan Built a Scalable Rule Engine to Boost Efficiency

This article examines Meituan's evolution from hard‑coded validation to a custom rule‑engine framework, detailing case studies of store information checks, audit workflows, and performance metric calculations, and explains the design of the Maze framework that separates business logic from system code while improving maintainability and scalability.

System Designbackend developmentperformance optimization
0 likes · 21 min read
How Meituan Built a Scalable Rule Engine to Boost Efficiency
Top Architect
Top Architect
Apr 28, 2020 · Operations

Evolution of System Architecture: From Single‑Machine to Distributed Designs

The article outlines the historical evolution of IT architecture—from early single‑machine deployments through hot‑standby and multi‑node active clusters to modern distributed systems—explaining the motivations, trade‑offs, and key technologies that drive each generation and offering guidance on selecting the right architecture for business needs.

DatabaseSystem Designdistributed systems
0 likes · 8 min read
Evolution of System Architecture: From Single‑Machine to Distributed Designs
Programmer DD
Programmer DD
Apr 20, 2020 · Fundamentals

Master Google Interview Prep: The Ultimate Roadmap from an AWS Expert

This article presents John Washam's comprehensive, now Chinese‑translated guide covering programming language choices, hardware basics, algorithm and data‑structure fundamentals, flashcard study methods, interview résumé tips, common Google interview questions, and additional efficiency tools, all aimed at helping engineers prepare for Google interviews.

AlgorithmsGoogle interviewSoftware Engineering
0 likes · 6 min read
Master Google Interview Prep: The Ultimate Roadmap from an AWS Expert
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 modelSystem Designarchitecture visualization
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.

System Designarchitecture patternssoftware architecture
0 likes · 29 min read
Understanding Software Architecture: Concepts, Layers, Classifications, and Evolution
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 modelSystem Designarchitecture diagrams
0 likes · 10 min read
How to Create Effective Software Architecture Diagrams: Concepts, Types, and Best Practices
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 modelSystem Designarchitecture diagrams
0 likes · 11 min read
How to Design Clear Architecture Diagrams: A Practical Guide for Engineers
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.

MicroservicesSystem Designdistributed systems
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

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.

Design PrinciplesFault ToleranceMicroservices
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.

System Designarchitecturemodel thinking
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.

MicroservicesSystem Designdistributed systems
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.

System Designscalabilitysecurity
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.

System DesignTechnical Architecturearchitecture layers
0 likes · 12 min read
What Is Software Architecture? Core Concepts, Layers, and Design Principles
JD Tech Talk
JD Tech Talk
Mar 19, 2020 · Backend Development

How Systems Empower Business Growth: Account Acquisition, Fast Business Models, and Robust System Design

The article examines how financial platforms can acquire user accounts, design fast‑perceived business experiences through account mapping, capital advances, and cross‑account interoperability, and build stable, high‑performance backend and transaction systems that balance compliance, user experience, and operational costs.

Data ConsistencySystem Designaccounting
0 likes · 22 min read
How Systems Empower Business Growth: Account Acquisition, Fast Business Models, and Robust System Design
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 modelSystem Designdiagramming
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.

System DesignTechnical Architectureapplication architecture
0 likes · 26 min read
What Really Defines Software Architecture? Concepts, Layers, and Evolution Explained
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Mar 10, 2020 · Backend Development

Comprehensive Strategies for Designing High‑Concurrency Systems

The article outlines five key layers—front‑end optimization, middle‑layer load distribution, gateway control, service‑layer improvements, and database tuning—detailing practical techniques such as static resource caching, Nginx load‑balancing methods, request rate limiting, message‑queue buffering, and extensive MySQL best‑practice guidelines to build robust high‑concurrency architectures.

Load BalancingSystem Designbackend optimization
0 likes · 7 min read
Comprehensive Strategies for Designing High‑Concurrency Systems
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.

System Designbackend developmentcareer progression
0 likes · 12 min read
Differences Between Software Architects and Senior Developers: Path to Becoming an Architect
Top Architect
Top Architect
Feb 10, 2020 · Backend Development

Design and Optimization of High‑Concurrency Flash‑Sale (秒杀) Systems

This article explains how to design a high‑performance, highly available flash‑sale system by applying dynamic/static separation, hotspot optimization, inventory reduction strategies, and comprehensive high‑availability engineering, covering both architectural principles and concrete implementation details.

Flash SaleSystem Designhigh concurrency
0 likes · 27 min read
Design and Optimization of High‑Concurrency Flash‑Sale (秒杀) Systems
21CTO
21CTO
Feb 6, 2020 · Fundamentals

Mastering the Role of a Software Architect: Skills, Levels, and Daily Practices

This article explores what a software architect does, defines the role, outlines three architectural levels, details daily responsibilities, and breaks down ten essential skills—including design, decision‑making, simplification, programming, and documentation—to help engineers become better architects.

Design PatternsSystem Designarchitect skills
0 likes · 14 min read
Mastering the Role of a Software Architect: Skills, Levels, and Daily Practices
Youzan Coder
Youzan Coder
Jan 8, 2020 · Cloud Native

Youzan Retail Finance Middle Platform Architecture Design and Practice

The article outlines Youzan's retail finance middle platform design, detailing the business background of complex SaaS retail, a structured analysis using layered business, application, data, and technology architectures, and a step‑by‑step implementation that emphasizes reusable domain capabilities and long‑term, standardized middle‑platform development.

Domain-Driven DesignEnterprise ArchitectureFinance System
0 likes · 20 min read
Youzan Retail Finance Middle Platform Architecture Design and Practice
MaGe Linux Operations
MaGe Linux Operations
Jan 6, 2020 · Backend Development

What I Learned From 8 Tech Interviews: From Browser Requests to System Design

The author recounts eight interview experiences across companies like Afanti, XueTang Online, Guokr, Veeva, Zhihu, Spring Rain Doctor, 360, and Toutiao, sharing detailed insights on Python fundamentals, network protocols, system design, database concepts, and personal lessons that helped secure a final offer.

Interview ExperiencePythonSystem Design
0 likes · 20 min read
What I Learned From 8 Tech Interviews: From Browser Requests to System Design
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.

System DesignUMLservice throttling
0 likes · 10 min read
Understanding the Role of Software Architects: Responsibilities, Differences from Developers, and Practical Guidance
DataFunTalk
DataFunTalk
Dec 18, 2019 · Artificial Intelligence

Long-Term User Interest Modeling for Click‑Through Rate Prediction in Alibaba’s Advertising System

This article describes Alibaba‑Mama’s research on improving click‑through rate (CTR) prediction by modeling users’ long‑term interests with incremental computation services, memory‑network architectures (MIMN and HPMN), system redesign (UIC and RTP), and extensive offline and online experiments that demonstrate significant GAUC and CTR gains.

CTRLong-Term InterestSystem Design
0 likes · 16 min read
Long-Term User Interest Modeling for Click‑Through Rate Prediction in Alibaba’s Advertising System
Amap Tech
Amap Tech
Dec 13, 2019 · Backend Development

System Refactoring: Philosophy (Dao) and Techniques (Shu)

System refactoring succeeds when the Dao—clear, measurable goals and incremental, risk‑controlled planning—guides the Shu of concrete techniques such as service‑oriented design, judicious caching, asynchronous processing, and sharding, while evaluating performance, availability, scalability, elasticity, security, and operability to balance trade‑offs.

System Designarchitectureperformance
0 likes · 13 min read
System Refactoring: Philosophy (Dao) and Techniques (Shu)
21CTO
21CTO
Dec 7, 2019 · Backend Development

Master Flash Sale Systems: Boost Performance, Ensure Consistency & High Availability

This article explains how to design a flash‑sale (秒杀) system that handles massive concurrent requests by applying dynamic‑static separation, hotspot optimization, database tuning, and traffic‑shaping techniques to achieve high performance, strong consistency, and robust high‑availability.

Flash SaleHigh AvailabilitySystem Design
0 likes · 26 min read
Master Flash Sale Systems: Boost Performance, Ensure Consistency & High Availability
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 ResourcesSystem Designcareer guide
0 likes · 8 min read
Software Architect Role: Responsibilities, Required Skills, and Learning Resources
Efficient Ops
Efficient Ops
Nov 26, 2019 · Backend Development

How to Build a High‑Performance, Consistent, and Highly Available Flash‑Sale System

This article explores the architectural design of a flash‑sale (秒杀) system, covering high‑performance techniques, consistency guarantees, high‑availability strategies, hotspot optimization, and practical implementation details such as static‑dynamic separation, caching, data integration, and database tuning.

Flash SaleHigh AvailabilitySystem Design
0 likes · 33 min read
How to Build a High‑Performance, Consistent, and Highly Available Flash‑Sale System
ITPUB
ITPUB
Nov 20, 2019 · Backend Development

How to Build a Million‑User Ticket‑Spike System with Nginx, Go, and Redis

This article explains the design of a high‑concurrency train‑ticket flash‑sale system, covering distributed load‑balancing, Nginx weighted round‑robin, local and remote stock deduction, Go implementation, Redis atomic scripts, and performance testing with ApacheBench.

GoNginxRedis
0 likes · 20 min read
How to Build a Million‑User Ticket‑Spike System with Nginx, Go, and Redis
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
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.

Design ProcessSystem DesignUber
0 likes · 12 min read
Software Architecture Is Overrated: Practical Design Practices from Large‑Scale Tech Companies
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.

Design PrinciplesSystem Designengineering culture
0 likes · 13 min read
Why Simple, Terminology‑Free Design Beats Complex Architecture Patterns
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Sep 23, 2019 · Backend Development

Mastering High-Concurrency Technical Architecture: Core Principles and Solutions

This article explains what technical architecture is, breaks down its three core components—business technical problems, technical solutions, and technical components—and then dives deep into high‑concurrency challenges, systematic thinking methods, and practical approaches such as resource scaling, stateless design, load balancing, caching, and I/O optimization.

Backend ArchitectureSystem DesignTechnical Architecture
0 likes · 12 min read
Mastering High-Concurrency Technical Architecture: Core Principles and Solutions
21CTO
21CTO
Sep 18, 2019 · Backend Development

What I Learned From My Go Backend Engineer Interview at Tencent

After six months of studying MySQL, Redis, and distributed systems, I tackled a Go backend engineer interview at Tencent, detailing the questions on networking, databases, OS concepts, system design, and my reflections on what to improve for future interviews.

NetworkingSystem Designdistributed systems
0 likes · 9 min read
What I Learned From My Go Backend Engineer Interview at Tencent