Skip to main content

On This Page

LinkedIn Achieves 90% Offline Cost Reduction with Real-Time Recommendation Architecture

2 min read
Share

These articles are AI-generated summaries. Please check the original sources for full details.

LinkedIn’s Migration Journey to Serve Billions of Users

Engineering Manager Nishant Lakshmikanth at QCon SF 2025 detailed LinkedIn’s complete overhaul of its recommendation systems, transitioning from a batch pipeline to a real-time architecture. This transformation resulted in a 90% reduction in offline compute and storage costs while enhancing user engagement.

Why This Matters

Traditional batch processing for recommendations, while scalable, creates a fundamental trade-off between freshness and cost. Pre-computing recommendations for all users is inefficient, leading to wasted resources and stale results, particularly in dynamic environments like social networks. The failure of these systems can lead to significant degradation in user experience and lost revenue, costing companies millions in lost engagement.

Key Insights

  • 90% Offline Cost Reduction: Result of LinkedIn’s migration to real-time scoring.
  • Candidate Generation Decoupling: Separating candidate generation from scoring allows for independent scaling and optimization.
  • Bidirectional Modeling: Scoring connections from both sender and recipient perspectives improves ranking accuracy.

Working Example

# Example of simplified dynamic candidate generation using a search index
def get_candidates(user_id, query, search_index):
    """
    Retrieves potential candidates from a search index based on user query.
    """
    results = search_index.search(query, user_id)
    return results

# Example of simplified scoring function
def score_candidate(user_id, candidate_id, feature_store):
    """
    Scores a candidate based on features from a feature store.
    """
    features = feature_store.get_features(user_id, candidate_id)
    score = model.predict(features)
    return score

Practical Applications

  • Use Case: LinkedIn Jobs utilizes real-time intent analysis to dynamically update job recommendations based on user activity.
  • Pitfall: Premature optimization of scoring models without addressing candidate generation bottlenecks can limit the overall impact of improvements.

References:

Continue reading

Next article

Qilin Ransomware 'Korean Leaks' Campaign Compromises 28 South Korean Victims

Related Content