Engineering Glossary

From fundamental principles to cutting-edge practices, this glossary covers the full spectrum of software engineering terminology.

DevOps
Cloud Computing
Git
Containerization & Orchestration

YAML (Yet Another Markup Language)

Human-readable data serialization standard that can be used in conjunction with all programming languages.
DevOps

YAML Sprawl

Proliferation of YAML configuration files, often leading to maintenance and consistency challenges.
DevOps

Yak Shaving

Seemingly useless activity which, by allowing you to overcome intermediate difficulties, allows you to solve a larger problem.
DevOps

Yarn

Fast, reliable, and secure dependency management tool for Node.js, offering improved performance and additional features over NPM.
DevOps

Yocto

Open-source collaboration project that helps developers create custom Linux-based systems.
DevOps

Yoda Conditions

Programming style where the constant goes before the variable in a conditional statement.
DevOps

You Build it You Run it

DevOps principle where development teams are also responsible for supporting the software in production.
DevOps

Zabbix

Open-source software tool to monitor various IT components, including networks, servers, virtual machines, and cloud services.
DevOps

Zero Downtime Deployment

Deployment method that ensures the application remains available to users during the entire update process.
DevOps

Zero Nines

A measure of system availability where no uptime guarantee is provided. It indicates a service with no specified reliability commitments or expectations.
DevOps

Zero Trust

Security concept centered on the belief that organizations should not automatically trust anything inside or outside its perimeters.
DevOps

Zero-day Attack

Cyber attack exploiting a vulnerability that is unknown to the software vendor or to antivirus vendors.
DevOps

Zipkin

Distributed tracing system that helps gather timing data needed to troubleshoot latency problems in service architectures.
DevOps

Zookeeper

Centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.
DevOps

Zsh (Z Shell)

Extended version of the Bourne Shell with many improvements, including some features of Bash, ksh, and tcsh.
DevOps

iOS Deployment

Process of distributing iOS applications to Apple devices, often through the App Store or enterprise distribution methods.
DevOps

macOS

Apple's Unix-based operating system for Macintosh computers, known for its user-friendly interface and tight integration with Apple hardware.
DevOps
stash entry

stash entry

A single set of stashed changes in Git, which can be reapplied later to the working directory.
status checks

status checks

Automated tests or processes that run when changes are proposed in a Git repository, ensuring code quality and compatibility.
subscription

subscription

Notifications or updates a user receives about activity in Git repositories they're interested in or contributing to.
superproject

superproject

The main Git repository that contains submodules, managing references to specific versions of nested repositories.
symref

symref

A symbolic reference in Git that points to another reference, most commonly used for HEAD pointing to the current branch.
tag object

tag object

A Git object containing metadata about a tag, including the tagger, date, and optional message.
team

team

A group of users on a Git platform with shared access permissions to repositories within an organization.
team maintainer

team maintainer

A user with administrative privileges for managing a team's membership and access rights in a Git organization.
timeline

timeline

A chronological display of events and activities in a Git repository or user profile on hosting platforms.
topic branch

topic branch

A short-lived Git branch created to develop a specific feature or fix a particular issue.
topics

topics

Keywords or categories assigned to Git repositories to help users discover related projects on hosting platforms.
traffic graph

traffic graph

A visual representation of visitor activity and clone statistics for a Git repository on hosting platforms.
transfer

transfer

The process of moving Git objects between repositories during push, fetch, or clone operations.
tree

tree

A Git object representing a directory structure, containing references to blobs (files) and other trees (subdirectories).
tree object

tree object

A Git object that stores the hierarchy of files and directories in a repository at a specific point in time.
tree-ish (also treeish)

tree-ish (also treeish)

A Git term referring to an object that resolves to a tree, such as a commit, tag, or tree.
unborn

unborn

A state of a Git branch that has no commits yet, typically seen when initializing a new repository.
unmerged index

unmerged index

The state of the Git index containing conflicting changes from different branches during a merge operation.
unreachable object

unreachable object

A Git object not accessible from any reference, potentially subject to garbage collection if not recovered.
upstream branch

upstream branch

The remote branch that a local branch is set to track, used as a reference for pull and push operations.
user

user

An individual account on a Git platform, associated with personal repositories and contributions.
user-to-server request

user-to-server request

An authenticated request from a Git client to a server, typically for operations like push or fetch.
username

username

The unique identifier for a user account on Git platforms, used for authentication and mention notifications.
visible team

visible team

A team in a Git organization that is visible to all members of the organization, as opposed to secret teams.
watch

watch

A feature allowing users to receive notifications about activity in Git repositories they're interested in.
watching notifications

watching notifications

Alerts received for all notable events in a watched Git repository, including issues, pull requests, and releases.
web notifications

web notifications

Alerts displayed on Git platforms' web interfaces, notifying users of relevant activity or mentions.
working area

working area

The directory on your local machine where you modify files before staging and committing them in Git.
working tree

working tree

The set of files and directories in your project that are currently checked out and available for editing.
worktree

worktree

A Git feature allowing multiple working directories to be associated with a single repository.
write access

write access

Permission to make changes to a Git repository, including pushing commits and modifying branches.

Workflows as Code

Defining and managing complex business processes using code in cloud environments.

Workload Placement Optimization

Techniques for efficiently distributing applications and data across cloud resources.

Workload Portability

Ability to move applications and data between different cloud environments with minimal modifications.

Workload-Aware Data Placement

Optimizing data storage location based on application requirements in cloud environments.

Zero Trust Network Access (ZTNA)

Security model that requires strict identity verification for every person and device accessing cloud resources.

Zero Trust Security Model

Approach assuming no automatic trust, requiring continuous verification in cloud environments.

Zero UI Cloud Interactions

Interfacing with cloud services through ambient intelligence, without traditional user interfaces.

Zero-Knowledge Proof Services

Cloud-based cryptographic methods allowing data verification without revealing the data itself.

Zero-Knowledge Proof Systems

Cryptographic protocols enabling data verification without disclosing the actual data in cloud environments.

Zero-Trust Microsegmentation

Fine-grained network segmentation approach in cloud environments, limiting lateral movement of threats.

Zero-Trust Network Access (ZTNA)

Security framework requiring strict authentication and authorization for all cloud network access.

Zoned Namespaces (ZNS) SSDs

Storage devices optimized for cloud workloads, improving performance and reducing write amplification.

eBPF (extended Berkeley Packet Filter)

Technology for running sandboxed programs in the Linux kernel, often used in cloud environments.

eBPF-based Networking

Using eBPF technology to enhance network performance and security in cloud environments.

5G MEC Integration

Integration of 5G mobile edge computing with container platforms for low-latency applications and services at network edges.

AIOps for Container Environments

Application of AI and machine learning for automated operations, monitoring, and management of containerized environments.

API Deprecation Policy

Guidelines for phasing out older API versions in Kubernetes, ensuring smooth transitions for users.

API Extensions

Mechanisms to extend the Kubernetes API with custom resources and functionalities, enhancing platform capabilities.

API Gateway Pattern

Containerized service that acts as a single entry point for all client requests to a microservices architecture.

API Server

Core component of Kubernetes that exposes the cluster's API and handles all administrative operations.

API Server Aggregation

Kubernetes feature allowing the API server to be extended with additional APIs without modifying core Kubernetes code.

API-First Development

Approach prioritizing API design before implementation, crucial for developing scalable containerized microservices.

AWS Fargate

Serverless compute engine for containers, allowing you to run containers without managing the underlying infrastructure.

Adapter Pattern

Design pattern in containerized microservices that wraps a service's interface to make it compatible with other services.

Admission Controllers

Plugins that intercept requests to the Kubernetes API server before object persistence, enforcing policies or modifying objects.

Admission Controllers for Security

Admission controllers specifically focused on enforcing security policies and validating security-related configurations.

Admission Webhooks

HTTP callbacks that receive admission requests and can modify or validate objects before they are persisted.

Admission Webhooks in Operators

Use of admission webhooks within Kubernetes operators to enforce custom policies or modify resources.

Advanced Audit

Kubernetes feature providing detailed logging of all requests processed by the API server for security and compliance.

Aggregated API Servers

Extension of the Kubernetes API server to include custom resources and functionalities without modifying core Kubernetes.

Aggregated ClusterRoles

Combination of multiple ClusterRoles into a single role, simplifying RBAC management in Kubernetes.

Air-gapped Registries

Container registries isolated from public networks, used in secure or restricted environments.

Akri

Open-source project for exposing heterogeneous leaf devices as resources in Kubernetes clusters.

