My notes on systems design interviews

April 10, 2021

My notes on systems design interviews

System design resources

  • Load-balancing
    • Round robin
    • IP Hash
  • Caching
    • CDN
      • Pull
      • Push - Pushes data to CDN but can push data that no user ever requires
    • Types
      • Distributed
      • Local (per jvm, per …)
  • Database schema design
    • Indexes
    • Replication
    • Slave-master replications
    • NoSQL vs. Relational
    • Sharding
      • Vertical - User table, Tweets table, Logs table each in different machines
      • Horizontal
    • NoSQL
      • Types
        • Key-value
        • Wide column
        • Document based
        • Graph based
  • API design
    • Data transport mecahnism
    • Json vs. protocol buffers
    • Maturity levels
    • How do you handle security
    • Versioning