Engineering Glossary
A curated dictionary of software engineering terms
Webpack
Webpack is a JavaScript module bundler that takes a project's source files (JS,
Vue.js
Vue.js is a progressive JavaScript framework for building user interfaces, created by Evan You
Vite
Vite is a front-end build tool created by Evan You (the creator of Vue), designed
Helm
Helm is to Kubernetes what apt is to Ubuntu or npm is to Node.js.
ArgoCD
ArgoCD is a Kubernetes controller that continuously watches a Git repository and ensures your cluster&
Pulumi
Pulumi is an Infrastructure as Code platform that challenges Terraform's HCL-based approach by
HashiCorp Vault
HashiCorp Vault is the de facto secrets management solution for production infrastructure. Instead of storing
Caddy
Caddy is an open-source web server built with a single design priority: automatic HTTPS. By
Traefik
Traefik (pronounced "traffic") is a reverse proxy built for dynamic environments. Where Nginx
Cloudflare Tunnel
Cloudflare Tunnel (formerly Argo Tunnel) creates an outbound-only encrypted connection from your server to Cloudflare&
WireGuard
WireGuard is a VPN protocol created by Jason Donenfeld and merged into the Linux kernel
Tailscale
Tailscale takes the cryptographic strength of Wireguard and wraps it in a coordination layer that
Inference Endpoint
An inference endpoint is the serving layer for a trained model. After training (or downloading)
Tokenization
Tokenization is the first step in any LLM pipeline: converting raw text into a sequence
RLHF (Reinforcement Learning from Human Feedback)
RLHF is the training recipe that turned raw language models (good at predicting text) into
LoRA (Low-Rank Adaptation)
LoRA (Low-Rank Adaptation) is a fine-tuning method introduced by Hu et al. at Microsoft in
System Prompt
In the chat completions API format used by OpenAI, Anthropic, Google, and others, messages come
Prompt Engineering
Prompt engineering is the discipline of communicating effectively with large language models. Because LLMs are
LangChain
LangChain is an open-source framework that provides building blocks for LLM applications. Rather than calling
OpenRouter
OpenRouter is an API aggregator for LLMs. Instead of managing separate API keys for OpenAI,
OpenHands
OpenHands (formerly OpenDevin) is an open-source platform for AI software engineering agents. Unlike Cursor or
Windsurf
Windsurf (by Codeium) is an AI IDE that competes directly with Cursor. Its key differentiator
GitHub Copilot
GitHub Copilot, launched in 2021 and built on OpenAI Codex (later GPT-4), was the first
Cursor
Cursor is a fork of VS Code that reimagines the editor as an AI-native environment.
vLLM
vLLM (Virtual LLM) is an open-source inference engine from UC Berkeley that dramatically increases the
Ollama
Ollama makes running open-source LLMs as straightforward as running a Docker container. You pull a
MCP (Model Context Protocol)
Model Context Protocol (MCP) is an open standard introduced by Anthropic in late 2024 that
TypeScript
TypeScript is a typed superset of JavaScript developed by Microsoft. It adds static types, type
Tailwind CSS
Tailwind CSS is a utility-first CSS framework that gives developers a large set of low-level
Svelte
Svelte is a JavaScript UI framework that shifts most of the work from runtime to
Server-Side Rendering (SSR)
Server-Side Rendering (SSR) is the practice of rendering a page's HTML on the
Remix
Remix is a React framework focused on web-fundamentals: HTML forms, progressive enhancement, nested routing, and
React
React is an open-source JavaScript library for building user interfaces, created at Facebook (now Meta)
Nuxt
Nuxt is the production framework for Vue, analogous to Next.js for React. It provides
Next.js
Next.js is the most widely used React framework, maintained by Vercel. It adds file-based
JSX (JavaScript XML)
JSX (JavaScript XML) is a syntax extension to JavaScript that allows HTML-like markup to be
Client-Side Rendering (CSR)
Client-Side Rendering (CSR) is the pattern where the server returns a minimal HTML shell and
Astro
Astro is a web framework built around the "islands architecture": pages are server-rendered
Angular
Angular is an opinionated TypeScript front-end framework maintained by Google. Unlike React or Vue (libraries
Spring Boot
Spring Boot is the most widely used Java framework for building production server applications. Built
Rust
Rust is a systems programming language focused on memory safety without a garbage collector, achieved
Ruby on Rails
Ruby on Rails (or just Rails) is a server-side web framework written in Ruby and
RabbitMQ
RabbitMQ is an open-source message broker that implements the AMQP protocol along with several others
ORM
An ORM (Object-Relational Mapper) is a library that translates between application objects and relational database
Node.js
Node.js is a JavaScript runtime built on the V8 engine that runs JavaScript outside
NestJS
NestJS is a TypeScript-first Node.js framework that brings Angular-style structure to the server: modules,
Middleware
Middleware is a function (or class) that sits in the request-handling pipeline of a web
Apache Kafka
Apache Kafka is a distributed event streaming platform: a high-throughput, append-only log that producers write
Go
Go (or Golang) is a compiled, statically typed programming language created at Google in 2009,
FastAPI
FastAPI is a modern Python web framework for building APIs, built on Starlette (ASGI) and
Express
Express is the most widely deployed Node.js web framework, providing a minimal, unopinionated layer
Django
Django is a high-level Python web framework that takes a "batteries included" approach:
Deno
Deno is a JavaScript and TypeScript runtime created by Ryan Dahl (the creator of Node.
Deno
Deno is a JavaScript and TypeScript runtime created by Ryan Dahl (the creator of Node.
Bun
Bun is a JavaScript runtime, bundler, transpiler, package manager, and test runner built in Zig
Bun
Bun is a JavaScript runtime, bundler, transpiler, package manager, and test runner built in Zig
Push Notifications
Push notifications are short messages that a backend server delivers to a user's
PWA
A Progressive Web App (PWA) is a web application that uses modern browser capabilities to
Jetpack Compose
Jetpack Compose is Google's declarative UI framework for Android, built around Kotlin and
SwiftUI
SwiftUI is Apple's declarative UI framework for building user interfaces across iOS, iPadOS,
Flutter
Flutter is Google's cross-platform UI framework for building applications from a single Dart
React Native
React Native is a cross-platform framework from Meta that lets developers build iOS and Android
Kotlin
Kotlin is a statically typed, modern programming language developed by JetBrains and adopted by Google
Swift
Swift is Apple's modern programming language, introduced in 2014 as the successor to
Android
Android is Google's open-source mobile operating system, powering the majority of the world&
iOS
iOS is Apple's mobile operating system, powering the iPhone, iPad (as iPadOS, a
Availability Zone
An availability zone (AZ) is an isolated data centre within a cloud region. AZs in
Region
A region in cloud computing is a geographic area in which a cloud provider operates
EC2
Amazon EC2 (Elastic Compute Cloud) is AWS's primary virtual machine service. EC2 provisions
Lambda
AWS Lambda is Amazon's serverless function-as-a-service (FaaS). It runs short-lived functions in response
S3
Amazon S3 (Simple Storage Service) is AWS's object storage service. It stores arbitrary
Redis Cluster
Redis Cluster is Redis's native sharding mode. A cluster of Redis nodes partitions
Valkey
Valkey is an open-source, BSD-licensed fork of Redis created in 2024 after Redis Ltd relicensed
In-memory Database
An in-memory database keeps its primary dataset in RAM rather than on disk, trading capacity
pgvector
pgvector is the popular PostgreSQL extension that adds a vector column type, distance operators, and
PostGIS
PostGIS is the geospatial extension for PostgreSQL. It adds geometry and geography data types, hundreds
Replication
Database replication is the practice of keeping multiple copies of the same data on different
Sharding
Sharding is the practice of horizontally partitioning a dataset across multiple database instances so each
Replica Set
A replica set is MongoDB's name for a group of database nodes that
Aggregation Pipeline
The Aggregation Pipeline is MongoDB's framework for transforming and combining documents through a
MongoDB
MongoDB is an open-source document database that stores data as BSON documents grouped into collections.
Redis
Redis (Remote Dictionary Server) is an in-memory data store that holds its dataset in RAM
AWS
Amazon Web Services (AWS) is Amazon's cloud computing platform, comprising more than two
BSON
BSON (Binary JSON) is the binary-encoded serialization format MongoDB uses to store and transmit documents.
Document Database
A document database stores data as self-contained documents (typically JSON or BSON) grouped into collections,
NoSQL
NoSQL is an umbrella term for databases that depart from the strict relational, SQL-based, table-and-row
OLTP
OLTP (Online Transaction Processing) describes the class of database workloads characterised by many short-lived, latency-sensitive
MVCC
Multi-Version Concurrency Control (MVCC) is a concurrency mechanism in which writers do not block readers
ACID
ACID is the set of guarantees a database transaction provides: Atomicity, Consistency, Isolation, Durability. ACID
MySQL
MySQL is one of the most widely deployed open-source relational databases, especially common in web
SQL
SQL (Structured Query Language) is the declarative language for defining, querying, and manipulating relational databases.
Pub/Sub
Pub/Sub (Publish-Subscribe) is a messaging pattern in which producers publish messages to a named
Service Mesh
A service mesh is an infrastructure layer that handles service-to-service communication for a microservices application:
Helm
Helm is the package manager for Kubernetes. It packages a set of Kubernetes manifests into
Container Runtime
A container runtime is the software component that actually creates and runs containers from an
Image Layer
An image layer is one immutable filesystem diff that, when stacked with the layers above
Podman
Podman is an open-source container engine compatible with the Docker CLI but architected without a
Docker Compose
Docker Compose is a tool for defining and running multi-container applications on a single host
BuildKit
BuildKit is the modern build backend for Docker and the OCI ecosystem. It replaces the
OCI
The Open Container Initiative (OCI) is an open governance body, hosted by the Linux Foundation,
containerd
containerd is an industry-standard container runtime daemon that manages the complete container lifecycle on a
Serverless
Serverless is a cloud execution model in which the provider runs and scales the underlying
Cloud Computing
Cloud computing is the model of delivering compute, storage, networking, and software as on-demand services
CAP Theorem
The CAP theorem states that a distributed data store cannot simultaneously provide all three of:
Eventual Consistency
Eventual consistency is the property that, given enough time without new updates, all replicas of
Consensus
Consensus is the problem of getting a set of distributed processes to agree on a
Saga
A Saga is a pattern for executing a business transaction that spans multiple services or
Event-Driven Architecture
Event-Driven Architecture (EDA) is a style in which services communicate by publishing and subscribing to
Modular Monolith
A modular monolith is a single-deployable application built with strict internal module boundaries: clear ownership
Monolith
A monolith is an application packaged and deployed as a single unit: one codebase, one
Pipeline
A pipeline is the automated sequence of stages a code change passes through on its
Feature Flag
A feature flag (also called a feature toggle) is a runtime switch that turns a
Canary Deployment
Canary Deployment is a release strategy that routes a small fraction of traffic to a
Blue-Green Deployment
Blue-Green Deployment is a release strategy that maintains two identical production environments and switches all
ArgoCD
ArgoCD is an open-source declarative continuous-delivery tool for Kubernetes that runs inside the cluster and
GitOps
GitOps is an operational pattern in which the desired state of infrastructure and applications is
SLI
A Service Level Indicator (SLI) is a measurement of how well a service is performing
SLO
A Service Level Objective (SLO) is an internal target for a service's reliability,
Grafana
Grafana is an open-source visualisation and dashboarding platform for time-series and observability data. It connects
Prometheus
Prometheus is an open-source time-series database and monitoring system that scrapes metrics from instrumented applications
OpenTelemetry
OpenTelemetry (OTel) is the CNCF standard for instrumenting applications to produce telemetry: traces, metrics, and
Distributed Tracing
Distributed tracing captures the path of a single request as it travels through multiple services,
Metrics
Metrics are numerical measurements aggregated over time, used for dashboards, alerting, and capacity planning. Where
Logging
Logging is the practice of emitting timestamped records of events from running software so operators
Cache Stampede
A cache stampede (or thundering herd) is the failure mode where many concurrent requests for
TTL
TTL (Time To Live) is the duration for which a cached value, DNS record, or
Memcached
Memcached is an open-source, high-performance, distributed in-memory key-value cache, originally designed to speed up dynamic
Eviction Policy
An eviction policy is the rule a cache uses to decide which entry to remove
CDN
A Content Delivery Network (CDN) is a distributed network of edge servers that cache and
Webhook
A webhook is an HTTP callback that one system sends to another to notify it
API Gateway
An API Gateway is a server that sits in front of a collection of backend
Idempotency
Idempotency is the property that repeating an operation produces the same outcome as performing it
Pagination
Pagination is the API pattern for splitting a large collection into smaller pages so clients
JSON
JSON (JavaScript Object Notation) is a lightweight, text-based data interchange format. It represents data as
OpenAPI
OpenAPI (formerly Swagger) is a specification for describing HTTP APIs in a machine-readable format, typically
HATEOAS
HATEOAS (Hypermedia As The Engine Of Application State) is the principle in Fielding's
gRPC
gRPC is a high-performance RPC framework developed at Google, using HTTP/2 as the transport
GraphQL
GraphQL is an API query language and runtime in which clients request exactly the fields
HTTP
HTTP (Hypertext Transfer Protocol) is the application-layer protocol the web runs on. It defines how
IAM
Identity and Access Management (IAM) is the practice and tooling for defining who can do
Authorization Server
An authorization server is the OAuth 2.0 component that authenticates the resource owner, obtains
Bearer Token
A bearer token is a credential that grants the holder access to a resource simply
JWE
JSON Web Encryption (JWE) is the encryption counterpart to JWS. Where JWS proves integrity and
JWS
JSON Web Signature (JWS) is the cryptographic signing mechanism behind JWT. It defines how to
Refresh Token
A refresh token is a long-lived credential issued alongside a short-lived access token, used to
Session
A session is the server-side state that represents an authenticated user across multiple requests. After
SAML
SAML (Security Assertion Markup Language) is an XML-based standard for exchanging authentication and authorization data
PKCE
PKCE (Proof Key for Code Exchange), pronounced "pixy", is an extension to the
OIDC (OpenID Connect)
OpenID Connect (OIDC) is an authentication layer built on top of OAuth 2.0. Where
RAG
Retrieval-Augmented Generation (RAG) is a technique for letting a large language model answer using external
AI Agents
An AI agent is a system in which an LLM is given a goal and
Context Window
The context window is the maximum amount of text an LLM can process in a
Hallucination
Hallucination is the term for an LLM output that sounds confident but is unsupported by
Fine-tuning
Fine-tuning is the process of taking a pretrained model and continuing to train it on
Reranker
A reranker is a model that takes an initial set of retrieved candidates and re-orders
Chunking
Chunking is the process of splitting documents into smaller passages before embedding them for retrieval.
Vector Database
A vector database is a storage system optimised for similarity search over high-dimensional vectors, typically
Embeddings
Embeddings are dense vector representations of text, images, audio, or other data, learned so that
Distributed Systems
A distributed system is a set of independent computers that coordinate over a network to
JWT
A JSON Web Token (JWT) is a compact, URL-safe token format that carries a signed
Caching
Caching stores the result of an expensive computation or remote call in a fast, nearby
Observability
Observability is the property of a system whose internal state can be inferred from its
CI/CD
CI/CD stands for Continuous Integration and Continuous Delivery (or Continuous Deployment). Together they describe
OAuth 2.0
OAuth 2.0 is an authorization framework that lets an application access resources on behalf
Microservices
Microservices is an architectural style in which a single application is built as a collection
PostgreSQL
PostgreSQL (often just "Postgres") is an open-source relational database management system. It supports
REST API
REST (Representational State Transfer) is an architectural style for building networked APIs in which resources
Kubernetes
Kubernetes (often abbreviated K8s) is an open-source container orchestration platform that treats a cluster of
Docker
Docker is a toolchain for packaging and running Linux containers. It wraps an application together