PracHub
QuestionsPremiumCoachesLearningGuidesInterview Prep
|Home/System Design/BitGo

Compare core system design tradeoffs with scenarios

Last updated: Mar 29, 2026

Quick Overview

This question evaluates competency in system design and architectural trade-offs across service decomposition, data storage models, communication patterns, API protocols, caching, consistency, partitioning, and load balancing, with attention to scalability, latency, availability, cost, and operability.

  • hard
  • BitGo
  • System Design
  • Software Engineer

Compare core system design tradeoffs with scenarios

Company: BitGo

Role: Software Engineer

Category: System Design

Difficulty: hard

Interview Round: Technical Screen

For a web-scale service, compare the tradeoffs among: monolith vs microservices; relational vs document vs wide-column databases; synchronous RPC vs event-driven messaging; REST vs gRPC; caching strategies (write-through, write-back, write-around); strong vs eventual consistency; partitioning strategies (range, hash, consistent hashing); and load balancing (round-robin, least-connections, consistent hashing). For each, give concrete scenarios and quantitative targets (e.g., 20k QPS, P99 200 ms, 99.99% availability), justify a choice, and discuss implications for latency, availability, cost, operability, and failure modes.

Quick Answer: This question evaluates competency in system design and architectural trade-offs across service decomposition, data storage models, communication patterns, API protocols, caching, consistency, partitioning, and load balancing, with attention to scalability, latency, availability, cost, and operability.

BitGo logo
BitGo
Aug 12, 2025, 12:00 AM
Software Engineer
Technical Screen
System Design
4
0

System Design Tradeoffs for a Web-Scale Service

Context

You are designing a web-scale, user-facing transactional service. Compare key architectural choices across the following dimensions, and ground your answers with quantitative targets (e.g., 20k QPS, P99 200 ms, 99.99% availability):

  1. Service decomposition: monolith vs microservices
  2. Primary data store: relational vs document vs wide-column
  3. Inter-service communication: synchronous RPC vs event-driven messaging
  4. API protocol: REST vs gRPC
  5. Caching strategies: write-through, write-back, write-around
  6. Consistency models: strong vs eventual
  7. Data partitioning: range, hash, consistent hashing
  8. Load balancing: round-robin, least-connections, consistent hashing

Task

For each dimension:

  • Provide a concrete scenario and quantitative targets (throughput, latency SLOs, availability, retention, etc.).
  • Justify a choice, and discuss implications for:
    • Latency
    • Availability and durability
    • Cost and scalability
    • Operability (developer productivity, observability, change management)
    • Failure modes and mitigations

Where helpful, include small calculations (capacity, shard counts, cache hit/miss effects) and brief formulas. Keep each comparison grounded in realistic, web-scale use cases.

Solution

Show

Submit Your Answer to Earn 20XP

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More BitGo•More Software Engineer•BitGo Software Engineer•BitGo 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.