Search

Lessons (24)

  • Kafka Producers

    … event ID, type, schema version - [ ] A schema (Avro/Protobuf/JSON Schema) with compatibility rules - [ ] Flush and close the …

  • Kafka vs RabbitMQ & the Kafka Ecosystem

    … contracts for events Stores versioned Avro / Protobuf / JSON Schema definitions for each topic and enforces compatibility rules , so …

  • DRY: Don't Repeat Yourself

    … schema<br/ userSchema"] -- F[Frontend form validation] S -- B[Backend request validation] S -- T[TypeScript types] ts // schemas …

  • Event-Driven Architecture

    … Schema changes break consumers Schema registry, versioning, backward-compatible changes Hidden coupling via event contents Treat event schemas …

  • Releases, Observability and Production Safety

    … before expansion Feature flag Change behavior without redeploying Schema migration Keep old/new app versions compatible Use immutable …

  • Big Data: ETL, Warehouses and Streaming

    … Record lineage, schema evolution, data quality checks and the age of the newest successful dataset.

  • Real-Time, Pub/Sub, Webhooks and CDC

    … Include event ID, schema version, ordering key and trace context; consumers deduplicate and send exhausted failures to a …

  • SQL vs NoSQL Databases

    … Using several databases for different jobs is called polyglot persistence . Key takeaways - SQL: tables, schemas, JOINs and ACID …

  • TypeScript Essentials

    … Validate it with a schema library and derive the type from the schema, so there's one source …

  • REST API Design

    … true, schema: { type: string } } responses: "200": { description: The user, content: { application/json: { schema: { $ref: " /components/schemas/User" } } } } "404 …

  • Vertical Slice Architecture & the Modular Monolith

    … 3. No reaching into another module's tables. Each module owns its schema. 4. Modules communicate through public …

  • Monolith vs Microservices

    … each module has its own folder, public interface and (ideally) its own database schema. Modules talk only through …

  • REST vs GraphQL vs gRPC

    … exactly the fields asked for ✅ The server defines a schema (a typed contract) and resolvers (functions that fetch …

  • CQRS & Event Sourcing

    … save state every N events, then replay only newer events Event schemas change over time Versioned events, upcasters …

  • Database Relations & Foreign Keys

    … Good schemas make invalid states hard or impossible to save. ![Relations: foreign keys connect one-to-one, one …

  • Domain-Driven Design: Strategic Design

    … JSON Schemas, Avro events Separate Ways No integration at all; duplicate if needed Integration costs more than it …

  • S — Single Responsibility Principle

    … E D["🗄️ DBA<br/ 'change the table schema'"] -- E E -- Boom["💥 Three teams editing one file<br …

  • Service Communication: Sync vs Async

    … 1 }] } } 💡 Give every event an ID (for idempotency), a type , a version (for schema evolution) and a timestamp …

  • What Is Software Architecture?

    … flexible schema, but weaker multi-document transactions for our use case - DynamoDB: great scale, but complex queries and …

  • Authentication, Authorization & API Security

    … bcrypt - [ ] Cookies: HttpOnly , Secure , SameSite - [ ] Validate all input (schema validation such as Zod or Joi) - [ ] Parameterised queries / ORM …

  • Finding Service Boundaries with DDD

    … language A shared, documented format (for example, event schemas) Shared kernel A small, jointly owned shared model (use …

  • Normalization & Denormalization

    … For normal application schemas, reaching solid 3NF plus explicit constraints is usually the practical goal. Use BCNF when …

  • Frontend Testing Strategy

    … Frontend and API disagreeing on shapes Pact, shared schemas (OpenAPI / Zod) A practical CI pipeline mermaid flowchart LR …

  • Data in Microservices: Sagas & the Outbox Pattern

    … Why? With a shared database, one team's schema change breaks another team's service, services can't …