← Atlassian Interview Insights

Atlassian·Machine Learning Engineer·Onsite - System Design / Architecture·Senior

Senior
Jun 2026

Summary

ML system design round at Atlassian for an MLE role, roughly 30 minutes, focused entirely on designing a recommendation system end to end. Breadth over depth was clearly the expectation, which took me a minute to calibrate to.

Questions Asked (4)

Q1

Design a recommendation system end to end, covering retrieval, ranking, features, training, and serving.

System DesignTechnical Trade-offs
Author's notes

30 minutes is not a lot of time for this scope.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the product context and scale (e.g., Atlassian's Jira/Confluence, number of users/items, latency SLAs), then walk through the full pipeline: candidate retrieval, ranking, feature engineering, training, and serving. Emphasize trade-offs at each stage (e.g., recall vs. latency, model complexity vs. maintainability) and tie decisions back to business metrics like engagement or task completion.

Pro tip: Anchor your design in Atlassian's B2B collaboration context: recommendations should optimize for team productivity (e.g., suggesting relevant issues, pages, or people), not just clicks. Mention how you'd handle cold-start for new teams and the importance of explainability for enterprise trust.

1. Clarify Requirements and Constraints

Ask about scale (users, items), latency budget, offline vs. online metrics, and business goals. Confirm whether it's a real-time or batch system and what data is available (e.g., user interactions, content metadata).

2. Design Retrieval Stage

Propose a multi-stage retrieval: candidate generation from multiple sources (e.g., collaborative filtering, content-based, trending) using ANN indexes for scalability. Discuss trade-offs between recall and latency.

3. Design Ranking Stage

Describe a learning-to-rank model (e.g., GBDT or deep neural network) that takes features from user, item, and context. Explain how to balance relevance, diversity, and business rules.

4. Feature Engineering and Training

Outline key features (user history, item popularity, co-occurrence, embeddings) and how to compute them offline/online. Discuss training data generation (e.g., negative sampling), model retraining frequency, and evaluation metrics (NDCG, recall@k).

5. Serving and Monitoring

Explain the serving architecture: pre-compute embeddings, use a feature store for low-latency lookups, and deploy models via a model server. Include A/B testing, logging, and monitoring for drift and performance.

Key Points to Mention

  • Two-stage architecture (retrieval + ranking) to balance scalability and accuracy.
  • Use of approximate nearest neighbor (ANN) for efficient candidate retrieval.
  • Feature store for consistent online/offline features and low-latency serving.
  • Handling cold-start with content-based or demographic features.
  • Evaluation metrics: offline (recall@k, NDCG) and online (CTR, task completion).
  • Trade-offs: latency vs. model complexity, freshness vs. stability, personalization vs. privacy.

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q2

What metrics would you use to evaluate the recommendation system offline and online?

Product Analytics & MetricsA/B Testing & Experimentation
Author's notes

Covered NDCG and AUC for offline, CTR and engagement metrics for online.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Structure your answer by first distinguishing offline and online evaluation, then detail specific metrics for each phase, and finally explain how they complement each other in a production ML pipeline. Emphasize that offline metrics guide model selection, while online metrics validate real-world impact through experimentation.

Pro tip: Mention that offline metrics are proxies and can mislead due to offline-online gap, so you always validate with online A/B tests and monitor business metrics like engagement and retention. Also, highlight the importance of guardrail metrics to catch negative side effects.

1. Clarify the evaluation phases

Explain that offline evaluation uses historical data to compare models quickly, while online evaluation uses live traffic to measure real user impact. This sets the stage for metric selection.

2. Offline metrics

List ranking and accuracy metrics such as Precision@K, Recall@K, NDCG, MAP, MRR, and AUC. Mention coverage, diversity, and novelty as additional offline considerations.

3. Online metrics

Describe engagement metrics (CTR, conversion rate, dwell time), business metrics (revenue, retention), and system metrics (latency, coverage). Include A/B testing methodology and statistical significance.

4. Connect offline to online

Discuss how offline metrics inform online experiments and how online results can reveal limitations of offline proxies. Mention techniques like counterfactual evaluation and off-policy evaluation.

5. Guardrail and long-term metrics

Highlight the need for guardrail metrics (e.g., user churn, complaint rate) and long-term metrics (e.g., user satisfaction, lifetime value) to ensure recommendations don't harm the ecosystem.

Key Points to Mention

  • Precision@K, Recall@K, NDCG, MAP, MRR for offline ranking evaluation
  • A/B testing framework with control/treatment groups and statistical significance
  • Online metrics: CTR, conversion rate, dwell time, revenue per user, retention
  • Offline-online gap and the importance of validating offline improvements with online tests
  • Guardrail metrics to monitor negative impacts (e.g., diversity, freshness, user fatigue)
  • Business metrics alignment: how recommendation quality ties to company goals like engagement and revenue

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q3

How would you handle feature engineering and the feature store for this system?

System DesignData Modeling
Author's notes

Talked about separating user features, item features, and context features, and the need for a feature store to avoid training-serving skew.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the system's requirements and ML use cases, then outline a feature engineering pipeline that covers data sources, transformations, and storage. Emphasize how a feature store enables consistency, reuse, and low-latency serving for both training and inference.

Pro tip: Highlight the importance of feature versioning and monitoring to prevent training-serving skew, and mention how Atlassian's scale and product ecosystem (e.g., Jira, Confluence) would influence design choices like online/offline store separation.

1. Clarify Requirements and Use Cases

Ask about the specific ML models, data volume, latency requirements, and whether features need to be served in real-time or batch. This ensures the design aligns with business needs.

2. Design Feature Engineering Pipeline

Describe how raw data is ingested, cleaned, transformed, and aggregated into features. Include both batch and streaming processing, and mention tools like Spark, Flink, or Kafka.

3. Implement a Feature Store

Explain the architecture of a feature store: offline store for training (e.g., S3, BigQuery) and online store for serving (e.g., Redis, DynamoDB). Discuss how it ensures consistency and low-latency access.

4. Ensure Consistency and Versioning

Detail how features are versioned, documented, and monitored to avoid training-serving skew. Mention point-in-time correctness for training data.

5. Address Operational Concerns

Cover scalability, cost, security, and how to handle feature updates and backfills. Discuss monitoring for drift and performance.

Key Points to Mention

  • Training-serving skew and how feature stores mitigate it
  • Online vs offline feature serving and latency requirements
  • Feature versioning and point-in-time correctness
  • Data quality monitoring and drift detection
  • Scalability and cost considerations for Atlassian's scale
  • Integration with existing data infrastructure (e.g., data lakes, warehouses)

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q4

Walk me through how you'd set up the online serving infrastructure for low-latency recommendations.

System DesignTechnical Trade-offs
Author's notes

Rushed this.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the requirements: latency target, throughput, recommendation freshness, and integration with existing Atlassian services. Then propose a high-level architecture that separates offline training from online serving, using a feature store and a low-latency model server. Finally, discuss trade-offs between latency, cost, and accuracy, and how you would monitor and iterate.

Pro tip: Emphasize the importance of pre-computing recommendations and caching them at the edge or in a fast key-value store, as this is often the key to achieving low latency at scale. Also, mention the need for fallback strategies to handle failures gracefully.

1. Clarify Requirements and Constraints

Ask about expected QPS, latency SLA (e.g., p99 < 100ms), recommendation freshness (real-time vs batch), and existing infrastructure (e.g., AWS, Kubernetes).

2. Design the Offline Pipeline

Describe how models are trained and validated offline, and how features and recommendations are pre-computed and stored in a feature store and a low-latency database like Redis or DynamoDB.

3. Design the Online Serving Layer

Outline the serving architecture: API gateway, model server (e.g., TensorFlow Serving, TorchServe), feature retrieval from online store, and caching layers. Discuss how to handle real-time features if needed.

4. Address Scalability and Reliability

Explain how to scale horizontally, use load balancing, and implement fallbacks (e.g., popular items) if the model server fails. Mention monitoring and alerting.

5. Discuss Trade-offs and Optimizations

Compare latency vs accuracy (e.g., using a simpler model for online serving), batch vs real-time pre-computation, and cost implications. Suggest A/B testing for continuous improvement.

Key Points to Mention

  • Feature store (e.g., Feast, Tecton) for consistent features between training and serving
  • Low-latency storage (Redis, DynamoDB) for pre-computed recommendations and features
  • Model serving frameworks (TensorFlow Serving, TorchServe, ONNX Runtime) and their performance characteristics
  • Caching strategies (CDN, in-memory cache) and cache invalidation
  • Fallback mechanisms and graceful degradation
  • Monitoring and logging for latency, errors, and model performance

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.