Mid-level interview questionAsked at Atlassian · interview write-up
Design a recommendation system for issues in an issue tracker, covering labels, candidate generation, ranking, real-time serving and permission-aware access.
Model answer
Pick the label first: an issue the user then opens, comments on or picks up. Candidate generation pulls from the user's projects, issues linked to recent work, similar issues by embedding, and teammates' activity. A ranker scores them on recency, priority, relation to the user and text similarity. Filter by permission before ranking, and refresh cached candidates on events. Evaluate with recall and NDCG on held-out interactions, then A/B test.
Practise the rest
40 ML system design questions, 492 in all, each with a model answer. Free.
More from Atlassian interview questions.
More ML system design interview questions
- You need to copy 500 GB of weights to 1,000 GPU workers over shared 10 Gbps links. What's the lower bound on time, and what would you build?
- Design an LLM coding assistant end to end: data, model and evaluation.
- Design a job scheduler for ML training and batch inference on a shared GPU cluster.
- Training a retrieval model over a catalogue of millions of items, you use sampled softmax. Why does it need a correction, and how do you choose the classification loss?
- Design an inference API that converts PDFs into Markdown using several models in stages.
- How can LLMs be incorporated into recommendation systems, from metadata enrichment and cold start to generative retrieval and semantic reranking?