Use when designing, debugging or reviewing Lambda, API Gateway, SQS, SNS, EventBridge or Step Functions code and configuration: cold starts and INIT billing, Lambda Layers, packaging and shared dependencies, deployment package size, concurrency, runtime choice, Powertools, logging and tracing, alarms, retries and DLQs, payload limits, or choosing HTTP API or REST API, Lambda or Step Functions, Lambda or ECS. Not for creating a new service from a template (creating-aws-projects).
97%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Low
Low-risk findings worth noting
| Topic | Reference File | Key Insight |
|---|---|---|
| Lambda internals | references/lambda-patterns.md | Cold start happens per concurrent execution, not just once |
| Lambda Layers | references/lambda-patterns.md | Binaries, custom runtimes and Powertools; NOT a package manager |
| Observability | references/lambda-powertools.md | Structured JSON logs; choose tracing deliberately (X-Ray SDK is in maintenance) |
| Monitoring/alarms | references/monitoring.md | Alert on symptoms (errors, latency), not causes (CPU) |
| Event-driven | references/event-driven.md | Single Lambda vs Step Functions decision; Standard/Express/Hybrid; Saga pattern |
| API Gateway | references/api-gateway.md | HTTP API ~70% cheaper; use REST API only for WAF/caching/usage plans |
requests or pydantic are not layer candidates. Each function bundles what it imports, from a lockfile.logging_config { log_format = "JSON" } and use the language's logger, or Powertools Logger. Set the log level in one place, not in both"Use Lambda to transform data, not to transport data between services." — Jérôme Van Der Linden
| Use Lambda When | Use Step Functions When |
|---|---|
| Single operation < 15 mins | Workflow with multiple steps |
| Simple request-response | Need retry/error handling per step |
| Stateless processing | Long-running or human-in-loop |
| Visual workflow debugging needed |
| Use Lambda When | Use ECS When |
|---|---|
| Execution < 15 minutes | Long-running processes |
| Bursty, unpredictable traffic | Steady, high-volume traffic |
| Cold start acceptable | Sub-100ms latency required |
| Pay-per-invocation preferred | Need GPU or special hardware |
For prices, use the AWS Pricing MCP server (awslabs.aws-pricing-mcp-server). Its README has the setup. Prices in this skill are dated examples, not quotes.
| Feature | AWS GA | Supported Runtimes |
|---|---|---|
| SnapStart | Nov 2021 (Java); Oct 2024 (Python, .NET) | Java 11+, Python 3.12+, .NET 8+ — not Node, Ruby, or container images |
Load references based on what the user is asking:
references/lambda-patterns.mdreferences/lambda-powertools.mdreferences/monitoring.mdreferences/event-driven.mdreferences/api-gateway.mda-pavithraa/aws-serverless-skill
d96e7f9
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.