1. Software Architecturehistorical

    Architecture as system-level decisions about boundaries, dependencies, deployment, data, quality attributes, and evolutionary trade-offs.

  2. Architecture Patternshistorical

    Choosing monolith, layered, event-driven, microservice, read/write split, and domain-oriented patterns from constraints rather than fashion.

  3. Monolithic Architecturehistorical

    A single deployable application and the trade-offs between operational simplicity, modularity, scaling, and organizational boundaries.

  4. Layered Architecturehistorical

    Separating presentation/application/domain/infrastructure responsibilities while controlling dependency direction.

  5. Read/Write Separation Architecturehistorical

    Separating write authority from read replicas/projections and handling replication lag, read-your-writes, routing, and failover.

  6. Event-Driven Architecturehistorical

    Producing and reacting to events with asynchronous coupling, delivery semantics, ordering, idempotency, and observability.

  7. Domain-Driven Designhistorical

    DDD concepts: bounded contexts, ubiquitous language, aggregates, entities, value objects, domain services, and context integration.

  8. Microservices Architecturehistorical

    Independently deployable service boundaries with explicit data ownership and the distributed-systems/operational costs they introduce.

  9. OpenID Connecthistorical

    Identity layer on OAuth with ID tokens, UserInfo, issuer/audience/nonce validation, and authentication sessions.

  10. JSON Web Token (JWT)historical

    Signed token format, claims, validation, expiration, key management, and common security misconceptions.