From 3140221747c0019b8a9b4be1ad9f965057dac565 Mon Sep 17 00:00:00 2001
From: Roy Mayan <>
Date: Sun, 8 Jun 2025 19:04:42 +0300
Subject: [PATCH] Translating - How to approach a system design interview
question
---
README-he.md | 86 +++++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 85 insertions(+), 1 deletion(-)
diff --git a/README-he.md b/README-he.md
index 367f0b3f..8aa4ab31 100644
--- a/README-he.md
+++ b/README-he.md
@@ -107,7 +107,7 @@
-## אינדקס נושאים בתכנון מערכות
+## אינדקס נושאים בארכיטקטורה
@@ -349,3 +349,87 @@
+
+## איך לגשת לשאלת ראיון ארכיטקטורה
+
+
+
+> איך לפתור שאלת ראיון ארכיטקטורה.
+
+ראיון ארכיטקטורה הוא **שיחה פתוחה**. מצופה ממך להוביל אותה.
+
+אתה יכול להיעזר בצעדים הבאים כדי להנחות את הדיון. כדי לחזק את ההבנה של התהליך, תעבור על [שאלות ריאיון בתכנון מערכות עם פתרונות](#system-design-interview-questions-with-solutions) אל מול הצעדים הבאים:
+
+### תאר מקרי שימוש, אילוצים והנחות עבודה
+
+אסוף דרישות והגדר את ה-scope של הבעיה.
+שאל שאלות כדי להבהיר את מקרי השימוש והאילוצים. דון בהנחות העבודה שאתה עושה.
+
+* מי הולך להשתמש במערכת?
+* איך הם הולכים להשתמש בה?
+* כמה משתמשים יהיו?
+* מה המערכת עושה?
+* מה הקלטים והפלטים של המערכת?
+* בכמה דאטא נצטרך לטפל?
+* כמה בקשות לשניה מחכות לנו?
+* מה היחס הצפוי בין קריאה לכתיבה?
+
+### שלב 2: כתוב תכנון במבט על (high level design)
+
+כתוב תכנון high level עם כל הרכיבים החשובים.
+
+* שרטט את הרכיבים החשובים והקשרים ביניהם
+* תצדיק את הרעיונות שלך
+
+### שלב 3: תכנן את הרכיבים המרכזיים
+
+צלול לפרטים של כל רכיב מרכזי. לדוגמה, אם התבקשת לתכנן [שירות קיצור כתובות url](solutions/system_design/pastebin/README.md), דון בנושאים הבאים:
+
+
+ - יצירה ואחסון hash של ה-url המלא
+
+ - דרכים כמו MD5 ו-Base62
+ - התנגשויות hash
+ - מסד נתונים SQL או NoSQL
+ - סכמת הנתונים
+
+
+ - המרה של כתובת מקוצרת לכתובת המלאה
+
+
+ - תכנון API ותכנון מונחה עצמים
+
+
+### שלב 4: תבצע scale לתכנון
+
+זהה וטפל בצווארי בקבוק, בהתאם לאילוצים. למשל, האם תזדקק לאחד מהפתרונות הבאים כדי להתמודד עם בעיות של סקילביליות?
+
+
+ - מאזן עומסים (Load balancer)
+ - סקיילינג אופקי (Horizontal scaling)
+ - שמירה במטמון (Caching)
+ - פיצול בסיס נתונים (Database sharding)
+
+
+דון בפתרונות אפשריים וה-trade-offs. הכול הוא trade-off. התמודד עם צווארי בקבוק בעזרת [עקרונות תכנון מערכת סקילבילית](#index-of-system-design-topics).
+
+### חישובים "על גב המעטפה" (מהירים)
+
+ייתכן שיבקשו ממך לבצע הערכות באופן ידני. ראה את [הנספח](#appendix) עבור המשאבים הבאים:
+
+* [Use back of the envelope calculations](http://highscalability.com/blog/2011/1/26/google-pro-tip-use-back-of-the-envelope-calculations-to-choo.html)
+* [Powers of two table](#powers-of-two-table)
+* [Latency numbers every programmer should know](#latency-numbers-every-programmer-should-know)
+
+### מקורות לקריאה נוספת
+
+עיין בקישורים הבאים כדי להבין טוב יותר למה לצפות:
+
+* [How to ace a systems design interview](https://www.palantir.com/2011/10/how-to-rock-a-systems-design-interview/)
+* [The system design interview](http://www.hiredintech.com/system-design)
+* [Intro to Architecture and Systems Design Interviews](https://www.youtube.com/watch?v=ZgdS0EUmn70)
+* [System design template](https://leetcode.com/discuss/career/229177/My-System-Design-Template)
+
+