Core Building Blocks — 12 Fundamental Concepts (Part 6)

I'm Rudraksh Laddha — a DevOps engineer and emerging full-stack developer, passionate about building scalable, reliable systems that solve real-world problems.
With a solid foundation in cloud infrastructure automation using tools like Kubernetes, Docker, Terraform, and AWS, I thrive in environments where efficiency, resilience, and automation are key.
But my journey doesn't stop at infrastructure. I'm actively expanding into full-stack development, building dynamic applications using React, Node.js, and MongoDB. Whether it's designing cloud-native CI/CD pipelines or developing intuitive user interfaces, I enjoy creating end-to-end solutions — from server to screen.
Right now, I'm: 🧩 Building full-stack applications that merge DevOps reliability with engaging frontend experiences 🛠️ Contributing to open-source projects, learning through collaboration and real-world scenarios 🚀 Growing Virendana Ui, my own UI library focused on expressive, clean design systems 🚀 Growing Learn Virendana, where I share my personalized learning journey — from beginner to experienced 🎮 Developing side projects like 2048 Rush, blending product thinking with scalable infrastructure My long-term goal? To bridge DevOps and development — building products that are not just functional and fast, but also resilient, beautiful, and ready for scale.
The 12 Concept are :
Requirements Clarification (Part 1)
Back-of-Envelope Estimation (Part 1)
Databases — SQL vs NoSQL (Part 2)
Caching (Part 2)
Load Balancing (Part 3)
API Design (Part 3)
Message Queues + Event-Driven Systems (Part 4)
Consistency vs Availability (CAP Theorem) (Part 4)
Scaling Strategies (Part 5)
Fault Tolerance + Reliability (Part 5)
.CDN (Content Delivery Network) (Part 6)
Data Partitioning (Sharding) (Part 6)
But in this article we cover only two concept
11. CDN (Content Delivery Network)
What it is: A globally distributed network of servers that cache content close to users.
WHY it exists: Network latency increases with physical distance. A CDN in Singapore serves Singapore users faster than a server in Virginia.
What to put on CDN:
Static assets (JS, CSS, images)
Video content
Large downloadable files
What NOT to put on CDN:
Personalized dynamic content
Real-time data
Private user data (security risk)
Push vs Pull CDN:
Push: You upload content to CDN proactively. Good for known, large files.
Pull: CDN fetches from origin on first miss, caches for subsequent requests. Good for unpredictable access.
12. Data Partitioning (Sharding)
What it is: Splitting a large dataset across multiple database nodes.
WHY it exists: A single DB node has limited storage and throughput. Sharding breaks that limit.
Sharding strategies:
| Strategy | How | Good | Bad |
|---|---|---|---|
| Range-based | Shard by value range (A-M, N-Z) | Simple | Hot spots if distribution is skewed |
| Hash-based | Hash(key) % num_shards | Even distribution | Range queries become scatter-gather |
| Directory-based | Lookup table maps key to shard | Flexible | Lookup table is a bottleneck |
Shard key selection rule: The key should distribute data evenly AND be present in most queries.
Problems with sharding:
Cross-shard joins are very hard
Cross-shard transactions even harder
Resharding (adding shards) is painful
Beginner mistake: Choosing user_id as shard key when most queries are by timestamp. Your shard key must match your query patterns.