Alertmanager Configuration

Setup and management of Prometheus Alertmanager for handling alerts from monitoring systems.

Amazon Elastic Container Registry (ECR)

Fully managed Docker container registry provided by AWS for storing, managing, and deploying container images.

Ambassador Pattern

Microservices design pattern where a dedicated service acts as an API gateway for other services.

Ambient Mesh

Service mesh implementation that doesn't require sidecars, reducing resource overhead and simplifying deployment.

Anchore Engine for Image Scanning

Open-source tool for deep inspection of container images, including vulnerability scanning and policy enforcement.

Ansible-based Operators

Kubernetes operators implemented using Ansible for automating application lifecycle management.

Antrea Network Policies

Network policies specific to the Antrea CNI plugin, offering fine-grained control over pod-to-pod communication.

Antrea for Open vSwitch-based Networking

Kubernetes networking solution using Open vSwitch for improved performance and advanced networking features.

Apache OpenWhisk

Open-source serverless platform that executes functions in response to events or direct invocations.

AppArmor Profiles

Security profiles for Linux that restrict program capabilities, enhancing container isolation and security.

Application-level Logging

Logging implemented within applications, providing detailed insights into application behavior and performance.

Aqua Security

Platform providing security and compliance for container-based and cloud-native applications throughout their lifecycle.

Aqua Security Platform

Comprehensive security solution for containerized and cloud-native environments, offering vulnerability management and runtime protection.

Argo CD

GitOps continuous delivery tool for Kubernetes, automating application deployment and lifecycle management.

Argo Rollouts

Kubernetes controller for advanced deployment strategies like canary and blue-green deployments.

ArgoCD

Declarative GitOps tool for Kubernetes, automating application deployment and synchronization with Git repositories.

Artifact Management

Process of storing, organizing, and managing container images and related artifacts in container registries.

Athenz for Fine-grained Access Control

Open-source platform for fine-grained access control and authentication in distributed systems.

Attribute-Based Access Control (ABAC)

Access control paradigm where authorization decisions are based on attributes of users, resources, and environment.

Audit Annotations

Additional metadata added to Kubernetes audit events for enhanced context and analysis, improving audit trails.

Audit Backends

Components responsible for processing and storing Kubernetes audit logs, supporting various storage and analysis options.

Audit Events

Records of requests and activities within a Kubernetes cluster, used for security monitoring and compliance.

Audit Levels

Configurable detail levels for Kubernetes audit logs, ranging from metadata-only to full request and response details.

Audit Logging

Process of recording API server requests and responses for security, troubleshooting, and compliance purposes.

Audit Logs

Detailed records of activities and operations within a Kubernetes cluster, used for security and compliance monitoring.

Audit Policy

Configuration defining which events should be recorded in Kubernetes audit logs and at what level of detail.

Audit Profile

Predefined set of audit policy rules for common use cases in Kubernetes, simplifying audit configuration.

Audit Stages

Different phases of request processing where audit events can be generated in Kubernetes, providing comprehensive auditing.

Audit Webhook Configuration

Setup for sending Kubernetes audit events to external webhook endpoints for processing or analysis.

Auditing

Process of systematically recording and examining activities within a Kubernetes cluster for security and compliance purposes.

Authenticating Proxy

Intermediary service that handles authentication before forwarding requests to the Kubernetes API server.

Authentication Modules

Pluggable components in container orchestration platforms for verifying user identities using various methods.

Authorization Policies

Rules defining access permissions for users and services in container orchestration platforms.

Azure Container Instances

Serverless container hosting service in Azure, offering rapid deployment of containers without cluster management.

Azure Container Registry

Managed Docker registry service for storing and managing container images in Azure cloud environments.

BGP (Border Gateway Protocol) in Containers

Implementation of Border Gateway Protocol within containerized network environments for advanced routing.

BGP in Container Networks

In container networks, BGP (Border Gateway Protocol) manages routing information between containers and external networks for efficient traffic routing.

Backend for Frontend (BFF) Pattern

Microservices design pattern where a dedicated service acts as an API gateway for specific frontend needs.

Backup and Restore

Processes for preserving and recovering container data and configurations in orchestration platforms.

Base Image

Foundation Docker image upon which other images are built, containing core OS and runtime components.

Base Image Selection

Process of choosing appropriate foundation images for container builds, balancing size, security, and functionality.

Best Effort QoS

Kubernetes quality of service class for pods with no resource guarantees, scheduled when resources are available.

Blue-Green Deployments

Deployment strategy using two identical environments to minimize downtime and risk during updates.

Bootstrap Tokens

Temporary tokens used for secure cluster initialization and node joining in Kubernetes, simplifying cluster setup.

Bottlerocket OS

Minimalist Linux-based operating system optimized for running containers in cloud environments.

BuildKit

Advanced container image building toolkit offering improved performance and caching capabilities.

BuildKit for Advanced Image Building

Use of BuildKit for efficient, concurrent, and cache-optimized container image creation, improving build performance.

Bulkhead Pattern

Isolation technique in microservices to contain failures and prevent system-wide cascading failures.

Bulkhead Pattern in Microservices

The Bulkhead Pattern in microservices isolates failures by dividing services into separate compartments, preventing issues in one from affecting others.

Burstable QoS

Kubernetes quality of service class for pods that can use more resources than requested when available.

CIS Benchmarks for Containers

Security configuration guidelines for deploying containers securely in various environments.

CNI Plugin Chaining

Technique of using multiple Container Network Interface plugins together for advanced networking capabilities.

CPU Manager

Kubernetes feature for fine-grained CPU resource management and allocation to containers, optimizing performance.

CPU Throttling

Technique to limit CPU usage of containers to prevent resource monopolization and ensure fair allocation.

CQRS (Command Query Responsibility Segregation)

Architectural pattern separating read and write operations in distributed systems, often used in microservices.

CQRS (Command Query Responsibility Segregation) Pattern

Architectural pattern separating read and write operations in distributed systems, often used in microservices.

CRI (Container Runtime Interface) Specification

Standard interface between container runtimes and Kubernetes, allowing pluggable runtime implementations.

CRI Image Management

Functionality within CRI for pulling, inspecting, and removing container images, standardizing image operations.

CRI Logging

Standardized logging interface for container runtimes implementing the Container Runtime Interface.

CRI Metrics

Performance and resource usage data exposed by container runtimes adhering to the CRI specification.

CRI Runtime Class

Kubernetes feature allowing selection of different runtime configurations for containers, enabling specialized runtimes.

CRI Socket

Unix domain socket used for communication between Kubelet and the CRI-compatible container runtime.

CRI Validation Testing

Process of verifying that a container runtime correctly implements the CRI specification, ensuring compatibility.

CRI-O

Lightweight container runtime specifically designed for Kubernetes, implementing the CRI specification.

CRI-O Internals

Core components and architecture of the CRI-O container runtime, including its interaction with Kubernetes.

CRI-O as Container Runtime

Use of CRI-O, a lightweight container runtime, as the primary runtime in a Kubernetes cluster.

CSI Controller Plugin

Component of CSI responsible for volume provisioning and attachment operations in container orchestration systems.

CSI Drivers

Plugins implementing the Container Storage Interface for various storage systems in Kubernetes.

CSI Ephemeral Volumes

Short-lived volumes in Kubernetes, created and deleted alongside a pod using CSI drivers, for temporary storage.

CSI Migration

Process of transitioning from in-tree volume plugins to CSI drivers in Kubernetes, improving storage extensibility.

CSI Node Plugin

Component of CSI responsible for mounting volumes and making them available to containers.

CSI Topology

Feature allowing storage provisioning based on topology constraints in Kubernetes, optimizing data locality.

Cache-Aside Pattern

Caching strategy where the application checks the cache before retrieving data from the main data store.

Caching Strategies for Containers

Techniques for implementing and managing caches in containerized applications for improved performance.

Calico

Open-source networking and network security solution for containers, providing a rich set of security policies.

Calico eBPF Datapath

High-performance networking mode in Calico using extended Berkeley Packet Filter for packet processing.

Canary Deployments

Technique of releasing new versions to a subset of users or servers to minimize risk and gather feedback.

Capabilities

Fine-grained privileges that can be assigned to containers, enhancing security by limiting root-level access.

Capability Controls

Mechanisms for managing and restricting Linux capabilities assigned to containers for improved security.

Categories

Groupings or classifications of container-related resources or components for easier management and discovery.

Ceph RBD

Ceph's block storage system, often used for persistent volumes in container orchestration platforms.