Senior Software Engineer Interview Reference
What a senior is expected to know and explain
Not a tutorial series. Dense reference material — precise definitions, comparison tables, decision criteria, tradeoffs, failure modes, and the angles interviewers typically probe.
Purpose
Use this set to:
- Audit gaps before a senior / staff interview loop
- Refresh mental models for system design, concurrency, networking, and data
- Prepare crisp explanations: what it is, when you choose it, what breaks, how you diagnose
Assume the reader already ships production software. Content targets explanation quality and judgment, not syntax memorization. Where a concept has a standard JDK or common Java-library implementation, chapters include a Java under the hood section (stdlib internals and client runtimes).
How to use as interview prep
- Skim the TOC — mark chapters you cannot teach in 5–10 minutes without notes.
- Read for recall, not comfort — after each chapter, close it and explain aloud: definition → tradeoffs → one production failure story → one interview trap.
- Prefer tables and decision criteria — interviewers grade decision-making more than vocabulary dumps.
- Cross-link topics in answers — e.g. thread pools ↔ TCP timeouts ↔ LB health checks; Kafka ↔ DB transactions ↔ exactly-once myths.
- Drill “what I’d measure / how I’d prove it” — seniors are expected to validate claims with metrics,
EXPLAIN, packet captures, GC logs, etc.
Suggested pass order for a time-boxed prep week:
| Pass | Sections | Goal |
|---|---|---|
| 1 | Foundations (DS/Algo/Bits/CPU/JVM) | Coding + runtime literacy |
| 2 | Concurrency | Correctness under load |
| 3 | Networking | Protocol / TLS / HTTP depth |
| 4 | Data + System design | Design round ammunition |
| 5 | Cloud + Spec-driven | Platform + process judgment |
Reading path
| Part | Start here |
|---|---|
| I — Foundations | Bit operators |
| II — Concurrency | Threads |
| III — Networking | TCP/IP stack |
| IV — System design | Load balancing vs API gateway |
| V — Data | Joins & query optimisation |
| VI — Cloud | AWS services |
| VII — Practices | Spec-driven development |