Senior backend questions,
answered with sources
The Java, Spring and system design questions that keep coming up.
A JVM search service uses more and more memory but shows no obvious leak. How do you investigate?
Before I call it a leak, I split the problem into three signals. The heap live set after full collections, the allocation rate, and the container's resident memory. A flat live set with growing resident memory points at native memory, so I turn on Native Memory Tracking. A rising live set means retained objects, so I use Flight Recorder's old object samples and compare heap dumps over time. I size from evidence, not by raising the heap.
Pick a track
Each track starts with the question we see most in job descriptions on Kuchup, then goes deeper.
System design
Real systems taken apart: payments, feeds, rate limiters. We start from the requirements an interviewer gives you, not from a box diagram.
- API, REST, gRPC and MCP compared
- Zalando search fundamentals: Lucene and Elasticsearch
- Observability knowledge graph system design
- Multi-outlet ordering system design
- LLM factuality checking system design
- Embeddings for ML system design interviews
- OTP platform design
- Redis beyond caching
- Driver delivery system design
- Choosing monoliths or microservices
- Product search system design
Java and Spring
Proxies, transactions, the JVM memory model and what Spring Boot does at startup.
- Spring Boot internals: 30 interview questions
- Senior Java, Spring Boot, microservices and AWS interview questions
- Apache Kafka interview questions
- Zalando Coding Interview Questions (Reported)
- Modern Java interview questions
- What happens if\u2026 \u2014 24 Java interview scenarios
- Zalando technical round: Java, JVM and concurrency
- Zalando interview process and recruiter screen
- Basic versus Bearer authentication
- HTTP content negotiation and API responses
- Java Streams interview questions
API performance
N+1 queries, pooling, caching and p99.
Behavioral
Incidents, disagreements and scope. Being written now.
Questions
16 questions. Newest first. Read time assumes you read the deep dive too.
- A JVM search service uses more and more memory but shows no obvious leak. How do you investigate?Companies · 4 sources Hard 4 min
- Which Map implementations does Java offer beyond HashMap, and when do you pick each?Companies · 6 sources Medium 5 min
- Why does a term query on a text field miss documents, and how do multi-fields fix it?Companies · 3 sources Medium 3 min
- Should product variants be nested, parent-child or flattened documents?Companies · 3 sources Hard 4 min
- How do you index a write-heavy catalog without hurting search latency?Companies · 4 sources Hard 4 min
- How does Elasticsearch avoid split brain, and why use dedicated master nodes?Companies · 4 sources Medium 3 min
- When is exact kNN still the right choice in Elasticsearch, and what does approximate kNN cost?Companies · 4 sources Hard 4 min
- Why can a few facet requests per second overload a search cluster that serves thousands?Companies · 8 sources Hard 6 min
- Why might a team choose a blue/green cluster over a rolling major Elasticsearch upgrade?Companies · 7 sources Hard 5 min
- What does a core search API layer own, and why put one between product teams and Elasticsearch?Companies · 3 sources Hard 4 min
- How does a cursor-based event bus such as Nakadi deliver events, and what happens with a poison event?Companies · 2 sources Hard 5 min
- Why can chained stream joins blow up Flink state, and how does a keyed union fix it?Companies · 3 sources Hard 4 min
- How would you design a system that processes billions of records?Companies · 4 sources Hard 4 min
- How do you write a correct binary search on an array list, including first and last occurrence?Companies · 4 sources Easy 5 min
- How would you build an extensible card game simulation without over-designing it?Companies · 4 sources Medium 5 min
- How do you apply SOLID in a small Java design, and when does it become over-engineering?Companies · 3 sources Medium 3 min
Interviewers can tell a memorised answer from an understood one. We write for the second kind.
How we write these
Every answer is written by us, in our own words. Each claim points to the place you can check it: official docs first, then books. If we could not find a source, the claim is not on the page.
Docs before blogs
Spring, PostgreSQL, Stripe and JDK docs come first. Blog posts only back up an example.
Short quotes only
From books we quote a line or two and give the chapter. The rest is our explanation.
Numbered citations
Every superscript number jumps to the source list at the bottom of the page.
Dated
Every page shows when it was last updated.
Ready for the real thing?
Kuchup reads company careers pages every day. Every backend role links straight to the employer, with no reposts and no agencies.