Software & Development Glossary

Development tools, methodologies, APIs, frameworks, and software engineering practices for the cloud.

79 Terms
All Skill Levels
Real Examples
21
Basic Terms
26
Intermediate Terms
32
Advanced Terms

79 Terms

API

intermediate

Application Programming Interface - a way for different software applications to communicate with each other. Like a waiter who takes your order and brings food from the kitchen.

Example: When you check the weather on your phone, the weather app uses an API to get current weather data fr...

Microservices

advanced

Building applications as small, independent services that work together. Like a restaurant where different stations handle appetizers, main courses, and desserts separately.

Example: Netflix uses microservices where separate teams handle user accounts, recommendations, video streami...

Stateless

intermediate

Architecture where each request is completely independent with no memory of previous requests. Like a vending machine that doesn't remember who used it before - every transaction is fresh.

Example: A stateless web API treats each request separately, so you can send the same request to any server i...

Orchestration

advanced

Automated coordination and management of multiple cloud services, containers, or workflows to work together efficiently. Like a conductor directing an orchestra where each musician plays their part at the right time.

Example: Kubernetes orchestrates hundreds of containers, automatically starting, stopping, and moving them be...

Middleware

intermediate

Software that connects different applications, services, or systems to help them communicate and share data. Like a translator that helps two people speaking different languages understand each other.

Example: Middleware connects your mobile banking app to the bank's database systems, translating requests and...

CloudFormation

advanced

AWS Infrastructure as Code service that lets you define your infrastructure using templates. Like having blueprints that can automatically build identical buildings.

Example: A company uses CloudFormation templates to create identical development, staging, and production env...

CodeCommit

basic

AWS managed Git repository service for storing and versioning code. Like a secure digital filing cabinet for your code that tracks every change.

Example: A development team uses CodeCommit to store their application code and collaborate on features....

CodePipeline

advanced

AWS continuous integration and deployment service that automates your software release process. Like a factory assembly line for code that automatically tests and deploys changes.

Example: When developers push code changes, CodePipeline automatically runs tests and deploys successful buil...

CodeBuild

intermediate

AWS service that compiles source code, runs tests, and produces software packages. Like having a dedicated worker that takes raw materials and creates finished products.

Example: CodeBuild automatically compiles Java applications and runs unit tests whenever new code is committe...

REST

intermediate

Representational State Transfer - a set of rules for building web APIs that are simple and scalable. Like having a standardized menu format that all restaurants can use.

Example: Mobile apps use REST APIs to get data from servers, such as retrieving user profiles or posting phot...

JSON

basic

JavaScript Object Notation - a lightweight format for storing and transporting data. Like a universal language for computers to exchange information.

Example: Weather apps receive data in JSON format, such as '{"temperature": 72, "condition": "sunny", "humidi...

XML

intermediate

eXtensible Markup Language - a markup language for storing and transporting structured data. Like HTML but designed for data instead of web pages.

Example: Bank systems often exchange transaction data using XML format because it's both human-readable and m...

Logic Apps

intermediate

Azure service for creating workflows that integrate apps, data, and services across organizations. Like having a digital assistant that can connect different software tools and make them work together.

Example: A company uses Logic Apps to automatically save email attachments to SharePoint and notify the team ...

Event-Driven Architecture

advanced

Software design where components communicate through events rather than direct calls. Like a newspaper where different departments react to breaking news independently.

Example: When a customer places an order, it triggers events for inventory, shipping, and billing systems sim...

Terraform

advanced

Open-source Infrastructure as Code tool for building, changing, and versioning infrastructure. Like having blueprints and construction management for cloud resources.

Example: DevOps teams use Terraform to create identical cloud environments across development, staging, and p...

Ansible

advanced

Automation platform for configuration management, application deployment, and task automation. Like having a universal remote control for managing all your servers.

Example: System administrators use Ansible to install software updates across hundreds of servers simultaneou...

Jenkins

intermediate

Open-source automation server for continuous integration and deployment. Like having a dedicated quality control manager who automatically tests and delivers your products.

Example: Development teams use Jenkins to automatically run tests and deploy code whenever changes are made....

Load Testing

intermediate

Testing how well a system performs under expected user load. Like seeing how many people can fit in an elevator before it becomes uncomfortable.

Example: Before Black Friday, e-commerce sites do load testing to ensure their websites can handle millions o...

Step Functions

advanced

AWS service for coordinating multiple AWS services into serverless workflows. Like a conductor orchestrating different musicians to play a symphony together.

Example: An order processing workflow uses Step Functions to coordinate payment, inventory check, and shippin...

Service Fabric

advanced

Azure platform for building and managing microservices and container applications. Like a framework for building complex applications from many small, independent pieces.

