Engineering knowledge hub · 30 articles
Backend systems, explained for production.
Practical writing on Java, Spring Boot, Kafka, databases, AWS and system design—focused on trade-offs, failure modes and operational evidence.
Choose a learning track
Follow one topic from fundamentals to production decisions, or search all notes below.
Java & JVM
Practical Java, concurrency, memory, class loading and modernization guidance for production services.
Explore topic ↗05 notesSpring Boot
Transaction boundaries, persistence, configuration, resilience and observability in Spring applications.
Explore topic ↗05 notesKafka & Messaging
Partitions, consumer groups, delivery semantics, retries and event-contract evolution.
Explore topic ↗05 notesDatabases & Caching
Indexes, isolation, PostgreSQL diagnostics, Redis consistency and ledger-oriented modeling.
Explore topic ↗05 notesAWS & Platform
Cloud architecture, infrastructure as code, event fan-out, IAM and container platform decisions.
Explore topic ↗05 notesSystem Design
Architecture walkthroughs for payments, URL shortening, order management, gateways and distributed transactions.
Explore topic ↗All engineering notes
Use the topic filters or search by concept, technology or failure mode.
Showing 30 articles
Modernizing Java Services Without Freezing Delivery
How to sequence Java, Spring Boot, Gradle, dependency, artifact and cloud migrations while teams continue shipping.
Read article ↗Java Memory Model: Visibility, Ordering and Safe Publication
A practical mental model for volatile, synchronized, final fields and happens-before relationships in concurrent Java code.
Read article ↗Class Loading, Metaspace and ClassLoader Leaks
What class metadata is, how class loaders define reachability and why application reloads can leak metaspace.
Read article ↗Thread Pools and Backpressure in Java Services
How pool size, queue policy and downstream capacity determine whether concurrency improves throughput or amplifies failure.
Read article ↗BigDecimal for Money: Precision, Scale and Domain Rules
Why binary floating point is unsafe for money and how to model rounding, scale and comparison explicitly.
Read article ↗Spring Transaction Boundaries That Match the Business Operation
How @Transactional proxies, propagation, isolation and exception behavior shape real service consistency.
Read article ↗JPA N+1 Queries: Fetch Plans Without Accidental Data Explosions
How lazy loading, joins, entity graphs and projections affect query count, memory and API latency.
Read article ↗Spring Boot Configuration and Secrets Across Environments
A layered configuration strategy for defaults, environment overrides, validation and secret delivery.
Read article ↗Timeouts, Retries and Circuit Breakers Without Retry Storms
How to combine time budgets, backoff, idempotency and circuit breaking around remote dependencies.
Read article ↗Spring Boot Observability: Logs, Metrics and Traces That Explain a Request
A practical telemetry model for correlation, RED metrics, business signals and production diagnosis.
Read article ↗Kafka Throughput, Partitions and Backpressure: A Practical Mental Model
How partitions, consumer concurrency, processing latency and downstream capacity determine real event throughput.
Read article ↗Kafka Consumer Groups and Rebalancing Without Surprises
How partition assignment changes, why long processing causes churn and how cooperative strategies reduce disruption.
Read article ↗At-Least-Once Delivery and Idempotent Consumers
Why duplicate delivery is normal and how deduplication, state transitions and database constraints create one durable outcome.
Read article ↗Kafka Retries and Dead-Letter Topics Without Losing Context
A failure-handling design for transient errors, poison records, backoff, replay and operational ownership.
Read article ↗Event Schema Evolution Without Breaking Consumers
Compatibility rules, additive change, semantic versioning and consumer-driven rollout for long-lived events.
Read article ↗Database Indexes: A Practical Guide to Selectivity and Query Shape
How B-tree indexes support filtering, joining and ordering—and why extra indexes also create write cost.
Read article ↗Transaction Isolation and Locking for Backend Engineers
Dirty reads, non-repeatable reads, phantoms, write skew and practical techniques for preserving invariants.
Read article ↗Reading PostgreSQL EXPLAIN ANALYZE Without Guessing
How to interpret plan nodes, row estimates, loops, buffers and the difference between planner cost and elapsed time.
Read article ↗Redis Caching Without Serving Incorrect Data
Cache-aside, TTLs, invalidation, stampede protection and consistency trade-offs for backend systems.
Read article ↗Designing a Ledger Data Model That Can Explain Every Balance
Append-oriented entries, double-entry structure, immutable history and reconciliation-friendly balances.
Read article ↗Designing a Highly Available AWS Bill Management Application
An architecture walkthrough using ALB, Auto Scaling, EC2, RDS, CloudFormation and asynchronous notifications.
Read article ↗SNS, SQS and Lambda Fan-Out: When to Combine Them
How publish/subscribe, durable queues and serverless consumers work together for independent asynchronous workflows.
Read article ↗CloudFormation Changes Without Surprising Production
Change sets, stack boundaries, rollback safety and deployment practices for infrastructure as code.
Read article ↗IAM Least Privilege for Application Workloads
How to scope roles by action, resource and condition while keeping delivery manageable.
Read article ↗ECS or EKS? Choose the Operating Model, Not the Logo
A decision framework based on team skills, portability, control plane needs and operational burden.
Read article ↗Designing Event-Driven Payment Workflows With Idempotency
A practical guide to payment state machines, idempotency keys, outbox patterns, retries, ledgers and reconciliation.
Read article ↗URL Shortener System Design: Keys, Redirects and Abuse Controls
A practical design for short-code generation, redirect latency, caching, analytics and malicious-link handling.
Read article ↗Order Management System Design: State, Inventory and Fulfilment
How to model the order lifecycle, reserve inventory, coordinate payment and recover from partial failure.
Read article ↗API Gateway Design: Routing, Security and Failure Boundaries
What belongs at the edge, what should remain in services and how to prevent the gateway becoming a monolith.
Read article ↗Sagas and Distributed Transactions: Coordination Without Pretending It Is Atomic
Orchestration, choreography, compensating actions and the operational reality of long-running workflows.
Read article ↗