সিস্টেম ডিজাইন: জিরো টু মাস্টারি
যিনি কখনো সিস্টেম ডিজাইন করেননি তার জন্য সম্পূর্ণ কারিকুলাম — এস্টিমেশন, স্টোরেজ, স্কেলিং, ফেইলিওর এবং ছয়টি পূর্ণাঙ্গ প্রজেক্ট ডিজাইন
0/28 অধ্যায় · 0 XP অর্জিত
- 00 System Design — রোডম্যাপ শূন্য থেকে শুরু। Estimation, storage, scaling, failure — আর ছয়টা পূর্ণাঙ্গ প্রজেক্ট ডিজাইন। বিগিনার ৮ মিনিট
- 01 সিস্টেম ডিজাইন আসলে কী ডায়াগ্রাম আঁকা নয় — trade-off সামলানো। শব্দভাণ্ডার, চিন্তার কাঠামো, আর সাদা পাতা থেকে শুরু করার পদ্ধতি। বিগিনার ১৬ মিনিট
- 02 Requirements ও Constraints Functional বনাম non-functional, scale/latency/consistency/budget — একটা ঝাপসা দাবিকে প্রশ্ন করে স্পেসে নামানো। বিগিনার ১৭ মিনিট
- 03 Estimation — খাতা-কলমের হিসাব QPS, read/write ratio, storage growth, bandwidth, সার্ভার সংখ্যা — যে অঙ্কগুলো ডিজাইনের আকার ঠিক করে দেয়। বিগিনার ১৮ মিনিট
- 04 একটা রিকোয়েস্টের শরীরবৃত্ত DNS থেকে TLS, load balancer, app server, cache, database — প্রতিটা হপে কত সময় যায় আর কোথায় কী ভাঙে। বিগিনার ১৮ মিনিট
- 05 ডেটা স্টোর বেছে নেওয়া Relational, document, key-value, wide-column, search, object storage — ফ্যাশন দেখে নয়, access pattern দেখে। বিগিনার ১৯ মিনিট
- 06 Latency Numbers ও Percentile যে সংখ্যাগুলো মুখস্থ রাখতে হয়, কেন গড় মিথ্যা বলে, আর fan-out কীভাবে tail latency বিস্ফোরিত করে। বিগিনার ১৭ মিনিট
- 07 প্রজেক্ট: URL শর্টনার প্রথম পূর্ণাঙ্গ ডিজাইন — requirement থেকে estimation, key generation, schema, redirect hot path, caching আর scaling পর্যন্ত পুরো পথটা ধাপে ধাপে। বিগিনার ২২ মিনিট
- 08 ক্যাশিং স্ট্র্যাটেজি ক্যাশ কোথায় বসে, কোন প্যাটার্নে লেখা-পড়া হয়, TTL আর invalidation কীভাবে ঠিক করবেন, আর hit ratio-র অর্থনীতি। ইন্টারমিডিয়েট ১৮ মিনিট
- 09 লোড ব্যালান্সিং আর স্টেটলেসনেস L4 বনাম L7, ব্যালান্সিং অ্যালগরিদম, health check-এর ফাঁদ, sticky session কেন খারাপ, আর SIGTERM থেকে exit পর্যন্ত একটা graceful deploy কীভাবে হয়। ইন্টারমিডিয়েট ১৭ মিনিট
- 10 ডেটাবেস স্কেলিং Index থেকে শুরু করে connection pool, read replica, vertical partitioning আর সবশেষে sharding — সস্তা কাজটা আগে করার ক্রমটাই এই চ্যাপ্টারের মূল শিক্ষা। ইন্টারমিডিয়েট ২০ মিনিট
- 11 অ্যাসিনক্রোনাস কাজ আর কিউ কোন কাজটা রিকোয়েস্ট পাথ থেকে সরাবেন, queue না stream বাছবেন, আর worker-কে retry, idempotency ও dead-letter queue দিয়ে কীভাবে বিশ্বাসযোগ্য বানাবেন। ইন্টারমিডিয়েট ১৯ মিনিট
- 12 API কন্ট্রাক্ট আর ভার্সনিং রিসোর্স মডেলিং, HTTP ভোকাবুলারি, pagination, error envelope, rate limit, idempotent write আর কিছু না ভেঙে API বদলানোর নিয়ম। ইন্টারমিডিয়েট ১৯ মিনিট
- 13 কনসিস্টেন্সি আর CAP CAP আসলে কী বলে আর কী বলে না, PACELC-র সৎ হিসাব, consistency model-এর সিঁড়ি, quorum, conflict resolution আর isolation level — কোন ফিচারে ঠিক কতটুকু গ্যারান্টি সত্যিই দরকার। ইন্টারমিডিয়েট ২১ মিনিট
- 14 প্রজেক্ট: সোশ্যাল ফিড রিকোয়ারমেন্ট থেকে শুরু করে fan-out, celebrity সমস্যা, ranking, caching আর শার্ডেড স্টোরেজ — একটা টাইমলাইন সিস্টেম পুরো ডিজাইন করা। ইন্টারমিডিয়েট ২৫ মিনিট
- 15 Distributed Coordination Leader election, lease ও fencing token, distributed lock-এর ফাঁদ, Raft consensus, আর ঘড়ির উপর ভরসা না করে ঘটনার ক্রম ঠিক রাখা। অ্যাডভান্সড ২৬ মিনিট
- 16 Event-Driven আর্কিটেকচার ও CQRS Log-কে সত্যের উৎস বানানো, event sourcing, read model, cross-service workflow-এর জন্য saga, outbox প্যাটার্ন আর event schema-র ইভোলিউশন। অ্যাডভান্সড ২৮ মিনিট
- 17 Search ও Ranking Inverted index, analysis ও tokenisation, BM25 relevance, indexing pipeline ও freshness lag, facet, আর text relevance ছাড়িয়ে ranking। অ্যাডভান্সড ২৮ মিনিট
- 18 Observability ও SLO Metric, log ও trace কোনটা কীসের জন্য, RED ও USE method, SLI/SLO/error budget, উপসর্গে alert করা, আর বাস্তব সংকেত থেকে capacity planning। অ্যাডভান্সড ২৭ মিনিট
- 19 ব্যর্থতার জন্য ডিজাইন Timeout ও retry storm, circuit breaker, bulkhead, backpressure ও load shedding, graceful degradation, আংশিক ব্যর্থতায় idempotency, আর blast-radius ভাবনা। অ্যাডভান্সড ২৯ মিনিট
- 20 প্রজেক্ট: রাইড-হেইলিং ডিসপ্যাচ চলমান গাড়ির অবস্থান, geospatial index, matching-এর race condition, trip state machine, surge pricing-এর feedback loop আর region degrade হলে কী ভাঙে — advanced ব্যান্ডের capstone। অ্যাডভান্সড ৩৪ মিনিট
- 21 মাল্টি-রিজিয়ন আর্কিটেকচার একাধিক region-এ সিস্টেম ছড়ানো — active-passive থেকে active-active, replication lag, conflict resolution, failover আর split-brain ঠেকানোর পুরো গল্প। মাস্টারি ২৫ মিনিট
- 22 সিকিউরিটি ও মাল্টি-টেন্যান্সি একই সিস্টেমে বহু tenant রেখে কীভাবে isolation, authorization, key management আর audit log এমনভাবে ডিজাইন করবেন যাতে একজনের ভুল আরেকজনকে ডোবায় না। মাস্টারি ২৫ মিনিট
- 23 কস্ট ইঞ্জিনিয়ারিং আর্কিটেকচারকে বিল হিসেবে পড়তে শেখা — egress, storage class, idle capacity আর unit economics দিয়ে সিস্টেমের আসল দাম বের করা। মাস্টারি ২৫ মিনিট
- 24 প্রজেক্ট: পেমেন্ট লেজার এমন একটা সিস্টেম ডিজাইন করা যেখানে availability-র চেয়ে correctness বড় — double-entry, exactly-once money movement, reconciliation আর provider ডাউন হলে কী হয়। মাস্টারি ৩৫ মিনিট
- 25 প্রজেক্ট: রিয়েল-টাইম কোলাবোরেটিভ এডিটর একসাথে অনেকে একই ডকুমেন্ট লিখলে কী হয় — OT বনাম CRDT, presence, snapshot, offline reconnect, আর room-গুলো সার্ভারের মধ্যে ভাগ করা। মাস্টারি ৩৫ মিনিট
- 26 প্রজেক্ট: চ্যাট ও প্রেজেন্স সিস্টেম WebSocket gateway, per-conversation sequence number, fan-out, read cursor, presence heartbeat আর reconnection protocol মিলিয়ে ৫০ কোটি মেসেজ/দিন সামলানো একটা চ্যাট সিস্টেম শূন্য থেকে ডিজাইন করা। মাস্টারি ৩৫ মিনিট
- 27 ডিজাইন রিভিউ প্লেবুক সাদা পাতা থেকে শুরু করে একটা ডিজাইন দাঁড় করানো, requirement বার করে আনা, ট্রেড-অফ আগে সামনে আনা, পড়ার মতো design doc লেখা, রিভিউ চালানো — আর একই পদ্ধতি ইন্টারভিউতে চালানো। মাস্টারি ৩০ মিনিট