Example: A large enterprise uses Service Fabric to build a customer management system from dozens of intercon...

Istio

advanced

Service mesh platform that provides traffic management, security, and observability for microservices. Like having a smart traffic control system for communication between application components.

Example: A company uses Istio to automatically encrypt all communication between their microservices and moni...

CNCF

intermediate

Cloud Native Computing Foundation - organization that promotes cloud-native technologies and open source projects. Like a governing body that sets standards for modern cloud applications.

Example: Kubernetes, Prometheus, and many other popular cloud tools are CNCF projects with community governan...

GraphQL

intermediate

Query language and runtime for APIs that allows clients to request specific data. Like having a restaurant where you can order exactly the ingredients you want instead of preset meals.

Example: Mobile apps use GraphQL to request only the user data they need, reducing bandwidth and improving pe...

gRPC

advanced

High-performance Remote Procedure Call framework that can run in any environment. Like having a super-fast telephone system for applications to call functions on other computers.

Example: Microservices use gRPC for efficient communication, reducing latency compared to traditional REST AP...

API Gateway

intermediate

Service that manages and routes API requests between clients and backend services. Like a receptionist that directs visitors to the right department and handles basic requests.

Example: Mobile apps send requests through an API Gateway which routes them to appropriate microservices and ...

Webhook

intermediate

Method for applications to provide real-time information to other applications via HTTP callbacks. Like having automatic notifications sent when specific events happen.

Example: Payment systems use webhooks to instantly notify e-commerce sites when transactions are completed....

SDK

basic

Software Development Kit - collection of tools, libraries, and documentation for building applications. Like a toolbox with everything needed to build a specific type of project.

Example: Mobile developers use the iOS SDK to build iPhone apps with access to camera, GPS, and other device ...

CDK

advanced

Cloud Development Kit - framework for defining cloud infrastructure using familiar programming languages. Like writing cloud infrastructure using the same code you use for applications.

Example: Developers use AWS CDK to define their cloud infrastructure using Python or TypeScript instead of YA...

SLO

intermediate

Service Level Objective - specific measurable target for service performance. Like setting a goal to answer customer calls within 30 seconds, 95% of the time.

Example: A web service sets an SLO of responding to API requests within 200 milliseconds for 99% of requests....

AWS Config

advanced

AWS service for monitoring and evaluating AWS resource configurations. Like having an audit system that tracks all changes to your cloud infrastructure.

Example: Compliance teams use AWS Config to ensure all S3 buckets follow security policies and detect unautho...

Systems Manager

intermediate

AWS service for managing and configuring Amazon EC2 instances and on-premises servers. Like having a universal remote control for all your servers.

Example: IT teams use Systems Manager to install security patches across hundreds of servers simultaneously....

YAML

basic

Yet Another Markup Language - human-readable data serialization standard. Like a simple format for writing configuration files that both humans and computers can easily understand.

Example: DevOps teams write Kubernetes deployment configurations in YAML format because it's easy to read and...

CRUD

basic

Create, Read, Update, Delete - the four basic operations for managing data in databases. Like the essential actions you can perform on any information: add, view, change, and remove.

Example: Web applications typically provide CRUD functionality, allowing users to create posts, read them, up...

Circuit Breaker

advanced

Design pattern that prevents cascading failures by stopping calls to failing services. Like having electrical breakers that shut off power to prevent house fires.

Example: Microservices implement circuit breakers to avoid overwhelming failing payment services during high-...

Bulkhead

advanced

Design pattern that isolates critical resources to prevent total system failure. Like having watertight compartments on a ship so one leak doesn't sink the entire vessel.

Example: E-commerce sites use bulkhead patterns to ensure payment processing continues working even if produc...

Saga Pattern

advanced

Design pattern for managing distributed transactions across multiple services. Like coordinating a complex group project where different people handle different parts.

Example: Online booking systems use saga patterns to coordinate hotel, flight, and car rental reservations in...

Agile

basic

Software development methodology emphasizing flexibility, collaboration, and rapid iteration. Like building something by making small improvements based on regular feedback.

Example: Development teams use Agile methodology to deliver working software features every 2-3 weeks instead...

Scrum

intermediate

Agile framework for managing software development with defined roles, events, and artifacts. Like having a structured game plan with specific positions and plays for team coordination.

Example: Software teams use Scrum with daily standups, sprint planning, and retrospectives to build products ...

Kanban

basic

Visual workflow management method for tracking work progress. Like having a board with columns showing what needs to be done, what's in progress, and what's completed.

Example: Support teams use Kanban boards to track customer issues from 'New' to 'In Progress' to 'Resolved' c...

Service Mesh

advanced

