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), דון בנושאים הבאים: + + + +### שלב 4: תבצע scale לתכנון + +זהה וטפל בצווארי בקבוק, בהתאם לאילוצים. למשל, האם תזדקק לאחד מהפתרונות הבאים כדי להתמודד עם בעיות של סקילביליות? + + + +דון בפתרונות אפשריים וה-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) + +