Cheat Sheets

Notes worth keeping

Condensed references I keep coming back to - architecture, delivery, operations and the trade-offs behind them.


  1. RAG (Retrieval-Augmented Generation)

    How Retrieval-Augmented Generation works: the two-loop architecture (data ingestion + query & answer), full system design from sources and chunking to embeddings, hybrid search, reranking, LLM Gateway, and common pitfalls. Includes architecture diagrams and a developer documentation assistant example.

  2. CI/CD & Deployment Strategies

    Continuous Integration and Continuous Delivery (CI/CD) practices including blue-green and canary deployments, pull-based vs push-based pipelines, and GitOps workflows for automated, reliable releases.

  3. Microservice Patterns

    Distributed architecture patterns including API Gateway, Strangler Fig, CQRS, Outbox, and Idempotency. Covers database-per-service, service discovery, and resilience strategies for building scalable microservices.

  4. Service-to-Service Communication (Sync vs Async)

    Guide to service-to-service communication: synchronous request/response (REST, gRPC, SOAP) vs. asynchronous messaging and streaming (RabbitMQ, ActiveMQ, Kafka). Covers when to use each approach, trade-offs, reliability patterns, and common pitfalls.

  5. Kubernetes Management

    Essential kubectl commands, k9s terminal UI, and YAML manifest examples for managing Kubernetes resources including Pods, Deployments, Services, ConfigMaps, Secrets, Jobs, and CronJobs.

  6. Software Development Life Cycle (SDLC)

    Structured process for designing, developing, and testing high-quality software. Covers the six phases (Planning, Analysis, Design, Implementation, Testing, Maintenance) and common methodologies (Waterfall, Agile, Scrum, Kanban, DevOps, Spiral).

  7. Semantic Versioning (SemVer)

    Versioning scheme using MAJOR.MINOR.PATCH format to communicate the nature of changes. Covers incrementing rules, pre-release versions, build metadata, and dependency management best practices.

  8. APIs & Communication Protocols

    API design principles and communication styles including REST, GraphQL, RPC (gRPC), and SOAP. Covers resource modeling, versioning, authentication, idempotency, error handling, and best practices for scalable service-to-service and client-server communication.

  9. Non-Functional Requirements (NFR)

    Quality attributes that define how a system operates, including performance, scalability, availability, security, reliability, maintainability, and observability. Covers SLAs, SLOs, SLIs, capacity planning, and trade-off analysis.

  10. C4 Model (Architecture Description)

    A hierarchical approach to documenting software architecture using Context, Container, Component, and Code diagrams. Focuses on clarity, abstraction levels, system boundaries, and stakeholder communication.

  11. Reliability & SRE Metrics

    Reliability practices for building stable systems including availability, MTTR, MTBF, error rates, latency percentiles, and Google SRE concepts such as SLI, SLO, SLA, error budgets, and the four golden signals used in production monitoring.

  12. Maintainability

    Software maintainability principles for building systems that are easy to understand, modify, and extend. Covers modular design, separation of concerns, low coupling, high cohesion, code readability, refactoring practices, automated testing, and common maintainability metrics.