Infrastructure layer that manages service-to-service communication in microservices architectures. Like having a smart postal system specifically designed for application communication.

Example: Large-scale applications use service mesh to automatically handle security, monitoring, and traffic ...

Sidecar Pattern

advanced

Design pattern where helper components are deployed alongside main applications. Like having a personal assistant that helps with specific tasks while you focus on your main work.

Example: Applications use sidecar containers to handle logging, monitoring, and security without modifying th...

Ambassador Pattern

advanced

Design pattern using proxy services to handle external communications. Like having diplomats who handle all international communications on behalf of your organization.

Example: Microservices use ambassador containers to handle all external API calls with retry logic and rate l...

IDE

basic

Integrated Development Environment - software application providing comprehensive facilities for software development. Like having a complete workshop with all tools needed for building applications.

Example: Developers use IDEs like Visual Studio Code or IntelliJ to write, debug, and test their code all in ...

AWS Organizations

advanced

AWS service for centrally managing multiple AWS accounts. Like having a corporate headquarters that manages all branch offices with consistent policies.

Example: Large enterprises use AWS Organizations to apply security policies and manage billing across hundred...

Control Tower

advanced

AWS service for setting up and governing secure, multi-account AWS environments. Like having an automated system that sets up new offices with all security and compliance measures in place.

Example: Organizations use Control Tower to quickly establish new AWS accounts with pre-configured security g...

Cloud Endpoints

intermediate

Google Cloud service for developing, deploying, and managing APIs. Like having a professional receptionist service that handles all API requests and manages access.

Example: Mobile app backends use Cloud Endpoints to manage API authentication, monitoring, and rate limiting....

Zero Downtime Deployment

advanced

Deployment strategy that updates applications without any service interruption. Like renovating a store while keeping it open for customers by working on one section at a time.

Example: E-commerce platforms use zero downtime deployment to release new features without disrupting custome...

Immutable Infrastructure

advanced

Infrastructure approach where servers are never modified after deployment, only replaced. Like using disposable plates instead of washing dishes - throw away and get fresh ones.

Example: Cloud-native applications use immutable infrastructure by creating new server images for every deplo...

Chaos Engineering

advanced

Practice of intentionally introducing failures to test system resilience. Like conducting fire drills to ensure everyone knows how to respond to emergencies.

Example: Netflix practices chaos engineering by randomly terminating servers in production to verify their sy...

Feature Flag

intermediate

Technique for enabling or disabling application features without deploying new code. Like having light switches for different features that can be turned on or off remotely.

Example: Development teams use feature flags to gradually roll out new features to small groups of users befo...

Technical Debt

intermediate

Cost of additional rework caused by choosing quick solutions instead of better approaches. Like taking shortcuts when building a house that require expensive fixes later.

Example: Development teams regularly assess technical debt to decide when to refactor code for better long-te...

Event Sourcing

advanced

Pattern of storing all changes to application state as a sequence of events. Like keeping a detailed diary of everything that happened instead of just the current situation.

Example: Banking systems use event sourcing to track every transaction, allowing them to reconstruct account ...

CQRS

advanced

Command Query Responsibility Segregation - pattern that separates read and write operations for data stores. Like having separate express lanes for deposits and withdrawals at a bank.

Example: E-commerce platforms use CQRS to optimize product searches separately from inventory updates for bet...

Domain-Driven Design

advanced

Software development approach that focuses on modeling software to match business domains. Like designing software to mirror how the actual business operates.

Example: Enterprise applications use domain-driven design to ensure the software structure reflects real busi...

RTO

intermediate

Recovery Time Objective - maximum acceptable time to restore service after a failure. Like setting a goal to reopen a store within 2 hours after any emergency closure.

Example: E-commerce companies set RTO of 15 minutes, meaning they must restore service within 15 minutes of a...

RPO

intermediate

Recovery Point Objective - maximum acceptable amount of data loss measured in time. Like deciding you can afford to lose at most 1 hour of work if your computer crashes.

Example: Financial services set RPO of 1 minute, meaning they can lose at most 1 minute of transaction data i...

MTTR

intermediate

Mean Time To Recovery - average time needed to restore service after a failure. Like measuring how long it typically takes to fix different types of problems.

Example: Operations teams track MTTR to improve their incident response processes and reduce service disrupti...

MTBF

intermediate

Mean Time Between Failures - average time between system failures. Like measuring how long equipment typically works before needing repairs.

Example: Data centers track MTBF for servers to predict when hardware replacements will be needed....

Disaster Recovery

basic

Plans and processes to restore technology systems after catastrophic events like fires, floods, or cyberattacks. Like having an emergency evacuation plan for your digital business.

