REST API DesignRichardson Maturity Model, resource naming, HTTP verbs, status codes, HATEOASREST Best PracticesVersioning, pagination, filtering, idempotency, rate limitingGraphQLSchema-first design, queries, mutations, subscriptions, N+1 and DataLoadergRPCProtocol buffers, streaming types, interceptors, service reflectionWebSockets & SSEReal-time use cases, heartbeat, reconnection, scalability challengesAPI Gateway PatternsAuth, routing, request transformation, aggregation, throttlingAPI SecurityOAuth 2.0 for APIs, API keys, mutual TLS, scopes & audiencesMessage QueuesRabbitMQ, AWS SQS/SNS; point-to-point, fan-out, delivery guarantees, DLQsEvent Streaming (Kafka)Topics, partitions, consumer groups, offsets, log compaction, Kinesis, PulsarPub/Sub PatternTopics, subscriptions, fan-out, at-least-once vs exactly-once deliveryEvent-Driven ArchitectureDomain events, choreography vs orchestration, schema versioningSaga PatternDistributed transactions; choreography-based vs orchestration-based sagasOutbox PatternReliable event publishing, transactional outbox, CDC with DebeziumEnterprise Integration (EIP)Message router, transformer, aggregator, splitter, content-based routingWebhook PatternsDelivery guarantees, retry logic, HMAC signature verification, idempotencyService Mesh IntegrationTraffic management, circuit breaking, retry policies via Istio/EnvoyContract TestingPact, consumer-driven contracts, mock services, integration test strategies