Design or assess Azure system architectures, operations, and cloud service choices.
Copy the install command and let the AI configure it · recommended for beginners
Please install the "system-type-azure" skill from askskill: 1. Download https://raw.githubusercontent.com/microsoft/amplifier-bundle-systems-design/main/skills/system-type-azure/SKILL.md 2. Save it as ~/.claude/skills/system-type-azure/SKILL.md 3. Reload skills and tell me it's ready
I am designing a high-traffic web application on Azure and need to choose between VMs, AKS, App Service, and Functions. Recommend the best options based on traffic variability, operational complexity, scalability, cost, and deployment model, and explain the trade-offs.
A comparison of Azure compute services with recommended choices and rationale.
Review this Azure architecture: App Service for frontend, Entra ID for identity, Azure SQL for database, Service Bus for messaging, and multi-region disaster recovery. Identify risks and improvements across security, networking, availability, cost, monitoring, and operations.
An architecture review with risks, optimization suggestions, and priorities.
I need to build a data-driven system on Azure with a transactional database, analytics warehouse, event-driven integration, and CI/CD delivery. Recommend suitable data platforms, messaging services, deployment patterns, and cost-control strategies, and provide a reference architecture.
A reference architecture covering Azure data, integration, and deployment choices.
Patterns, failure modes, and anti-patterns for systems built on Microsoft Azure.
When to use. Web applications, REST APIs, and backend services where you want managed infrastructure with zero Kubernetes overhead. Supports .NET, Java, Node.js, Python, Go. Built-in autoscaling, deployment slots, and custom domains with managed TLS. When to avoid. Workloads that need GPU, custom networking at the host level, or containers with sidecar patterns. When per-second billing matters (App Service charges per plan, not per request). Workloads that need sub-second cold start. Key decisions. Plan tier (Free/Basic for dev, Standard/Premium for production — Premium required for VNet integration and deployment slots), Linux vs Windows, scaling rules (CPU, memory, HTTP queue length, custom metrics), always-on setting (prevents cold starts on Standard+), deployment slot swap strategy.
When to use. Event-driven, short-lived compute — HTTP triggers, queue processors, timer-based jobs, event hub consumers. Consumption plan gives true pay-per-execution. Ideal for glue logic, webhooks, and lightweight APIs. When to avoid. Long-running processes (Consumption plan has a 5/10-minute timeout). Workloads with sustained high throughput (Consumption plan cold starts add latency; Premium or Dedicated plan negates the cost advantage). Complex orchestration (use Durable Functions or Container Apps instead). Key decisions. Hosting plan (Consumption for sporadic traffic, Premium for VNet and pre-warmed instances, Dedicated for predictable load), runtime version, trigger binding selection, Durable Functions for orchestration/fan-out, function app isolation boundaries (one app per domain concern).
When to use. Containerized microservices and APIs when you want Kubernetes-like capabilities (scaling, Dapr, service discovery, revisions) without managing a cluster. Built on Kubernetes but abstracts it away. Supports scale-to-zero. When to avoid. When you need full Kubernetes control (custom operators, CRDs, node-level config). Workloads requiring GPU. When the team has deep Kubernetes expertise and the abstraction layer gets in the way. Key decisions. Environment design (shared environments for related services, separate for isolation), Dapr sidecar usage (service invocation, state, pub/sub), scaling rules (HTTP concurrency, KEDA scalers for queues/events), revision management, ingress configuration (internal vs external).
When to use. Complex containerized workloads that need full Kubernetes control — custom operators, advanced scheduling, node pools with specific hardware (GPU, high-memory), tight integration with the Kubernetes ecosystem. When the team has Kubernetes expertise. When to avoid. Simple web apps or APIs (App Service or Container Apps are simpler). Small teams without Kubernetes experience — the operational burden is significant. When the Kubernetes features you'd use are already available in Container Apps. Key decisions. Node pool strategy (system vs user pools, spot instances for batch), networking model (kubenet vs Azure CNI — CNI required for VNet pod-level networking), cluster autoscaler vs KEDA, managed identity for pod identity (Workload Identity), upgrade strategy (blue-green node pools vs rolling), monitoring (Container Insights, Prometheus).
When to use. Workloads that need full OS control — legacy applications, license-constrained software (BYOL), custom kernel requirements, GPU workloads not supported by higher-level services. Lift-and-shift migrations. When to avoid. Greenfield applications where managed services exist. Any workload where you'd be building infrastructure that Azure already provides (load balancing, auto-restart, scaling, patching).
…
Design and assess enterprise integration patterns, legacy modernization, and orchestration strategies.
Review system designs with a seven-step method to surface risks and improvements.
Evaluate system designs through Unix/Linux principles for simplicity and composability.
Design and evaluate data pipelines, streaming systems, and ETL architecture patterns.
Design and assess multi-tenant SaaS architecture, isolation, billing, and resilience.
Design offline-first edge systems with sync, conflict handling, and weak-network resilience.
Design and assess ML training, serving, and experimentation system architectures.
Design and evaluate CLI tools and developer SDK architecture and usability.
Design or evaluate web services, APIs, scalability, and reliability tradeoffs.
Design or assess SPA architecture across routing, state, performance, and offline support.
Design and evaluate event-driven, message-based, and asynchronous system architectures.
Analyze cloud architectures and generate recommendations, diagrams, and ADRs across major clouds.