Example: When a hurricane destroyed their main data center, the company used their disaster recovery plan to ...

Business Continuity

basic

Strategy for keeping critical business operations running during and after disasters or disruptions. Like having backup plans to keep your store open even during emergencies.

Example: During the pandemic, companies with business continuity plans quickly shifted to remote work while m...

DR Testing

basic

Regularly practicing disaster recovery procedures to ensure they work when needed. Like fire drills that prepare you for real emergencies.

Example: Companies perform quarterly DR tests where they intentionally switch to backup systems to verify rec...

Argo CD

advanced

GitOps continuous delivery tool for Kubernetes supporting multi-cluster deployments. Like having an automated deployment system that keeps your applications synchronized across multiple environments.

Example: DevOps teams use Argo CD to automatically deploy applications to development, staging, and productio...

Website

basic

A collection of web pages accessible via the internet that contains information, images, videos, or other content. Like a digital brochure or magazine that anyone can visit.

Example: Amazon's website allows customers to browse products, read reviews, and make purchases online....

Web Browser

basic

Software application that lets you access and view websites on the internet. Like a window that shows you different websites when you type in their addresses.

Example: Chrome, Firefox, Safari, and Edge are popular web browsers that people use to visit websites....

Operating System

basic

The main software that manages your computer and runs other programs. Like the manager of a building who makes sure everything works properly.

Example: Windows, macOS, and Android are operating systems that control how your devices work and run apps....

Software

basic

Computer programs and applications that tell hardware what to do. Like instructions or recipes that make computers perform specific tasks.

Example: Microsoft Word, Instagram, and your calculator app are all examples of software that run on your dev...

Application

basic

A software program designed for end users to accomplish specific tasks. Like specialized tools - a calculator app for math, a camera app for photos.

Example: Netflix, Spotify, and your banking app are applications that help you watch videos, listen to music,...

Mobile App

basic

An application specifically designed to run on smartphones and tablets. Like pocket-sized tools that you can use anywhere.

Example: Instagram, Uber, and WhatsApp are mobile apps that let you share photos, get rides, and send message...

User Interface

basic

The visual elements (buttons, menus, screens) that let you interact with software. Like the dashboard and controls in a car that help you drive.

Example: The home screen of your phone, with its icons and menus, is a user interface that helps you access d...

Search Engine

basic

A website that helps you find information on the internet by typing keywords. Like a librarian who can instantly find any book or information you need.

Example: Google, Bing, and Yahoo are search engines that help you find websites, images, and answers to quest...

Keywords

basic

Specific words or phrases you type into search engines to find information. Like asking for directions by naming the specific place you want to go.

Example: Typing 'best pizza near me' uses keywords to help search engines find local pizza restaurants....

Automatic Updates

basic

Software that updates itself without you having to manually install new versions. Like having a car that automatically gets the latest safety features overnight.

Example: Your smartphone apps receive automatic updates to fix bugs and add new features without you needing ...

DevOps

intermediate

Development and Operations combined - practices that unify software development and IT operations for faster, more reliable releases. Like having builders and maintenance crews work together instead of separately.

Example: DevOps teams use automation and collaboration tools to deploy new features multiple times per day in...

CI/CD

intermediate

Continuous Integration/Continuous Deployment - automated process for testing and deploying code changes quickly and safely. Like an assembly line that automatically tests and ships products.

Example: When developers push code changes, CI/CD automatically runs tests and deploys to production if every...

Blue-Green Deployment

advanced

Deployment strategy using two identical environments where you switch traffic from old version to new version instantly. Like having two identical stages where you prepare the new show while the old one is running.

Example: You deploy the new version to the 'green' environment, test it thoroughly, then instantly switch all...

Canary Deployment

advanced

Gradual deployment strategy that releases changes to a small subset of users first before rolling out to everyone. Like testing a new recipe on a few customers before adding it to the full menu.

Example: Release the new feature to 5% of users, monitor for issues, then gradually increase to 25%, 50%, and...

GitOps

advanced

Deployment approach where infrastructure and application changes are managed through Git version control. Like using a blueprint repository where every change is tracked and can be reversed.

Example: Infrastructure changes are made by submitting pull requests to Git, which automatically updates the ...

SLA

intermediate

Service Level Agreement - a commitment between service provider and customer defining expected performance and reliability. Like a warranty that promises your service will work 99.9% of the time or you get compensation.

Example: Cloud providers offer SLAs guaranteeing 99.99% uptime, meaning your application should only be down ...

SRE

advanced

Site Reliability Engineering - approach that applies software engineering principles to infrastructure and operations. Like having software developers who specialize in making systems reliable and scalable.

Example: SRE teams write code to automate operations tasks, design systems for reliability, and set error bud...