Search

Lessons (40)

  • Kafka Producers

    How producers send records: batching, compression, partitioning, the acks setting that trades speed for safety, retries, and the …

  • Releases, Observability and Production Safety

    Ship changes safely with rollout strategy, flags, migration discipline, rollback plans and observable service-level outcomes. ![Safe release …

  • Normalization & Denormalization

    … We will normalize one deliberately bad order table: order id customer name customer email product id product name …

  • Next.js Rendering: CSR, SSR, SSG, ISR & Server Components

    … GET /products S-- B: empty HTML + bundle.js Note over B: ⬜ blank screen B- B: download + run JavaScript …

  • Delivery Guarantees: At-Most, At-Least & Exactly Once

    Can a message be lost? Delivered twice? Learn Kafka's three delivery semantics, idempotent producers, transactions for read …

  • What Is Apache Kafka?

    … append an event const producer = kafka.producer(); await producer.connect(); await producer.send({ topic: "orders", messages: [{ key: "customer …

  • React Fundamentals

    … cart, products"] -- products, onAdd PL[ProductList] PL -- name, price, onAdd PC1[ProductCard] PL -- name, price, onAdd PC2[ProductCard …

  • MVC, MVP & MVVM

    … routes/products.js (Express) router.get("/products/:id", async (req, res) = { const product = await Product.findById(req.params …

  • State Management (Redux, Zustand, TanStack Query)

    … useQuery(["products"]) B- Q: useQuery(["products"]) Q- API: ONE request (deduplicated) API-- Q: data Q-- A: data Q …

  • Message Queues & RabbitMQ

    … producer and consumer (Node.js, amqplib) js // producer.js import amqp from "amqplib"; const connection = await amqp.connect …

  • Caching & Redis

    … SET product:42 (expires in 300 s) end js async function getProduct(id) { const key = product:${id} ; const …

  • How a Web Request Works

    … GET /products/42 LB- S: forward to a healthy server S- DB: SELECT FROM products WHERE id = 42 …

  • Finding Service Boundaries with DDD

    … If one giant Product class tries to serve everyone, every team edits it, it grows to 80 fields …

  • Brokers, Replication & Durability

    … It stores partition replicas and serves producers and consumers. - A cluster is a group of brokers (3 at …

  • Architecture Patterns at Scale

    … Style Good fit Main cost --- --- --- Client-server Most products starting out Central service capacity Microservices Independent domain ownership …

  • Indexes, EXPLAIN & Query Plans

    Design indexes from real filter, join and sort patterns, then prove improvements with query plans and production-like …

  • Frontend Testing Strategy

    … 201 })), ]; tsx it("lists products from the API", async () = { render(<ProductsPage / ); expect(await screen.findByText("Keyboard")).toBeInTheDocument(); // findBy …

  • SQL vs NoSQL Databases

    … 17, name: "Ana", email: "ana@mail.com" }, items: [ { productId: 5, name: "Keyboard", qty: 1, priceCents: 4999 }, { productId: 9 …

  • Vertical Slice Architecture & the Modular Monolith

    … ts β”‚ └── ProductService.ts β”‚ β”‚ └── handler.test.ts β”œβ”€β”€ repositories/ β”‚ β”œβ”€β”€ cancel-order/ β”‚ β”œβ”€β”€ OrderRepository.ts β”‚ └── get-order-history/ β”‚ └── ProductRepository.ts └── products/ └── dtos …

  • Deploying & Operating Microservices

    CI/CD per service, blue-green and canary releases, feature flags, API versioning, distributed tracing and the production …

  • Event-Driven Architecture

    … one producer publishes a fact; many consumers react independently](/img/architecture/event-driven.svg) Request-driven vs event …

  • Helm, kubectl Cheat Sheet & Best Practices

    … Production checklist for every workload mermaid mindmap root((Production-ready workload)) Reliability 2+ replicas readiness + liveness probes PodDisruptionBudget …

  • Database Relations & Foreign Keys

    … Add an index on orders(customer id) when the product frequently loads a customer orders. A foreign key …

  • Domain-Driven Design: Tactical Patterns

    … CustomerId) { return new Order(id, customerId); } addLine(productId: ProductId, quantity: number, unitPrice: Money) { this.assertDraft(); if (quantity <= 0 …

  • Kafka vs RabbitMQ & the Kafka Ecosystem

    … Analytics, search and fraud detection plug in without touching the services that produce the events. Managed options Running …

  • Database Internals, Replication and Scaling

    Connect storage-engine choices, durability, replicas, query plans, pooling and data layout to real production behaviour. ![Database path …

  • Docker & Containers

    … small and secure ---- FROM node:22-alpine WORKDIR /app ENV NODE ENV=production COPY package.json package-lock …

  • API Gateway, BFF & Service Discovery

    … http://orders-svc:8080 plugins: [jwt-auth] - path: /api/products service: http://catalog-svc:8080 plugins: [cache: { ttl …

  • Microkernel (Plugin) Architecture

    … microkernel.svg) Where you've already seen it Product Core Plug-ins --- --- --- VS Code Editor, extension host, APIs …

  • Services & Ingress

    … no IPs anywhere const res = await fetch("http://shop-api/products"); Service types mermaid flowchart TB subgraph CIP …

  • Views, Triggers & Stored Procedures

    … Transaction-control and return-value capabilities vary by engine, so name the product in an interview.

  • DRY: Don't Repeat Yourself

    … Next month usernames will need "no spaces" and product names will allow 100 characters. If merged, you will …

  • Transactions, Indexes & Concurrency

    … state the database product you mean. Q11: Livelock versus deadlock Deadlock is circular waiting, so the database aborts …

  • DBMS Foundations, Keys & Normalization

    … necessary relationships, and stop when the design meets product query needs. Normalized tables protect correctness; a read-heavy …

  • Why Kubernetes?

    … Running production is not: Problem Without Kubernetes With Kubernetes --- --- --- A container crashes at 3 a.m. Someone gets …

  • Replication, Partitioning & Sharding

    … Use read-your-own-write routing, a short primary stickiness period, or a product experience that explicitly accepts …

  • N+1 Queries, Loading & Pagination

    … In production, sample traces rather than logging sensitive SQL values.

  • Topics, Partitions & Offsets

    … decide the partition, and the ordering ⭐ When a producer sends a record with a key , Kafka picks the …

  • Observability: Logs, Metrics & Traces

    When production breaks at 3 a.m., observability tells you what, where and why. Learn the three pillars …

  • Choosing an Architecture

    … for Watch out for --- --- --- --- Monolith One deployable Early products, small teams Turning into a big ball of mud …