آموزش دوره فشرده طراحی سیستم (System Design): مرور سریع پیش از مصاحبه - آخرین آپدیت

دانلود System Design Crash Course: Quick Revision Before Interviews

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: مرور سریع مصاحبه‌های طراحی سیستم شامل مفاهیم کلیدی، تحلیل trade-offها و چارچوب‌های اثبات شده. استفاده از یک متدولوژی شفاف و تکرارپذیر برای پاسخ به هرگونه سوال طراحی سیستم با اعتماد به نفس کامل. تصمیم‌گیری دقیق درباره اجزای سیستم (افزودن یا حذف) بر اساس نیازمندی‌ها، نه بر اساس حدس و گمان. توضیح شفاف مفاهیم اصلی طراحی سیستم در ۱ تا ۲ دقیقه، دقیقاً همان‌طور که مصاحبه‌کنندگان انتظار دارند. تحلیل و توجیه trade-offها بین مقیاس‌پذیری (Scalability)، کارایی (Performance)، هزینه و پیچیدگی. یادآوری سریع مباحث حیاتی طراحی سیستم تحت فشار شرایط مصاحبه. به‌کارگیری یک نقشه راه جامع (Blueprint) برای حل مسائل رایج در مصاحبه‌های طراحی سیستم. پرهیز از اشتباهات رایج مانند مهندسی بیش از حد (Over-engineering) یا استفاده زودهنگام از میکروسرویس‌ها. اتصال پاسخ‌های مصاحبه به تصمیمات مهندسی در دنیای واقعی. پیشنیازها: تجربه برنامه‌نویسی پایه به هر زبانی (Java, Python, JavaScript, C# و غیره) مفید است اما اجباری نیست. آشنایی با اپلیکیشن‌های وب (APIها، پایگاه داده‌ها، مدل کلاینت-سرور) به شما کمک می‌کند بهره بیشتری از دوره ببرید. پیش‌زمینه در مفاهیم طراحی سیستم توصیه می‌شود، زیرا این دوره یک دوره فشرده با تمرکز بر مرور (Revision) است. به ابزار یا نرم‌افزار خاصی نیاز نیست؛ یک دفترچه یادداشت یا تفکر تخته‌سفید کافی است. این دوره برای مبتدیان مطلق نیست، اما نیازی نیست که متخصص طراحی سیستم باشید. اگر قبلاً طراحی سیستم خوانده‌اید و می‌خواهید سریعاً مفاهیم را برای مصاحبه یادآوری کنید، این دوره برای شما ایده‌آل است.

مصاحبه‌های طراحی سیستم درباره کشیدن معماری‌های بی‌نقص یا حفظ کردن الگوها نیست.

بلکه درباره تفکر شفاف، ساختاربندی پاسخ‌ها و توضیح trade-offها تحت فشاراست.

این دوره به عنوان یک دوره فشرده طراحی سیستم برای مرور لحظات آخر پیش از مصاحبهطراحی شده است.

اگر قبلاً طراحی سیستم مطالعه کرده‌اید اما در یادآوری سریع مفاهیم، ساختاردهی به پاسخ‌ها یا حفظ آرامش در مصاحبه مشکل دارید، این دوره دقیقاً برای شما ساخته شده است.

چه چیزی این دوره را متمایز می‌کند؟

  • جلسات کوتاه و متمرکز (هر کدام ۱ تا ۲ دقیقه): هر جلسه دقیقاً یک مفهوم را پوشش می‌دهد تا مرور سریع بدون فشار ذهنی امکان‌پذیر باشد.

  • رویکرد مصاحبه-محور: هر مبحث به گونه‌ای توضیح داده شده که مصاحبه‌کنندگان انتظار دارند شما فکر کنید؛ نه تئوری‌های آکادمیک و نه مهندسی پیچیده.

  • چارچوب‌های شفاف به جای حفظ کردن: یاد می‌گیرید چگونه با استفاده از مدل‌های ذهنی تکرارپذیر، به هر سوال طراحی سیستم پاسخ دهید.

  • یک نقشه راه جامع (Universal Blueprint): یک چارچوب قدرتمند که تمام اجزای ممکن سیستم را نشان می‌دهد و به شما کمک می‌کند بر اساس نیازمندی‌ها، تصمیم بگیرید چه چیزی را اضافه یا حذف کنید.

  • تفکر مبتنی بر Trade-off: به جای جستجوی طراحی «کامل»، یاد می‌گیرید چگونه تصمیمات مربوط به مقیاس‌پذیری، کارایی، هزینه و پیچیدگی را توجیه کنید.

در این دوره چه مواردی را مرور خواهید کرد؟

  • نحوه شروع و ساختاربندی پاسخ به هر سوال مصاحبه طراحی سیستم

  • مبانی شبکه، جریان درخواست (Request Flow)، DNS، لود بالانسرها و CDNها

  • پروتکل‌های ارتباطی مانند HTTP, REST, WebSockets, gRPC و GraphQL

  • الگوهای معماری اصلی: Monolith، میکروسرویس‌ها و سیستم‌های Event-Driven

  • مدیریت وضعیت (State)، کشینگ (Caching)، صف‌ها و سیستم‌های پیام‌رسان

  • انتخاب دیتابیس، Replication، Sharding و تحلیل trade-offهای ذخیره‌سازی

  • مبانی مقیاس‌پذیری، بهینه‌سازی کارایی و قابلیت اطمینان (Reliability)

  • مبادئ امنیتی که مصاحبه‌کنندگان انتظار دارند بدانید

  • اشتباهات رایج و نشانه‌های خطر (Red Flags) در مصاحبه‌های طراحی سیستم

همه این موارد به سرعت، شفاف و در بستر مصاحبهتوضیح داده شده‌اند.

چه کسانی باید در این دوره شرکت کنند؟

  • مهندسان نرم‌افزاری که برای مصاحبه‌های طراحی سیستمآماده می‌شوند

  • توسعه‌دهندگانی که برای نقش‌های Mid-level تا Seniorتلاش می‌کنند

  • داوطلبانی که قبلاً طراحی سیستم خوانده‌اند و به دنبال مرور سریعهستند

  • مهندسانی که در ساختاربندی پاسخ‌ها تحت فشار مصاحبهمشکل دارند

این دوره برای مبتدیان مطلق نیستو جایگزین دوره‌های عمیق و پروژه-محور نمی‌شود. این یک شتاب‌دهنده مروراست، نه یک بوت‌کمپ مفاهیم پایه.

در پایان این دوره، شما قادر خواهید بود:

  • با اعتماد به نفس به هر سوال طراحی سیستم پاسخ دهید

  • تصمیم بگیرید کدام اجزا را اضافه و از کدام‌ها اجتناب کنید

  • مفاهیم طراحی سیستم را در ۱ تا ۲ دقیقه به طور شفاف توضیح دهید

  • مانند یک مهندس Senior، trade-offها را تحلیل و دفاع کنید

  • با آرامش، ساختار و آمادگی کامل وارد مصاحبه شوید

اگر به دنبال یک مرور سریع، متمرکز و آماده برای مصاحبه در زمینه طراحی سیستمهستید، این دوره در زمان شما صرفه‌جویی کرده و باعث عملکرد بهتر شما در لحظات حساس می‌شود.


سرفصل ها و درس ها

نحوه استفاده از این دوره How to Use This Course

  • خوش‌آمدگویی و معرفی دوره Welcome and Introduction to the course

  • این دوره چیست (و چه چیزی نیست) What This Course Is (And Is NOT)

  • نحوه استفاده از دوره ۲۴ ساعت قبل از مصاحبه How to Use This Course 24 Hours Before an Interview

  • نحوه استفاده از دوره ۱ ساعت قبل از مصاحبه How to Use This Course 1 Hour Before an Interview

  • نحوه ارزیابی طراحی سیستم توسط مصاحبه‌کنندگان How Interviewers Evaluate System Design

  • مدل ذهنی طراحی سیستم The System Design Mental Model

ذهنیت مصاحبه طراحی سیستم System Design Interview Mindset

  • معنای «طراحی خوب» در مصاحبه‌ها What “Good Design” Means in Interviews

  • نیازمندی‌های کاربردی (Functional) در مقابل غیرکاربردی (Non-Functional) Functional vs Non-Functional Requirements

  • نحوه پرسیدن موثر سوالات شفاف‌کننده Asking Clarifying Questions Effectively

  • تخمین ظرفیت با استفاده از محاسبات سریع Capacity Estimation Using Rough Math

  • قانون طلایی مصاحبه‌های طراحی سیستم The Golden Rule of System Design Interviews

  • استراتژی تفکر بلند (Think Aloud) The Think-Aloud Strategy

شبکه و جریان درخواست Networking & Request Flow

  • جریان درخواست کلاینت-سرور Client–Server Request Flow

  • آدرس‌های IP عمومی در مقابل خصوصی Public vs Private IP Addresses

  • مقایسه IPv4 و IPv6 IPv4 vs IPv6

  • جریان تحلیل DNS DNS Resolution Flow

  • کشینگ DNS و TTL DNS Caching and TTL

  • پروکسی مستقیم (Forward) در مقابل پروکسی معکوس (Reverse) Forward Proxy vs Reverse Proxy

  • مبانی لود بالانسر Load Balancer Fundamentals

  • لود بالانسینگ لایه ۴ در مقابل لایه ۷ Layer 4 vs Layer 7 Load Balancing

  • شبکه‌های توزیع محتوا (CDN) Content Delivery Networks (CDN)

پروتکل‌های ارتباطی Communication Protocols

  • مقایسه TCP و UDP TCP vs UDP

  • چرا HTTP به خوبی مقیاس‌پذیر است Why HTTP Scales So Well

  • ماهیت بدون وضعیت (Stateless) در HTTP HTTP Stateless Nature

  • رویکرد REST از دیدگاه مصاحبه REST – Interview Perspective

  • متدهای HTTP و Idempotency HTTP Methods and Idempotency

  • کدهای وضعیت (Status Codes) در HTTP HTTP Status Codes

  • وب‌سوکت‌ها (WebSockets) WebSockets

  • مقایسه Long Polling و WebSockets Long Polling vs WebSockets

  • پروتکل gRPC gRPC

  • پروتکل GraphQL GraphQL

الگوهای معماری Architectural Patterns

  • معماری یکپارچه (Monolithic) Monolithic Architecture

  • معماری Monolith ماژولار Modular Monolith Architecture

  • معماری لایه‌ای (Layered) Layered Architecture

  • معماری چند لایه (Multi-Tier) Multi-Tier Architecture

  • معماری میکروسرویس‌ها Microservices Architecture

  • پیچیدگی‌های میکروسرویس‌ها Complexity of Microservices

  • کشف سرویس (Service Discovery) Service Discovery

  • ارتباطات همزمان (Synchronous) در مقابل نامتقارن (Asynchronous) Synchronous vs Asynchronous Communication

  • معماری رویداد-محور (Event Driven) Event-Driven Architecture

  • مقایسه Pub Sub و Event Streaming Pub-Sub vs Event Streaming

  • الگوی CQRS CQRS

  • سازگاری نهایی (Eventual Consistency) Eventual Consistency

وب و مدیریت وضعیت Web & State Management

  • سیستم‌های بدون وضعیت (Stateless) در مقابل وضعیت‌دار (Stateful) Stateless vs Stateful Systems

  • مقایسه Cookies, Sessions و JWT Cookies vs Sessions vs JWT

  • احراز هویت بدون وضعیت با JWT JWT and Stateless Authentication

  • ذخیره‌سازی Session در سیستم‌های توزیع‌شده Session Storage in Distributed Systems

  • مبانی سریال‌سازی (Serialization) Serialization Basics

  • مقایسه JSON و Protocol Buffers JSON vs Protocol Buffers

  • توضیح CORS CORS Explained

  • اشتباهات رایج در CORS Common CORS Pitfalls

مبانی مقیاس‌پذیری Scalability Fundamentals

  • معنای واقعی مقیاس‌پذیری (Scalability) What Scalability Really Means

  • مقیاس‌بندی عمودی در مقابل افقی Vertical vs Horizontal Scaling

  • چرا مقیاس‌بندی افقی برنده است Why Horizontal Scaling Wins

  • مقیاس‌بندی خواندن (Read) در مقابل نوشتن (Write) Read Scaling vs Write Scaling

  • الگوریتم‌های لود بالانسینگ Load Balancing Algorithms

  • مفاهیم اتوسکیلینگ (Autoscaling) Autoscaling Concepts

  • سرویس‌های Stateless و مقیاس‌پذیری Stateless Services and Scalability

ذخیره‌سازی و پایگاه داده‌ها Storage & Databases

  • انتخاب دیتابیس مناسب Choosing the Right Database

  • مقایسه SQL و NoSQL SQL vs NoSQL

  • مقایسه ACID و BASE ACID vs BASE

  • قضیه CAP (نگاه کاربردی) CAP Theorem (Practical View)

  • تکثیر داده‌ها (Replication) Replication

  • تکثیر Leader-Follower Leader–Follower Replication

  • شاردینگ (Sharding) Sharding

  • اشتباهات در انتخاب Shard Key Shard Key Selection Pitfalls

  • اندکس‌گذاری (Indexing) Indexing

  • نرمال‌سازی در مقابل دنورمال‌سازی Normalization vs Denormalization

  • ذخیره‌سازی شیء‌گرا (Object Storage) Object Storage

  • مقایسه File Storage و Object Storage File Storage vs Object Storage

بهینه‌سازی کارایی Performance Optimization

  • تأخیر (Latency) در مقابل نرخ انتقال (Throughput) Latency vs Throughput

  • مبانی کشینگ Caching Fundamentals

  • محل قرارگیری کش (Cache Placement) Cache Placement

  • ابطال کش (Cache Invalidation) Cache Invalidation

  • هشینگ سازگار (Consistent Hashing) Consistent Hashing

  • مقایسه Write-Through و Write-Back Cache Write-Through vs Write-Back Cache

  • صف‌ها و پردازش نامتقارن (Async) Queues and Async Processing

  • مقایسه Kafka و RabbitMQ Kafka vs RabbitMQ

  • پردازش دسته‌ای (Batch) در مقابل جریانی (Stream) Batch vs Stream Processing

  • هم‌روندی (Concurrency) در مقابل موازی‌سازی (Parallelism) Concurrency vs Parallelism

  • استخرهای رشته‌ای (Thread Pools) Thread Pools

قابلیت اطمینان و تحمل خطا Reliability & Fault Tolerance

  • قابلیت اطمینان در مقابل در دسترس بودن (Reliability vs Availability) Reliability vs Availability

  • در دسترس بودن بالا (High Availability) High Availability

  • مدل Active-Active در مقابل Active-Passive Active-Active vs Active-Passive

  • مکانیزم‌های Failover Failover Mechanisms

  • کاهش تدریجی کیفیت (Graceful Degradation) Graceful Degradation

  • تلاش مجدد و طوفان‌های Retry Retries and Retry Storms

  • الگوی Circuit Breaker Circuit Breakers

  • استراتژی‌های پشتیبان‌گیری (Backup) Backup Strategies

  • مقایسه RTO و RPO RTO vs RPO

ضروریات امنیت Security Essentials

  • مثلث امنیتی CIA CIA Triad

  • احراز هویت (Authentication) در مقابل مجوزدهی (Authorization) Authentication vs Authorization

  • مبانی OAuth 2.0 OAuth 2.0 Basics

  • نقاط ضعف امنیتی JWT JWT Security Pitfalls

  • رمزنگاری در حالت استراحت در مقابل انتقال Encryption at Rest vs In Transit

  • پروتکل‌های TLS و HTTPS TLS and HTTPS

  • محدود کردن نرخ درخواست (Rate Limiting) Rate Limiting

  • مبانی حملات DDoS DDoS Basics

  • آشنایی با ۱۰ مورد برتر OWASP OWASP Top 10 Awareness

نقشه راه جامع طراحی سیستم Universal System Design Blueprint

  • نقشه راه جامع طراحی سیستم چیست What Is a Universal System Design Blueprint

  • نقشه کامل اجزای طراحی سیستم Complete System Design Component Map

  • چگونه تصمیم بگیریم چه چیزی را اضافه نکنیم How to Decide What NOT to Include

  • نگاشت نیازمندی‌ها به اجزای سیستم Mapping Requirements to Components

  • طراحی تدریجی: شروع ساده و سپس مقیاس‌پذیری Progressive Design: Start Simple, Then Scale

  • نشانه‌های خطر در مصاحبه‌های طراحی سیستم Red Flags in System Design Interviews

  • تخمین مقیاس و شناسایی گلوگاه‌ها (Bottlenecks) Estimating Scale & Identifying Bottlenecks

  • حل مسائل طراحی سیستم با استفاده از نقشه راه Solving System Design Problems Using the Blueprint

جمع‌بندی دوره Course Closure

  • توصیه‌های نهایی: مصاحبه، مرور و گام‌های بعدی Final Advice: Interviews, Revision, and What Comes Next

نمایش نظرات

آموزش دوره فشرده طراحی سیستم (System Design): مرور سریع پیش از مصاحبه
جزییات دوره
3.5 hours
108
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
97
5 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Rahul Rajat Singh Rahul Rajat Singh

معمار راه حل | مایکروسافت MVP | CodeProject MVP