Layer 3 · Go deeper · 7 min
Go deeper
Size it, build it, then make the calls an interviewer will push you on.
Back of the envelope
Size it up
Tap through each step of the arithmetic.
Does the whole ranking funnel fit in a 200 ms p99?
Ranker A returns grades 1, 2, 3, 0, 2. What is its NDCG@5?
Build-up · 6 steps
Follow one query through Bazaar’s search
Follow one price cut and one query through Bazaar’s 50 million products. The two paths meet only at the index; the learning loop closes the circle.
Step 1 of 6
A price changes
Sellers write only to the database. Debezium streams each commit through Kafka to an indexer that enriches it and bulk-writes with external versions, so ₹449 is searchable in about 3 seconds.
3 interview moments
You’re the candidate
The interviewer pushes on the hard parts. Pick an approach and see how it holds up.
Deep dive 1 of 3
Interviewer
“Bazaar adopts a new embedding model, and old and new vectors can’t be mixed. How do you move 50 million products onto it?”
Re-embedding takes about 7 hours on one GPU, at an illustrative 2,000 products a second. Shoppers keep searching throughout.
Your move. Pick an approach:
Deep dive 2 of 3
Interviewer
“Your LambdaMART model reads about 150 features per product. Which products should it score for each query?”
Bazaar has 50 million products, and the whole page must come back within 200 ms at p99.
Your move. Pick an approach:
Deep dive 3 of 3
Interviewer
“The team’s new LambdaMART ranker is ready. How do you prove it beats BM25 with boosts before shipping it to everyone?”
Your move. Pick an approach: