Introduction to Backend Engineering
A comprehensive, technical reference for modern backend and JVM-based systems. We focus on the principles that last, moving beyond framework APIs and interview trivia.
Deep Dives
Detailed explanations of Java core, concurrency, JVM, Spring, and distributed systems.
First Principles
A focus on trade-offs and decision-making rather than simple "how-to" guides.
How to use this site
If you are new to backend
- Start with the left sidebar to pick topics matching your current goals.
- Follow the suggested order within categories to build fundamentals.
- Use Table of Contents to jump back and forth as you learn.
If you already have experience
- Use global search (Cmd+K) to find specific architectural trade-offs.
- Treat articles as deep references for debugging or system design.
- Cross-reference between topics when designing new microservices.
Explore Categories
Comprehensive guides and articles grouped by core technical domains.
Principles over Interview Tricks
This site emphasizes
- Why a design or setting exists and what problems it solves
- Trade-offs and costs, not just features
- Understanding that lasts beyond memorizing syntax
Rather than
- Trick questions or short interview answers
- Dry lists of framework APIs or flags
- Surface-level summaries without depth
About the author
Michael — Backend engineer with more than ten years of experience building and maintaining large-scale systems. Former Amazon engineer.
This site exists because the backend stack is complex and often under-documented. Sharing practical explanations helps readers and also serves as a personal consolidation of how things work. The focus is on concurrency, distributed systems, and system design — areas that are easy to use superficially but hard to fully understand.