PracHub
QuestionsPremiumCoachesLearningGuidesInterview Prep
|Home/System Design/LinkedIn

Design an in-memory key-value store using maps

Last updated: Mar 29, 2026

Quick Overview

This question evaluates skills in in-memory data modeling, concurrent access control, time-complexity reasoning for expected O(1) operations, and storage engine considerations such as durability, compaction, and TTL when restricting indexing to map/dictionary primitives.

  • medium
  • LinkedIn
  • System Design
  • Software Engineer

Design an in-memory key-value store using maps

Company: LinkedIn

Role: Software Engineer

Category: System Design

Difficulty: medium

Interview Round: Onsite

Design a **low-level key-value store** library (like an embedded storage engine) under an interview constraint: you may use **only map/dictionary-like data structures** (plus primitive types / arrays if needed) for your in-memory indexing. ## Core API - `put(key, value)` - `get(key) -> value | null` - `delete(key)` ## Required properties - Expected `O(1)` average time for `get/put/delete` - Safe under concurrent access (multiple threads) - Optional but good to discuss: durability (crash recovery), compaction, TTL/expiration ## Deliverable Explain your design choices (data model, concurrency strategy, persistence approach if any), and how you would test it.

Quick Answer: This question evaluates skills in in-memory data modeling, concurrent access control, time-complexity reasoning for expected O(1) operations, and storage engine considerations such as durability, compaction, and TTL when restricting indexing to map/dictionary primitives.

Related Interview Questions

  • Review a Web Application Architecture - LinkedIn (easy)
  • Scale a Distributed Randomized Multiset - LinkedIn (medium)
  • Design a Top-K Ranking Service - LinkedIn (easy)
  • Design a Global Calendar Service - LinkedIn (medium)
  • Design a malicious-URL checking service using an isMalicious API - LinkedIn (medium)
LinkedIn logo
LinkedIn
Nov 21, 2025, 12:00 AM
Software Engineer
Onsite
System Design
14
0

Design a low-level key-value store library (like an embedded storage engine) under an interview constraint: you may use only map/dictionary-like data structures (plus primitive types / arrays if needed) for your in-memory indexing.

Core API

  • put(key, value)
  • get(key) -> value | null
  • delete(key)

Required properties

  • Expected O(1) average time for get/put/delete
  • Safe under concurrent access (multiple threads)
  • Optional but good to discuss: durability (crash recovery), compaction, TTL/expiration

Deliverable

Explain your design choices (data model, concurrency strategy, persistence approach if any), and how you would test it.

Solution

Show

Submit Your Answer to Earn 20XP

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More LinkedIn•More Software Engineer•LinkedIn Software Engineer•LinkedIn System Design•Software Engineer System Design
PracHub

Master your tech interviews with 8,000+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • For Universities
  • Student Access

Browse

  • By Company
  • By Role
  • By Category
  • Topic Hubs
  • SQL Questions
  • Compare Platforms
  • Discord Community

Support

  • support@prachub.com
  • (916) 541-4762

Legal

  • Privacy Policy
  • Terms of Service
  • About Us

© 2026 PracHub. All rights reserved.