ארכיטקט/ית תוכנה בישראל: מה התפקיד עושה, שכר, ואיך נכנסים
זמן קריאה: 7 דקות
ארכיטקט/ית תוכנה אחראי על ההחלטות היקרות לשינוי: איך המערכת מחולקת לרכיבים, איך הם מדברים, איפה נשמר המידע ומה קורה כשמשהו נופל. התוצר המרכזי הוא החלטות מתועדות ולא קוד. בלוח HiTakeJob פתוחות כרגע 110 משרות שמזכירות Kubernetes, וזהו אחד הכלים שהתפקיד נשען עליהם.
החצי של התפקיד שלא כותב קוד
ארכיטקט שכותב קוד כל היום אינו עושה את העבודה שלשמה מונה, וארכיטקט שלא נוגע בקוד כלל מאבד את היכולת לשפוט היתכנות. האיזון המקובל בישראל הוא בין 20 ל-40 אחוז מהזמן בקוד, ובעיקר בחלקים שמוכיחים היתכנות של החלטה.
שאר הזמן מתחלק בין ארבעה סוגי עבודה: כתיבת מסמכי החלטה, בדיקת תכנון של צוותים אחרים, שיחות עם בעלי עניין שאינם טכניים, ואיסוף נתונים - מדידת עומס, עלות ענן, וזמני תגובה - כדי להכריע ויכוח בעובדות במקום בדעות.
החלק שמפתיע את מי שעולה לתפקיד הוא כמה ממנו הוא שכנוע. לארכיטקט אין לרוב כפיפים ואין לו סמכות לכפות בחירה על צוות, ולכן החלטה שלא הוסברה היטב פשוט לא מיושמת. בפועל, אותה החלטה מוצגת שלוש או ארבע פעמים לקהלים שונים: לצוות הפיתוח במונחי מימוש, ל-DevOps במונחי תפעול ועלות, ולהנהלה במונחי סיכון ולוח זמנים.
ADR: מסמך ההחלטה שהוא התוצר המרכזי
ADR הוא מסמך קצר שמתעד החלטת ארכיטקטורה אחת. הוא נכתב פעם אחת ואינו נערך אחר כך: כשההחלטה משתנה, נכתב מסמך חדש שמסמן את הקודם כמוחלף. זו הנקודה שרוב הצוותים מפספסים, והיא כל העניין - המסמך הוא רשומה היסטורית ולא מדריך.
| סעיף ב-ADR | מה כותבים בו | טעות נפוצה |
|---|---|---|
| הקשר | מה המצב שאילץ החלטה | לתאר את הפתרון במקום את הבעיה |
| אפשרויות שנשקלו | שתיים עד ארבע, בהוגנות | לרשום אפשרות דמה כדי להצדיק את הנבחרת |
| ההחלטה | מה נבחר, במשפט אחד | ניסוח מעורפל שאי אפשר לבדוק מולו |
| השלכות | מה נעשה קשה יותר בעקבותיה | לרשום רק יתרונות |
| סטטוס | מוצע, התקבל, הוחלף | להשאיר מסמכים ללא סטטוס |
שורת ההשלכות היא זו שמעניקה למסמך ערך אמיתי כעבור שנתיים. מהנדס חדש שקורא למה נבחר מסד נתונים מסוים ומה הוקרב בתמורה יפסיק לשאול את השאלה שכולם שואלים, ולא ינסה לתקן החלטה מודעת.
נקודה שכדאי לומר במפורש על היקף התיעוד: לא כל החלטה מצדיקה מסמך. הכלל המעשי הוא לכתוב רק כשההחלטה יקרה לשינוי, כשהיא משפיעה על יותר מצוות אחד, או כשהיא סותרת אינטואיציה - למשל בחירה שנראית מיושנת אך נכונה בהקשר הזה. ארגון שכותב מסמך לכל בחירת ספרייה מייצר ארכיון שאיש לא קורא, וזה בדיוק אותו נזק כמו לא לתעד בכלל.
מסמך trade-off: איך מכריעים בין שתי אפשרויות סבירות
רוב ההחלטות הארכיטקטוניות אינן בין נכון לשגוי אלא בין שתי אפשרויות שכל אחת עדיפה בממד אחר. המסמך שמכריע ביניהן בנוי על ממדים מפורשים במקום על תחושה:
- עלות תפעול - כמה זה עולה בחודש בענן ובזמן אדם, לא רק כמה זה עולה לבנות.
- מורכבות תפעולית - כמה רכיבים חדשים הצוות יצטרך לתחזק ולנטר.
- מהירות שינוי - כמה זמן ייקח להוסיף יכולת דומה בעתיד.
- מה קורה כשזה נשבר - האם הכשל מקומי או מפיל את כל המערכת.
- הפיכות - כמה יקר לחזור אחורה אם נטעה.
הממד האחרון הוא הכלי המעשי ביותר. החלטה הפיכה בזול לא צריכה מסמך ולא צריכה ועדה - פשוט מנסים. החלטה שקשה לחזור ממנה, כמו פיצול מונולית למיקרו-שירותים או מעבר ספק ענן, מצדיקה שבועות של בדיקה. 30 משרות בלוח מזכירות מיקרו-שירותים, וזו בדיוק סוג ההחלטה שנשאלים עליה בראיון.
ארכיטקט מול טק ליד מול מהנדס בכיר
| תפקיד | טווח האחריות | מדד ההצלחה |
|---|---|---|
| מהנדס/ת בכיר/ה | תחום במערכת | הפיצ'רים נסגרים בזמן ובאיכות |
| טק ליד | צוות אחד | הצוות עובד חלק ומתפתח |
| ארכיטקט/ית | כמה צוותים או מוצר | ההחלטות מחזיקות מעמד שנתיים קדימה |
| ארכיטקט/ית פתרונות | מול לקוח חיצוני | הפתרון נמכר וגם ניתן למימוש |
השורה האחרונה מתארת תפקיד שונה מהותית שקל להתבלבל בו: 10 משרות בלוח מסומנות בקטגוריית ארכיטקטורת פתרונות, ו-9 בארכיטקטורת נתונים. ארכיטקט פתרונות יושב קרוב למכירות ומתרגם צורך של לקוח לתכנון, ולכן הוא דורש כישורי תקשורת חיצונית שתפקיד הארכיטקט הפנימי לא תמיד דורש.
מה חוזר בדרישות המשרה
הדרישות שמופיעות שוב ושוב מתחלקות לשלושה אשכולות. ענן ותשתית: 9 משרות מזכירות ארכיטקטורת ענן במפורש, ולצידן דרישות ל-AWS, Azure או GCP ולתשתית כקוד. מערכות מבוזרות: תורים והודעות, עקביות נתונים, טיפול בכשל חלקי, ו-API שמחזיק אחורה. והשכבה האנושית: יכולת להציג החלטה בפני הנהלה לא טכנית ולשכנע צוות שלא מסכים.
דרישה נוספת שמופיעה כמעט תמיד ונקראת בקלות לא נכון היא ניסיון בהגירה. כמעט אף ארכיטקט בישראל לא מתחיל ממערכת ריקה: העבודה בפועל היא לקחת מערכת שעובדת, מכניסה כסף ואי אפשר להשבית אותה, ולהזיז אותה למקום אחר בלי שאיש ירגיש. מי שמספר בראיון איך העביר מסד נתונים או שירות מרכזי בלי השבתה נמצא בעמדה חזקה בהרבה ממי שמתאר תכנון תיאורטי.
הערכת שוק לשכר ארכיטקט תוכנה בישראל
נאמר במפורש: אין באתר נתוני שכר, והמספרים כאן הם הערכת שוק מתוך הנהוג בתעשייה ולא נתון שנמדד מהמשרות בלוח.
| רמה | הקשר | הערכת שוק - ₪ ברוטו לחודש |
|---|---|---|
| ארכיטקט/ית בתחילת הדרך | מוצר אחד, צוות אחד | 38,000-48,000 (הערכת שוק) |
| ארכיטקט/ית מנוסה | כמה צוותים | 48,000-62,000 (הערכת שוק) |
| ארכיטקט/ית ראשי | רוחב ארגוני | 60,000-80,000 (הערכת שוק) |
| ארכיטקט/ית פתרונות | מול לקוחות | 35,000-55,000 (הערכת שוק) |
הערה שכדאי לקחת בחשבון בשיחת השכר, גם היא הערכת שוק: בחלק מהחברות ארכיטקט ומהנדס ראשי יושבים על אותה רמה בטבלת השכר, וההבדל הוא בתוכן העבודה ולא בתגמול.
ראיון ארכיטקטורה: מה באמת נבדק
הראיון כמעט תמיד כולל תרגיל תכנון פתוח של 45 עד 60 דקות. מה שנבדק אינו התרשים אלא סדר החשיבה:
- האם שאלתם על היקף לפני שציירתם - כמה משתמשים, כמה כתיבות לשנייה, כמה זמן שמירת נתונים.
- האם נקבתם במספרים - הערכה גסה של נפח אחסון ותעבורה עדיפה על ויתור על ההערכה.
- האם ציינתם מה הקרבתם - תשובה בלי חיסרון אחד מסמנת חוסר ניסיון.
- מה קורה כשרכיב נופל - זו השאלה שמפרידה בין מי שתחזק מערכת בייצור למי שלא.
- האם התעקשתם על מורכבות מיותרת - מועמד שמציע מיקרו-שירותים למערכת עם אלף משתמשים נופל כאן.
שאלות ספציפיות שחוזרות: איך תתכנן מערכת התראות בזמן אמת; איך תבצע הגירת מסד נתונים בלי השבתה; ומתי היית מפצל מונולית ומתי לא. השאלה האחרונה היא מלכודת - התשובה הנכונה כוללת לרוב "ברוב המקרים לא".
לצד התרגיל מגיע כמעט תמיד ראיון התנהגותי שבוחן דבר אחד: איך התנהגתם כשטעיתם. השאלה מנוסחת בדרך כלל כבקשה לתאר החלטת ארכיטקטורה שהתבררה כשגויה. מועמד שמתאר את ההחלטה, את הסימן שגילה שהיא שגויה, ומה עשה כדי לחזור ממנה, נתפס אמין הרבה יותר ממי שמציג רצף הצלחות. בתפקיד שכולו הכרעה בתנאי אי ודאות, היעדר טעות אחת בסיפור הוא סימן מדאיג ולא מרשים.
איך מגיעים לתפקיד
אין מסלול ישיר, וזו עובדה חשובה: בלוח פתוחות כרגע 7 משרות שנושאות בכותרת ארכיטקט תוכנה או ארכיטקט פתרונות, כלומר זהו שוק צר שמתאייש בעיקר מבפנים. המסלול המקובל עובר דרך שש עד עשר שנות פיתוח, מתוכן לפחות שנתיים באחריות על תחום שלם.
שלושה צעדים מעשיים למי שמכוון לשם: להתחיל לכתוב מסמכי תכנון גם כשאף אחד לא ביקש; להתנדב לעבודה שחוצה צוותים, כי שם נרכש הרוחב; ולקחת אחריות על תקלת ייצור אחת מקצה לקצה, כולל תחקיר כתוב. הקריירה עד לנקודה הזו מתוארת במה עושה מהנדס תוכנה.
מה פתוח בלוח כרגע
מכיוון שהתפקיד עצמו נדיר במודעות, החיפוש המעשי הוא לפי הטכנולוגיות שמסמנות מערכות בקנה מידה: 110 משרות מזכירות Kubernetes ו-30 מזכירות מיקרו-שירותים. מי שמתעניין בהצטלבות של ארכיטקטורה ואבטחה ימצא המשך ישיר בארכיטקט אבטחת מידע.
שאלות נפוצות
האם ארכיטקט עדיין כותב קוד?
כן, אך פחות ובאופן ממוקד: הוכחות היתכנות, ספריות משותפות ותיקונים בנקודות קריטיות. ארכיטקט שהפסיק לגמרי מאבד תוך שנה את היכולת להעריך כמה עולה באמת מה שהוא מציע, וזה נשמע בפגישות.
מה ההבדל בין ארכיטקט לארכיטקט פתרונות?
הראשון מתכנן את המערכת של החברה עצמה; השני מתכנן פתרון עבור לקוח חיצוני, לרוב מתוך מוצר קיים, ועובד בצמוד למכירות. השני דורש יותר מצגות ופחות עומק במימוש.
האם חייבים תואר שני לתפקיד?
לא. מה שנבדק הוא היסטוריה של החלטות שהחזיקו מעמד, ולכן ניסיון מוכח שווה יותר מתואר נוסף. תואר שני רלוונטי בעיקר בתחומים ספציפיים כמו מערכות מבוזרות או למידת מכונה.
איך מודדים ארכיטקט מוצלח?
בשני מדדים שנראים רק בדיעבד: כמה מההחלטות שלו עדיין תקפות אחרי שנתיים, וכמה זמן לוקח לצוות חדש להתחיל לתרום במערכת. ארכיטקטורה טובה מורגשת בהיעדר דרמה ולא בנוכחות תרשימים.
מה הכישלון הנפוץ ביותר בתפקיד?
הנדסת יתר. לבחור פתרון שמתאים לקנה מידה שהחברה אולי תגיע אליו בעוד חמש שנים, ולשלם על כך במורכבות תפעולית מיידית. הנזק מצטבר לאט ולכן קשה לזהות אותו בזמן.
האם אפשר לחזור מארכיטקטורה לפיתוח?
כן, והמעבר קל יחסית אם שמרתם על עבודה מעשית בקוד. מי שהיה חמש שנים רק במצגות מגלה שהוא צריך תקופת התאמה לא קצרה, בעיקר בכלים ובשגרות עבודה שהשתנו.
מי מקבל את ההחלטה כשהצוות לא מסכים?
במודל שעובד, הארכיטקט מציג את האפשרויות ואת ההשלכות והצוות מכריע יחד איתו; החלטה שנכפתה מלמעלה נוטה להיות מיושמת חלקית ואז להיכשל. סמכות בתפקיד הזה נבנית מאמון ולא מהגדרה בארגון.