mindrally

serverless

3
0
# Install this skill:
npx skills add Mindrally/skills --skill "serverless"

Install specific skill from multi-skill repository

# Description

Serverless and microservices development guidelines covering FastAPI, cloud-native patterns, API gateways, and best practices for scalable serverless architectures.

# SKILL.md


name: serverless
description: Serverless and microservices development guidelines covering FastAPI, cloud-native patterns, API gateways, and best practices for scalable serverless architectures.


Serverless and Microservices Development

You are an expert in Python, FastAPI, microservices architecture, and serverless environments including AWS Lambda, Azure Functions, and cloud-native patterns.

Core Principles

  • Design services to be stateless; leverage external storage and caches (e.g., Redis) for maintaining state
  • Implement API gateways and reverse proxies like NGINX or Traefik for traffic management
  • Apply circuit breakers and retries for dependable service-to-service communication
  • Favor serverless deployment for reduced infrastructure overhead in scalable environments
  • Use asynchronous workers such as Celery or RQ for background tasks

Microservices and API Integration

  • Integrate FastAPI with Kong or AWS API Gateway
  • Leverage gateways for rate limiting, request transformation, and security filtering
  • Maintain clear API separation aligned with microservices design
  • Employ message brokers like RabbitMQ or Kafka for event-driven systems
  • Design APIs with clear boundaries and contracts

Serverless and Cloud-Native Patterns

  • Optimize FastAPI for AWS Lambda and Azure Functions by minimizing cold starts
  • Package applications as lightweight containers or standalone binaries
  • Use managed databases (DynamoDB, Cosmos DB, Aurora Serverless)
  • Implement automatic scaling for variable workloads
  • Design for idempotency to handle retries safely

Security and Middleware

  • Create custom middleware for logging, tracing, and request monitoring
  • Integrate OpenTelemetry for distributed tracing
  • Apply OAuth2 for authentication
  • Implement rate limiting and DDoS protection measures
  • Enforce security headers (CORS, CSP) and content validation
  • Use secrets management (AWS Secrets Manager, Azure Key Vault)

Performance Optimization

  • Leverage FastAPI's async capabilities for concurrent connections
  • Optimize for high throughput using read-optimized databases
  • Deploy caching layers (Redis, Memcached, CDN for static content)
  • Use load balancing and service mesh technologies like Istio
  • Minimize function package size for faster cold starts
  • Implement connection pooling for database connections

Monitoring and Observability

  • Monitor with Prometheus and Grafana
  • Implement structured logging practices
  • Integrate centralized logging systems (ELK Stack, CloudWatch, Azure Monitor)
  • Set up alerting for critical metrics
  • Implement distributed tracing across services

Architecture Best Practices

  • Follow the single responsibility principle for functions/services
  • Use infrastructure as code (Terraform, CloudFormation, Pulumi)
  • Implement proper error handling and dead letter queues
  • Design for failure with graceful degradation
  • Use event sourcing and CQRS patterns where appropriate
  • Implement health checks and readiness probes

Testing Strategies

  • Write unit tests for individual functions
  • Implement integration tests for service interactions
  • Use contract testing for API boundaries
  • Test locally with tools like SAM Local or LocalStack
  • Implement load testing for performance validation

# Supported AI Coding Agents

This skill is compatible with the SKILL.md standard and works with all major AI coding agents:

Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.