Architecture Glossary
Browse 339 architecture terms defined in plain English, from the cultural dictionary of computing.
339 Architecture Terms
- Abstract Class
- Abstract Class is a software design or object-modeling concept that shapes how code is organized. It is commonly used for maintainable application architecture...
- Abstract Factory Pattern
- Abstract Factory Pattern is a software design or object-modeling concept that shapes how code is organized. It is commonly used for maintainable application...
- Abstract Method
- Abstract Method is a software design or object-modeling concept that shapes how code is organized. It is commonly used for maintainable application...
- Adapter
- Adapter is a software design or object-modeling concept that shapes how code is organized. It is commonly used for maintainable application architecture and...
- Adapter Layer
- A small trainable module inserted into a larger pre-trained model for parameter-efficient adaptation. It influences how models are trained, evaluated, or...
- Adapter Pattern Detail
- Adapter Pattern Detail is a software design or object-modeling concept that shapes how code is organized. It is commonly used for maintainable application...
- ADR
- ADR, or Architecture Decision Record, is a lightweight document that captures an important architectural decision along with its context, the options...
- Aggregate Root
- Aggregate Root is a software design or object-modeling concept that shapes how code is organized. It is commonly used for maintainable application architecture...
- AI Agent
- An AI system that autonomously pursues goals by planning actions, executing tools (code, APIs, web browsing), observing results, and iterating. Unlike simple...
- AI Architecture
- The overall technical design of an AI system, including models, data flows, inference paths, evaluation loops, storage, orchestration, and operational...
- AI Layer
- A distinct layer in an application's architecture where AI-related logic is concentrated, such as prompting, retrieval, inference routing, or post-processing....
- AI Model Registry
- A model architecture concept tied to ai model registry and how modern AI systems represent or process information. It influences how models are trained,...
- AI Stack
- The combined set of models, data systems, tooling, APIs, orchestration, and infrastructure that make up an AI application or platform. Teams discuss the AI...
- AI System
- A complete system that uses AI as part of its behavior, including the model and the surrounding data, interfaces, controls, and operational processes. Framing...
- API Gateway Pattern
- A pattern where a single entry point (the gateway) handles cross-cutting concerns for all backend services: authentication, rate limiting, request routing,...
- Application Architecture
- The high-level structure of an application, including its major components, data flow, responsibilities, deployment boundaries, and integration points....
- Application Event
- A meaningful occurrence inside an application, such as a user action, state change, or completed workflow step, that can trigger listeners, logging, or...
- Architecture Astronaut
- A humorous or critical term for someone who spends more time inventing elaborate abstract architecture than solving concrete problems. The phrase is often used...
- Architecture Astronaut Slang
- A slang variant of architecture astronaut, referring to someone who spends more energy on abstract system design ideas than on solving concrete delivery...
- Architecture Decision
- A deliberate technical choice about structure, technologies, boundaries, or tradeoffs that has lasting impact on a system's design and evolution. Architecture...
- Architecture Diagram
- A visual representation of a system's major components, data flows, boundaries, and dependencies. Good architecture diagrams make relationships and trust...
- Architecture Document
- A written description of a system's structure, goals, constraints, major components, and rationale for key design choices. Architecture documents provide...
- Architecture Pattern
- A reusable high-level solution shape for organizing software systems, such as layered architecture, event-driven systems, or CQRS. Architecture patterns help...
- Architecture Review
- A formal evaluation of a proposed or existing system design to assess correctness, scalability, maintainability, risk, and alignment with engineering...
- Architecture Style
- A broad category of system organization such as monolithic, service-oriented, microservice, event-driven, or hexagonal architecture. Architecture style...
- Architecture Tradeoff
- A design compromise where improving one property of a system, such as scalability or simplicity, comes at the cost of another, such as latency, cost, or...
- Attack Tree
- Attack Tree is a structured threat-modeling method that breaks an attacker goal into prerequisite branches and alternative paths. Security teams use it to...
- Attention
- The core mechanism of transformer models that allows each token to dynamically attend to (weigh the importance of) every other token in the sequence....
- Attention Mechanism
- Attention Mechanism is a component in neural networks that allows a model to dynamically focus on the most relevant parts of its input when producing each...
- Attention Score
- A model architecture concept tied to attention score and how modern AI systems represent or process information. It influences how models are trained,...
- Backend Architecture
- The structural design of server-side systems, including services, databases, queues, APIs, background workers, and their interactions. Backend architecture...
- Backend for Frontend
- A pattern where each frontend client (web, mobile, TV) has its own dedicated backend service that aggregates, transforms, and tailors API responses for that...
- backpressure
- A flow control mechanism where a downstream system signals to an upstream producer to slow down because it cannot process messages fast enough. Without...
- Ball of Mud
- A disparaging term for a system with tangled structure, weak boundaries, and accumulated complexity that makes change difficult. In software design culture, a...
- Base Class
- Base Class is a software design or object-modeling concept that shapes how code is organized. It is commonly used for maintainable application architecture and...
- Bidirectional Encoder
- A model architecture concept tied to bidirectional encoder and how modern AI systems represent or process information. It influences how models are trained,...
- Big Ball of Mud
- A system with tangled structure, weak boundaries, and accumulated complexity that makes changes unpredictable and costly. In software culture the phrase is a...
- blast radius
- The scope of impact when a failure, misconfiguration, or security breach occurs — how many users, services, or systems are affected. Good architecture...
- Block Chain Everything
- A mocking phrase for the habit of proposing blockchain technology for problems that do not genuinely require it. In tech slang, it criticizes solution-first...
- Bottom of the Stack
- A casual phrase for the lowest layers of a technical stack, such as infrastructure, operating systems, runtimes, or foundational libraries. In engineering...
- Bounded Context
- A central DDD concept defining an explicit boundary within which a particular domain model applies. The same real-world concept (e.g., 'Customer') can have...
- Bulkhead Pattern
- Bulkhead Pattern is a software resilience design pattern inspired by the watertight compartments in a ship's hull that prevent a single breach from sinking the...
- Business Logic Culture
- The shared assumptions and habits a team has about where business rules belong, how clearly they should be expressed, and who is responsible for maintaining...
- Cache Invalidation
- The process of removing or updating stale cached data when the underlying data changes. Phil Karlton's famous quote: 'There are only two hard things in...
- Cache Layer
- A distinct caching tier inserted between a data source and its consumers to reduce latency, offload repeated work, or improve throughput. Cache layers may sit...
- Caching Layer
- A layer in the architecture dedicated to storing and serving cached data between producers and consumers. A caching layer often sits between the application...
- Caching Pattern
- A recurring approach to caching such as cache-aside, write-through, write-behind, read-through, or refresh-ahead. Different caching patterns make different...
- Caching Strategy
- The selected combination of cache locations, invalidation rules, TTLs, warming behavior, and fallbacks used to meet performance and consistency goals. Caching...
- Capability Model
- A design in which access to operations or resources is represented by explicit capabilities or tokens of authority rather than by broad ambient permissions....
- Centralized Architecture
- A system design in which major control, processing, or data responsibilities are concentrated in one core service or tightly coupled central platform rather...
- Chief Architect
- A senior title for someone responsible for major architectural direction across products, platforms, or an organization. In practice, the role can range from...
- circuit breaker
- A design pattern that prevents an application from repeatedly trying to execute an operation that is likely to fail, by 'tripping' after a threshold of...
- Circular Dependency
- A dependency cycle in which two or more modules, packages, or services depend on each other directly or indirectly. Circular dependencies make systems harder...
- Class Diagram
- Class Diagram is a software design or object-modeling concept that shapes how code is organized. It is commonly used for maintainable application architecture...
- Class Hierarchy
- Class Hierarchy is a software design or object-modeling concept that shapes how code is organized. It is commonly used for maintainable application...
- Class Method
- Class Method is a software design or object-modeling concept that shapes how code is organized. It is commonly used for maintainable application architecture...
- Clean Architecture
- An architectural pattern (by Robert C. Martin) with concentric layers where dependencies point inward: Entities (business rules) → Use Cases (application...
- Client
- A piece of hardware or software that requests services or resources from a server. In client-server architecture, the client initiates communication and...
- Cloud Architecture
- The design of how an application or platform uses cloud services, including compute models, networking, storage, identity, scaling, and operational boundaries....
- Cloud Infrastructure
- The compute, storage, networking, identity, and platform services that form the operational foundation of a system running in the cloud. Cloud infrastructure...
- Code Architecture
- The structural organization of a codebase, including module boundaries, layering, dependency direction, and the distribution of responsibilities across files...
- Code Astronaut
- A developer who drifts toward impressive abstraction and theoretical system design instead of grounded delivery. In engineering slang, code astronaut is a...
- Code Castle
- A system or team structure that feels walled off, self-contained, and difficult for outsiders to enter or influence. In engineering slang, code castle can...
- Code Dependency
- A relationship in which one part of the code relies on another module, library, or component to compile or behave correctly. Managing code dependencies...
- Code Design
- The way code is structured internally, including abstraction choices, interfaces, responsibilities, data flow, and error handling. Code design sits below...
- Code Design Culture
- The norms a team has around thinking about structure, interfaces, modularity, and design tradeoffs before and during implementation. Strong code design culture...
- Code Family
- A casual way to refer to a group of related modules, services, or tools that share lineage, patterns, or ownership. In engineering slang, it emphasizes...
- Code Framework
- A framework or structural foundation that provides conventions, reusable components, and lifecycle hooks for building software. A code framework shapes how...
- Code Iceberg
- A feature or code path that looks small on the surface but hides much larger complexity underneath. In engineering slang, a code iceberg is a warning that...
- Code Mirage
- Something in the codebase that looks simple, clean, or complete from a distance but turns out to be much less real on close inspection. In engineering slang,...
- Code Module
- A self-contained unit of code organization, usually with a defined interface and a coherent set of responsibilities. Modules help manage complexity by creating...
- Code Organization
- The way files, modules, folders, and responsibilities are arranged within a codebase. Good code organization makes dependencies and ownership clearer, while...
- Code Reef
- A cluster of hard-to-see technical obstacles just below the surface of a system. In engineering slang, a code reef is dangerous because things look navigable...
- Code Structure
- The arrangement of code into files, functions, classes, modules, and layers, along with the dependencies between them. Clear code structure makes it easier to...
- Cognitive Architecture
- A high-level design intended to model or support aspects of cognition such as memory, planning, perception, and decision-making in a unified system. The term...
- column store
- A database storage architecture that stores data by column rather than by row, enabling dramatic compression ratios and query performance for analytical...
- Command Bus
- Command Bus is a software design or object-modeling concept that shapes how code is organized. It is commonly used for maintainable application architecture...
- Command Dispatcher
- A component that routes incoming commands to the correct handler based on type, name, or metadata. Command dispatchers are common in CQRS systems, CLIs,...
- Command Handler
- A unit of code responsible for executing the logic associated with a specific command or action request. Command handlers are often used to keep intent,...
- Command Pattern
- A Command Pattern is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Command Query Separation
- A Command Query Separation is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make...
- Communication Bus
- A shared channel or infrastructure used for exchanging messages, commands, or events between components in a system. Communication buses are common in...
- Communication Layer
- The part of a system responsible for sending, receiving, or abstracting communication between components, services, or clients. A communication layer typically...
- Component Architecture
- A Component Architecture is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make...
- Component Bus
- A shared messaging or event mechanism used for communication between components inside an application or framework. Component buses are useful when many UI or...
- Component Composition
- A Component Composition is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make...
- Component Design
- The process of defining a component's responsibilities, interface, inputs, outputs, and internal boundaries so it fits cleanly into a larger system. Strong...
- Component Model
- The conceptual system that defines what components are, how they are structured, how they compose, and how they manage state, lifecycle, and communication....
- Composite Pattern
- A Composite Pattern is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Composition
- A Composition is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
- Composition Root
- A Composition Root is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Config Driven Development
- A development style where product behavior is heavily controlled through configuration files, flags, schemas, or metadata rather than hard-coded logic. It can...
- Consistency Model
- A model architecture concept tied to consistency model and how modern AI systems represent or process information. It influences how models are trained,...
- Context Window
- The maximum number of tokens (input + output) that a language model can process in a single interaction. Determines how much text the model can 'see' at once....
- Control Plane
- The part of a system responsible for configuration, orchestration, policy decisions, and coordination, as opposed to the data plane that handles live traffic...
- Convolutional Neural Network
- A model architecture concept tied to convolutional neural network and how modern AI systems represent or process information. It influences how models are...
- Conway's Law
- The observation that organizations design systems that mirror their communication structures. A company with four teams will produce a four-component...
- Conway's Law
- 'Organizations which design systems are constrained to produce designs which are copies of the communication structures of these organizations.' In other...
- Core
- The central or most essential part of a codebase, library, service, or processor around which other pieces are built. Calling something core usually means it...
- Core Component
- A foundational component that other parts of an application or platform rely on heavily for shared behavior or structure. Core components are usually harder to...
- Core Framework
- The main framework layer that defines the primary conventions, abstractions, and extension points of an application or platform. A core framework often handles...
- Core Library
- A fundamental shared library that exposes common utilities, domain logic, or primitives used broadly across a codebase. Core libraries are often stabilized...
- Core Module
- A central module that contains foundational logic, interfaces, or services required by the rest of an application. Core modules typically define stable...
- Core Service
- A service that plays a central role in a platform and is widely depended on by other services, jobs, or customer-facing features. Core services usually require...
- CPU Architecture
- A CPU Architecture is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- CQRS
- Command Query Responsibility Segregation — separating the read model (queries/views) from the write model (commands/mutations). Commands validate and modify...
- CQRS
- Command Query Responsibility Segregation — separating read and write operations into different models. Writes go to one optimized store; reads come from...
- Cross-Module
- Describing behavior, concerns, or dependencies that span more than one module rather than staying isolated inside a single unit. Cross-module issues often need...
- Cross-Service
- Describing workflows, dependencies, or changes that involve multiple services working together instead of remaining inside one service boundary. Cross-service...
- Crypto Agility
- Crypto Agility is the ability to replace algorithms, key sizes, or protocol settings without redesigning the whole system. Security teams use it to enforce...
- CSS Architecture
- The organizational approach used to structure stylesheets, naming conventions, component boundaries, and style reuse in a frontend codebase. Good CSS...
- Current State
- The actual present condition of a system, object, workflow, or environment at a given moment. Engineers often compare current state with desired state to...
- Custom Event
- An event defined by an application rather than built into the underlying platform, used to signal domain-specific actions or state changes. Custom events help...
- Custom Middleware
- Middleware added by an application team to intercept and process requests, responses, or events in ways not provided by the framework out of the box. Custom...
- Custom Plugin
- A plugin developed specifically for a given application, workflow, or team rather than distributed as a general-purpose extension. Custom plugins let systems...
- Dark Debt
- Hidden technical debt in machine learning systems that's harder to detect than traditional code debt. Includes training-serving skew, undeclared data...
- Data Access Layer
- A Data Access Layer is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Data Access Object
- A Data Access Object is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Data Binding
- A Data Binding is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
- Data Flow
- A Data Flow is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier to...
- Data Flow Diagram
- A diagram that shows how data moves between users, services, processes, stores, and trust boundaries within a system. Security teams use data flow diagrams...
- data gravity
- The principle that large datasets attract applications, services, and additional data to their location, much like physical mass attracts objects through...
- Data Lakehouse
- An architecture that combines the cheap storage and flexibility of data lakes with the ACID transactions, schema enforcement, and performance of data...
- Data Layer
- A Data Layer is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
- Data Loader
- A Data Loader is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
- Data Mapper
- A Data Mapper is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
- data mesh
- A decentralized data architecture that treats data as a product owned by domain teams rather than a centralized data platform team. Each domain publishes its...
- Data Model
- A Data Model is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
- Data Oriented Design
- A Data Oriented Design is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make...
- Data Pipeline
- A series of automated data processing steps that moves data from sources through transformations to destinations — extract, transform, load (ETL). The plumbing...
- Data Race
- A Data Race is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier to...
- Data Serialization
- A Data Serialization is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Data Store
- A Data Store is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
- Data Transfer Object
- A Data Transfer Object is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make...
- Data Type
- A Data Type is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier to...
- Data Validation
- A Data Validation is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Dead End
- A technical path, idea, or investigation that turns out not to lead to a usable solution. In engineering slang, dead ends are part of real problem solving, but...
- Decentralization
- The distribution of control, processing, or data across multiple independent nodes rather than concentrating it in a single authority. Core principle of...
- Decoder
- A model architecture concept tied to decoder and how modern AI systems represent or process information. It influences how models are trained, evaluated, or...
- Decoder-Only Transformer
- A transformer architecture that predicts the next token from prior context without using a separate encoder, which is the common design behind many modern...
- Defense in Depth
- Defense in Depth is a defensive architecture principle that layers multiple independent controls so one failure does not expose everything. Security teams use...
- Dense Layer
- A model architecture concept tied to dense layer and how modern AI systems represent or process information. It influences how models are trained, evaluated,...
- Dense Model
- A model in which most or all parameters are active for each forward pass, unlike sparse architectures such as mixture-of-experts where only subsets activate....
- Dependency
- Dependency in software development is any external package, library, framework, or service that a project requires to function. When your application uses a...
- Dependency Graph
- A directed graph showing dependencies between modules, packages, services, or build targets. Nodes represent components and edges represent 'depends on'...
- Design Document
- A Design Document is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Design Pattern
- A design pattern is a reusable, named solution to a commonly recurring problem in software design. Patterns are not finished code but rather templates that...
- Diagram Culture
- A culture in which diagrams are a primary way people explain systems, plan work, and align across teams. Diagram culture can improve shared understanding,...
- Differential Transformer
- A transformer variant that changes how attention or state updates are computed to improve efficiency or robustness. It influences how models are trained,...
- Diffusion Model
- A generative AI model that learns to create data by reversing a gradual noising process. Starting from pure noise, it iteratively removes noise to produce...
- Distributed Systems
- A collection of independent computers that appears to its users as a single coherent system. The fundamental challenge: partial failures, network partitions,...
- Document Object Model
- A Document Object Model is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make...
- Domain
- In domain-driven design, the subject area or business problem a software system addresses. In networking, a human-readable address (e.g., example.com) that...
- Domain-Driven Design
- A software design approach that focuses on modeling the core business domain through close collaboration with domain experts. Key concepts: bounded contexts...
- Domain Event
- A Domain Event is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
- Domain Model
- A Domain Model is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
- Dual Encoder
- A retrieval architecture that encodes queries and documents separately for fast vector similarity search. It influences how models are trained, evaluated, or...
- Dynamic Proxy
- A Dynamic Proxy is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Elm Architecture
- An Elm Architecture is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Encoder
- A model architecture concept tied to encoder and how modern AI systems represent or process information. It influences how models are trained, evaluated, or...
- Encoder-Decoder
- A model architecture concept tied to encoder-decoder and how modern AI systems represent or process information. It influences how models are trained,...
- Enterprise Architecture
- The high-level structure and governance of systems, processes, and technology across a large organization. In workplace culture enterprise architecture can be...
- Event
- A signal that something has occurred in a system — a user click, a message arrival, a state change. Event-driven architectures decouple producers from...
- Event Bus
- An Event Bus is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
- Event Delegate
- An Event Delegate is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Event Dispatcher
- An Event Dispatcher is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Event-Driven Architecture
- A design paradigm where the flow of the program is determined by events — user actions, sensor outputs, messages from other services. Components publish events...
- Event Emitter
- An Event Emitter is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- EventEmitter
- An EventEmitter is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Event Handler
- An Event Handler is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Event Queue
- An Event Queue is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
- Event Sourcing
- An architectural pattern where state changes are stored as an immutable sequence of events rather than just the current state. The current state is derived by...
- Event Store
- An Event Store is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
- Event Stream
- An Event Stream is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Evolutionary Architecture
- An architectural approach that expects systems to change over time and therefore emphasizes flexibility, feedback, and incremental adaptation instead of fixed...
- Exception Driven Development
- A mocking phrase for building systems by layering one special-case exception after another instead of improving the underlying model. In engineering slang,...
- Facade Pattern
- A Facade Pattern is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Feed-Forward Network
- A model architecture concept tied to feed-forward network and how modern AI systems represent or process information. It influences how models are trained,...
- Fitness Function
- A test or evaluation criterion used to determine whether a system, product, or strategy is moving in the desired direction. In startup and architecture...
- Flux Architecture
- A Flux Architecture is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Framework
- A framework is a reusable software platform that provides foundational structure, conventions, and built-in functionality for building applications within a...
- Frameworks vs Libraries
- A Frameworks vs Libraries is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make...
- Frontend Build
- A Frontend Build is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Frontend Framework
- A Frontend Framework is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Frontend Router
- A Frontend Router is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Frozen Layer
- A model architecture concept tied to frozen layer and how modern AI systems represent or process information. It influences how models are trained, evaluated,...
- Fullstack Framework
- A Fullstack Framework is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Future Proof
- To design something in a way intended to remain useful and adaptable as needs, technology, or conditions change. In engineering culture the phrase is useful up...
- Game Loop
- The central loop in a game engine that continuously processes input, updates game state, and renders frames. Typically runs 30-60+ times per second, with...
- Gating Network
- A network component that decides which expert, branch, or submodule should handle a given input in architectures such as mixture-of-experts models.
- Generative Adversarial Network
- A model architecture concept tied to generative adversarial network and how modern AI systems represent or process information. It influences how models are...
- Generative Model
- A model architecture concept tied to generative model and how modern AI systems represent or process information. It influences how models are trained,...
- Glue Code
- Code that connects two systems or libraries that weren't designed to work together, handling format conversions, protocol translations, and API mapping. Often...
- God Class
- An object-oriented class that has taken on too many responsibilities, knows too much, and controls too much of the system. It is a classic code smell because...
- God Object
- An object that centralizes too much state and behavior, becoming an all-knowing hub that other parts of the system depend on excessively. It is closely related...
- Golden Path
- The ideal, expected flow through a system when everything goes right — no errors, no edge cases, no user stupidity. The path your demo always follows. Also...
- Goldilocks Zone Tech
- The range where a technical choice is neither too heavy nor too weak, but appropriately sized for the current problem.
- GPT Architecture
- The decoder-only transformer architecture used in the GPT family of autoregressive language models. It influences how models are trained, evaluated, or served,...
- Graph Transformer
- A transformer-style architecture adapted to graphs so relational structure can guide attention and message passing. It influences how models are trained,...
- Greenfield
- A project built from scratch with no existing codebase, constraints, or legacy decisions to work around. The opposite of brownfield (modifying/extending...
- Green Field
- Describing a project built from scratch with few legacy constraints, rather than one layered onto existing systems. It usually implies more design freedom, but...
- GUI Framework
- A GUI Framework is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Headless
- Operating without a built-in graphical front end, usually so the backend or engine can be used independently through APIs or automation. The term appears in...
- Headless CMS
- A content management system that provides content via API without a built-in frontend presentation layer. Content is managed in the CMS and consumed by any...
- Headless Development
- A development approach centered on backend systems that expose content or functionality through APIs without being tied to a single presentation layer. In...
- Heavyweight
- Describing a tool, framework, process, or system that is large, complex, or resource-intensive relative to the problem at hand. It is often used critically...
- Hexagonal Architecture
- An architectural pattern (also called Ports and Adapters) where business logic is isolated at the center, communicating with the outside world through defined...
- Hidden Layer
- A model architecture concept tied to hidden layer and how modern AI systems represent or process information. It influences how models are trained, evaluated,...
- Horizontal Scaling
- Adding more machines to a system to handle increased load, distributing work across a fleet. The opposite of vertical scaling (making one machine bigger)....
- Hot Path
- The most frequently executed code path in a system — the sequence of operations that handles the majority of traffic or computation. Optimizing the hot path...
- Hype-Driven Development
- A mocking phrase for choosing languages, frameworks, architectures, or product directions mainly because they are fashionable rather than because they fit the...
- Hypernetwork
- A neural network that generates some or all of the weights used by another network. It influences how models are trained, evaluated, or served, and it can...
- Immutable Data Structure
- An Immutable Data Structure is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to...
- Implementation
- The concrete realization of a design, specification, or interface in working code. In OOP, a class 'implements' an interface by providing method bodies; more...
- Instruction Set
- The complete set of machine-level instructions that a CPU can execute, defining the interface between software and hardware. x86, ARM, and RISC-V are...
- Integration Pattern
- An Integration Pattern is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make...
- Isolation
- Isolation is the separation of components, workloads, users, or networks so compromise in one area does not freely spread. Security teams use it to enforce...
- It Depends
- A classic engineering answer meaning the right solution varies with constraints, context, and tradeoffs rather than universal rules. It can be a sign of...
- Ivory Tower Architect
- A critical label for an architect seen as detached from implementation realities, delivery constraints, or operational pain.
- Language Model
- A model architecture concept tied to language model and how modern AI systems represent or process information. It influences how models are trained,...
- Language Model Evaluation
- A model architecture concept tied to language model evaluation and how modern AI systems represent or process information. It influences how models are...
- Latency vs Throughput
- Two often-confused performance metrics: latency is the time for a single operation to complete (measured in ms), while throughput is the number of operations...
- Local-First Software
- A software design philosophy where data lives primarily on the user's device, with optional sync to the cloud and other devices. Combines the speed and offline...
- Loose Coupling
- A design principle where components depend on each other through narrow, well-defined interfaces rather than concrete implementations, so that changes in one...
- Master-Slave
- A replication or control architecture where one node (master/primary) accepts writes and propagates changes to one or more read-only nodes (slaves/replicas)....
- Memory Module
- A dedicated component responsible for storing, updating, or retrieving information used by an AI system beyond transient prompt context. A memory module may be...
- Message Bus
- A shared communication channel through which all components in a system send and receive messages, typically using publish-subscribe semantics. Unlike a...
- Message Passing
- A communication paradigm where processes or objects exchange data by sending and receiving messages rather than sharing memory, reducing race conditions and...
- Message Queue
- A message queue is a middleware system enabling asynchronous communication between services. Producers send messages to a queue, where they are stored until...
- Micro Frontend
- An architectural pattern that decomposes a web frontend into independently developed, deployed, and loaded feature slices — each owned by a separate team —...
- Microservices
- Microservices is an architectural style that structures an application as a collection of small, independent services, each running in its own process and...
- Middleware
- Middleware is software that sits between components in a system, intercepting and processing requests as they pass through a pipeline. In web frameworks like...
- mixture of agents
- An architecture where multiple LLM agents collaborate by having each agent process the outputs of others in iterative rounds, leveraging the phenomenon that...
- Mixture of Depths
- An architectural idea where different tokens or inputs receive different amounts of computational depth, allowing the model to spend more effort on harder...
- Mixture of Experts
- A neural network architecture that routes different inputs to different specialized sub-networks (experts), activating only a subset for each input. Allows...
- Model-View-Controller
- A software architecture pattern that separates an application into three interconnected components: the Model (data and business logic), the View (UI...
- Model-View-Presenter
- A UI architecture pattern derived from MVC in which the Presenter contains all presentation logic and updates a passive View through an interface, making the...
- Model-View-ViewModel
- A UI architecture pattern in which the ViewModel exposes observable state and commands that the View binds to declaratively, eliminating direct View...
- Monolith
- A software application built as a single, unified unit where all components share the same codebase and deploy together. Once the default, now sometimes used...
- Monolith Slang
- A casual use of 'monolith' to describe anything large, tightly coupled, or centralized, even when it is not literally a monolithic application. It reflects how...
- Monorepo
- A single version control repository containing multiple projects or services. Google, Meta, and Microsoft use monorepos containing billions of lines. Whether...
- Monorepo
- A version control strategy where multiple projects, packages, or services are stored in a single repository. Simplifies code sharing, atomic cross-project...
- Monorepo Debate
- Arguments over the tradeoffs between keeping many projects in one repository versus splitting them into multiple repos.
- Multicloud
- Describing a strategy or environment that intentionally uses services from more than one cloud provider, such as AWS, Azure, or Google Cloud. Teams pursue...
- Multi-Head
- Describing an architecture that uses multiple attention heads or output heads to process information in parallel or from different representational...
- Multi-Layered Defense
- A security approach that uses several complementary controls at different layers so the failure of one does not immediately lead to full compromise....
- Multimodal AI
- AI systems that can process and generate multiple types of data — text, images, audio, video, and code — within a single model. GPT-4V, Claude 3, and Gemini...
- Multi-Tenant
- A software architecture in which a single application instance and infrastructure serves multiple customers (tenants), isolating their data through row-level...
- Multi-Tenant SaaS
- A software architecture where many customers share the same core application environment and infrastructure while their data and permissions remain logically...
- MVC
- MVC (Model-View-Controller) is an architectural pattern that separates an application into three interconnected components. The Model manages data, business...
- MVP Pattern
- Abbreviation for Model-View-Presenter, a UI pattern where the Presenter holds all presentation logic and interacts with a passive View through a defined...
- MVVM
- MVVM (Model-View-ViewModel) is a UI architecture pattern that separates presentation from business logic using data binding. The Model holds data and business...
- Native vs Web
- A shorthand for debates over whether something should be built as a native app or a web-based experience. In engineering slang, the phrase often stands for a...
- Network Segmentation
- Network Segmentation is the division of networks into smaller trust zones so movement and blast radius are constrained. Security teams use it to enforce trust,...
- Neural Network
- A computing system loosely inspired by biological neural networks, consisting of layers of interconnected nodes (neurons) that process information by adjusting...
- Neural Network Depth
- The number of layers in a neural network, which affects representational capacity, compute cost, and optimization behavior.
- NUMA
- Non-Uniform Memory Access — a memory architecture in multi-socket servers where each CPU has fast access to its local memory and slower access to remote memory...
- Offline-First
- A design approach where an application is built to work without an internet connection by default, syncing data when connectivity is available.
- Onion Architecture
- A software architecture style proposed by Jeffrey Palermo in which dependencies point inward through concentric layers — domain model at the core, surrounded...
- Over-Engineering
- The habit of designing a system with more abstraction, scalability, flexibility, or machinery than the actual problem requires. In software, over-engineering...
- Paper Napkin Architecture
- A rough system design sketched quickly and informally, often enough to align a team before heavier documentation exists.
- Parameter Sharing
- A design approach where the same parameters are reused across different parts of a model or across multiple computations. Parameter sharing can reduce model...
- Pipeline Stage
- A discrete, sequential step within a processing pipeline — whether a CI/CD pipeline (build → test → deploy), a data pipeline (extract → transform → load), or a...
- Platform
- The foundational hardware, operating system, runtime, or service layer on which applications are built and executed. Depending on context, it can mean an OS...
- Platform Abstraction
- A software layer that hides platform-specific differences (OS APIs, hardware quirks, runtime behaviors) behind a uniform interface, allowing application code...
- Pluggable
- Describing a system designed so components can be added, replaced, or extended through defined interfaces rather than hardcoded changes. In software culture,...
- Plugin
- A self-contained module that adds specific functionality to a host application by conforming to its extension API, allowing features to be added or removed...
- Plugin Architecture
- A software design pattern in which the core application defines stable extension points (hooks, events, or interfaces) that external modules can implement to...
- Portability
- The degree to which software can run on different platforms, operating systems, or hardware with minimal or no modification. Highly portable code avoids...
- Positional Encoding
- A method for injecting token-order information into transformer models so they can distinguish position within a sequence.
- Presenter
- In the Model-View-Presenter (MVP) architecture, the component that sits between the Model and the View: it retrieves data from the model, formats it for...
- Programming Paradigm
- A fundamental style or approach to structuring programs that dictates how computation is modeled — such as imperative (step-by-step mutation), object-oriented...
- Project Structure
- The directory layout and file organization conventions of a software project, defining where source code, tests, configuration, assets, and documentation live....
- Pub/Sub
- Pub/Sub (Publish/Subscribe) is a messaging pattern where senders (publishers) emit events to named topics without knowing who receives them, and receivers...
- Pull Model
- A data retrieval pattern in which the consumer initiates requests to fetch data from the source at its own pace, rather than the source pushing data to...
- RAG
- Retrieval-Augmented Generation — a technique that enhances LLM responses by first retrieving relevant documents from an external knowledge base and including...
- RAG Architecture
- The overall system design for retrieval-augmented generation, including indexing, chunking, retrieval, ranking, prompt assembly, and answer generation. RAG...
- Reactive
- A programming paradigm centered on data streams and the propagation of change. Reactive systems automatically update outputs when inputs change. In frontend...
- Renderer
- A software component responsible for converting an abstract representation (scene graph, virtual DOM, markup template) into visual output on a specific target...
- Request Pipeline
- The ordered chain of middleware and handlers that an HTTP request passes through from arrival to response — typically including logging, authentication, rate...
- Request-Response
- A communication pattern in which a client sends a single request and synchronously waits for a single response from the server, forming a paired exchange. HTTP...
- Resource
- Any identifiable entity that a system manages — in REST, a resource is anything addressable by a URI (a user, an order, a document); in systems programming, it...
- REST
- REST, or Representational State Transfer, is an architectural style for designing networked applications that use HTTP as the communication protocol. Defined...
- REST API
- An API that follows REST (Representational State Transfer) principles: resources are identified by URIs, manipulated via standard HTTP methods (GET, POST, PUT,...
- Resume Driven
- Describing choices made more for how they look on a resume than for what the system genuinely needs. In engineering slang, resume-driven development is one of...
- Resume Driven Development
- Building or choosing technology mainly because it looks impressive on a resume rather than because it solves the actual problem well.
- Retrieval-Augmented Generation
- An architecture that improves LLM outputs by first retrieving relevant documents from an external knowledge base, then including them in the prompt as context....
- scaffolding
- The orchestration code surrounding an LLM that provides structure, tool access, memory, and control flow to transform a raw language model into a functional...
- Scalability
- The ability of a system, network, or process to handle a growing amount of work by adding resources. In startup pitch decks, it's the claim that your business...
- Screaming Architecture
- An architecture whose top-level structure clearly reveals the domain and primary use cases rather than mainly exposing frameworks or technical layers. The...
- Second System Effect
- The tendency for the second version of a system to be over-engineered and bloated because designers include all the features they wished they'd had in the...
- Second System Syndrome
- Fred Brooks’s observation that designers often overload their second major system with every idea they regretted leaving out of the first, producing...
- Serverless
- Serverless is a cloud computing model where the provider dynamically manages server allocation, scaling, and infrastructure, so developers deploy only their...
- Serverless Slang
- A loose or promotional use of 'serverless' to describe systems where infrastructure feels less visible, even though servers still exist underneath. It often...
- Service
- A self-contained unit of functionality — either a standalone network process (as in microservices) or an application-layer class that encapsulates business...
- Service Layer
- An architectural layer that sits between controllers (or API handlers) and the data access layer, encapsulating business logic, orchestrating transactions, and...
- Sharding
- The strategy of horizontally partitioning data across multiple database instances, each responsible for a subset of the data, to achieve linear scalability and...
- Single Tenant
- Describing a software deployment architecture where each customer gets a separate dedicated environment rather than sharing one multi-tenant system....
- Slippery Slope
- A warning that allowing one small exception or compromise may lead to many more, making the situation harder to control later. Engineers use it around process,...
- Source of Truth
- The authoritative system or dataset that is considered the definitive, canonical reference for a particular piece of information, from which all other...
- SPA
- Single Page Application — a web application that loads a single HTML page and dynamically updates content via JavaScript and API calls, avoiding full page...
- Spaghetti Junction
- A dense tangle of dependencies, routes, or control flow that has become hard to trace because too many paths intersect in one place. It is an extension of the...
- Stack
- Stack is one of the most fundamental data structures in computer science, operating on a last-in, first-out (LIFO) principle where the most recently added...
- Stack Machine
- A computation model (or virtual machine) where instructions operate on values at the top of an implicit stack rather than named registers. Operands are pushed,...
- State
- The current set of data values that determine a program's behavior and UI at any given moment, managed locally in components, globally in stores, or on the...
- State Machine
- A computational model where a system exists in exactly one of a finite set of states at any time, transitioning between states in response to events according...
- State Management
- The set of patterns and tools used to create, read, update, and synchronize application state across components or services. In frontend frameworks this...
- Strangler Fig Pattern
- A migration strategy where a new system is built incrementally around an existing legacy system, gradually replacing its functionality until the old system can...
- Stream Processing
- Processing data continuously as it arrives rather than in periodic batches. Handles unbounded datasets using windowing (tumbling, sliding, session) for...
- subnet
- A logical subdivision of an IP network, created by applying a subnet mask to partition a larger address space into smaller, isolated segments. Subnetting...
- SwiGLU
- A gated activation function variant used in some transformer feed-forward layers to improve model quality relative to simpler activations.
- System Architecture
- The high-level structural design of a software system, defining its major components, their responsibilities, how they communicate (APIs, message queues, RPC),...
- System Design
- The process of defining the architecture, components, modules, interfaces, and data flows of a system to satisfy specified requirements, and a common interview...
- Task Parallelism
- A form of parallelism where different tasks or functions are distributed across multiple processors, as opposed to data parallelism where the same operation is...
- Technical Due Diligence
- An assessment of a company's technology stack, codebase quality, architecture, security posture, team capabilities, and technical debt performed before an...
- Tech Stack
- The full set of technologies used in an application: languages, frameworks, databases, hosting, monitoring tools, and everything in between. 'What's your tech...
- Tech Stack Culture
- The identity, preferences, and social norms that form around a team’s chosen languages, frameworks, and infrastructure. Tech stack culture influences hiring,...
- Tech Stack Envy
- The feeling that another team's or company's tools seem more modern, elegant, or exciting than your own stack.
- Tenant
- A distinct customer environment or account boundary within a software system, often used in multi-tenant architecture discussions. Tenants separate data,...
- Testability
- The degree to which a software component can be effectively and efficiently tested, determined by factors like dependency injection, separation of concerns,...
- Testing Pyramid
- A testing strategy model shaped like a pyramid: a broad base of fast, cheap unit tests, a middle layer of integration tests, and a narrow top of slow,...
- Test Strategy
- A high-level document or decision framework that defines which types of testing (unit, integration, E2E, performance, etc.) a project will employ, the ratio...
- Thin Client Slang
- Informal use of thin client to describe an application that keeps relatively little logic on the client side. In engineering slang, it can be used precisely or...
- Threading Model
- The design that defines how a runtime or application maps work to OS threads — such as one-thread-per-request, event loop with a single thread (Node.js), green...
- Tight Coupling
- A design condition where two modules depend heavily on each other's internal details — concrete classes, data structures, or execution order — making it...
- Tower of Babel Codebase
- A codebase with too many languages, styles, conventions, or paradigms layered together, making it difficult to reason about as a whole.
- Trade-off
- A deliberate engineering decision where improving one quality (speed, simplicity, safety) comes at the expense of another. The essence of software architecture...
- Transformer
- A neural network architecture that uses self-attention mechanisms to process sequential data in parallel rather than sequentially. Introduced in the 2017 paper...
- twelve-factor app
- A methodology for building software-as-a-service applications, defining twelve principles including storing config in environment variables, treating backing...
- Twelve-Factor App
- A methodology of twelve principles for building modern cloud-native applications, published by Heroku co-founder Adam Wiggins in 2011. Key factors: store...
- UML
- Unified Modeling Language — a standardized family of graphical notations for visualizing software design, including class diagrams, sequence diagrams, state...
- Unidirectional Data Flow
- An application architecture pattern where data flows in a single direction — typically from a central store through the view, with user interactions...
- Vertical Scaling
- Vertical Scaling (also called scaling up) is the approach of increasing a system's capacity by adding more resources to a single machine, such as more CPU...
- von Neumann architecture
- The computer architecture in which a single memory store holds both program instructions and data, with a central processing unit that fetches, decodes, and...
- Von Neumann Bottleneck
- The performance limitation caused by the shared bus between CPU and memory in Von Neumann architecture — the processor spends significant time waiting for data...
- Webhook vs. Polling
- Two approaches to getting updates: polling (repeatedly asking 'anything new?') vs. webhooks (getting called when something happens). Polling is simpler;...
- Wheelbarrow Pattern
- A joking label for a clumsy solution that technically moves the load but in an awkward, manual, or low-leverage way. It is not a formal pattern so much as a...
- Zero Trust
- A security model that assumes no user, device, or network segment should be automatically trusted, even inside the corporate perimeter. 'Never trust, always...
- Zero Trust Architecture
- A security model that treats every access request as untrusted until identity, device, and context are verified. It shows up in application security, identity,...
Related Topics
- Ai (29 terms in common)
- Design (28 terms in common)
- Backend (27 terms in common)
- Data (21 terms in common)
- Patterns (20 terms in common)
- Models (17 terms in common)
- Slang (15 terms in common)
- Code Design (14 terms in common)
- Oop (12 terms in common)
- Events (12 terms in common)
- Pattern (12 terms in common)
- Frontend (11 terms in common)
- Design Patterns (10 terms in common)
- Cloud (9 terms in common)
- Systems (8 terms in common)
- Performance (7 terms in common)
- Networking (7 terms in common)
- Llm (7 terms in common)
- Infrastructure (6 terms in common)
- Microservices (5 terms in common)