22 באוגוסט 2023

"למה בהייטק הכל בלגן ?"

במפגש משפחתי אחד, כשסיפרתי לקרוב-משפחה על הקשיים שלי במקום העבודה החדש, הוא קטע אותי ושאל - "תגיד, למה בהייטק זה נשמע שהכל זה "שכונה" בתהליכי העבודה? איך זה, שעם כל הטכנולוגיה והמחשבים שלכם אתם לא מצליחים להוציא תוכנה אחת נורמלית בלי באגים ?" חייכתי ועצרתי לחשוב לרגע על מה שהוא אמר ובתור תגובה החלטתי לכתוב את הפוסט הזה.

הסמכות

כל מקצוע מכובד מתחיל בחלוקת הסמכות לבעלי המקצוע.

יש הסמכות בפיתוח תוכנה - או לפחות מנסים למכור אותן. אם תעשו חיפוש קל בגוגל תגלו לא מעט קורסים להסמכות עבור "מפתח Full Stack" או תארים של "מהנדס תוכנה" המבטיחים הכשרה "אמיתית" להייטק. האם זה עובד ? תנסו לשאול מפתחים וותיקים, בייחוד כאלה עם ניסיון בגיוס מועמדים - סביר שהם יאנחו ויגידו שלא ממש. אולי חלקית.

זה מעלה שוב את השאלה - "האם בכלל יש צורך בכלל בהסמכה כדי לעבוד בפיתוח בהייטק?" אבל אני חושב שעניתי על השאלה הזו בפוסט האם יש צורך בתואר ראשון במדעי-המחשב כדי לעבוד בפיתוח בהייטק.

למעשה, הייתי שואל שאלה אחרת. איך זה שבתחומים אחרים, ישנן הגדרות מאוד ברורות מאיפה מתחילים ולאיפה מתקדמים עם הוותק ועם ההסמכות הנדרשות ?

במקצועות הגבוהים זה חד כסכין - אחות מוסמכת היא לא רופא. רופא משפחה הוא לא כירורג, עו"ד לענייני נדל"ן הוא לא עו"ד פלילי. טייס של מנוע אחד הוא לא טייס של שני מנועים ובטח לא של מנוע סילון.

אבל גם אצל בעלי מקצוע פשוטים יותר זה די ברור: שיפוצניק הוא לא חשמלאי מוסמך ובטח לא קבלן, נהג מונית הוא לא נהג אוטובוס, אופה פיצות הוא לא קונדיטור או שף וכו'.

לא משנה כמה וותק ומקצועיות יש לך או כמה סרטוני יוטיוב ראית, אתה לעולם לא תוכל "לזלוג" ממקצוע אחד לאחר בלי להיבחן ולקבל את ההסמכה ע"י גוף חיצוני. וגם אם תעשה זאת, יהיה קשה לך למצוא לקוחות.

ואיך זה בהייטק ? קצת פחות מסודר...

מפתח מתחיל שרק עשה קורס - יכול לכתוב בלינקדין שהוא מפתח Full Stack כי זה מה שאמרו לו שהוא בסיום הקורס שעבר בהצלחה. לחילופין, הוא פשוט יכול לטעון שהוא כזה כי לאחרונה סיים כמה קורסים ב-Udemy.

הכרתי אנשים שכתבו בקו"ח שהם מפתחי אפליקציות למרות שהם פיתחו טסטים, כאלה שניפחו את הניסיון שלהם כי "קשה למצוא עבודה בתור ג'וניור" או על כאלה שמחקו ניסיון רק כדי להתקבל לתפקיד שחיפש ג'וניורים. 

זה לא חדש שמועמדים עורכים ומתאימים את קו"ח שלהם כדי שיתאימו לתפקיד. גם מי שלא עושה זאת - מקבל המלצה לעשות זאת. הבעיה היא שאף אחד לא אומר לך עד כמה זה הגיוני "להתאים" ומה מפסיק להיחשב "התאמה" ומתחיל יותר לכיוון שקר גס.

כתגובה לכך, המעסיקים מנסים להתגונן דרך ממליצים ומבחני יזע בראיונות עבודה שלא היו מביישים מבחנים מהאוניברסיטאות. 

כדי להתגונן בחזרה, מועמדים נרשמים לקורסי מרתון וחורשים שאלות ראיון מתוך בנקים של שאלות במשך ימים, שבועות ולפעמים חודשים.

אם יתאמץ מספיק, המועמד יעבור ללא ספק את הראיון בסוף, אך מה זה מעיד על יכולות העבודה שלו בפועל ? ככל הנראה, לא הרבה.


תחומי אחריות

בכל ארגון מכובד, יש תחומי אחריות מוגדרים. מהיכן הייצור מתחיל והיכן הוא נגמר ? איזו מחלקה מעבירה תוצרים לאיזו מחלקה ? מי בודק ומאשר את התוצרים ללקוחות ? 

ואיך זה בהייטק ? בואו ננסה לראות זאת מזווית של עובד חדש.

אז בשעה טובה התקבלתם לעבודה החדשה שלכם. מזל טוב ! עם הזמן, הרגשת האופוריה מתחלפת לאט בחרדה כאשר מנסים להבין מי נגד מי:

מה עושה כל צוות ? יש פה בכלל QA ? מי אחראי כשה-Product נופל? יש מנהל מוצר ? איך הוא משתלב ביחס לר"צ עם ניהול המשימות ? מה עם DevOps ? רגע, עובדים פה ב-Agile מלא או בכאילו ? 

דבר אחד אתם בטוחים שתמצאו שם, רק צריך לשאול איפה הוא - Git.

לאחר מספר חודשים - האנרגטיות והיוזמה, חוש הצדק וחוסר המנוחה שאפיינו אתכם דועכים בהתמדה כמו פיבונאצ'י שלילי יחד עם כמות השאלות. נושאים פתוחים שכתבתם לעצמכם לברר, אתם מחליטים פשוט לסגור מחוסר עניין לציבור, עד שאתם נהפכים להיות עובד מן המנין - כמו שאר חבריכם לצוות ומסתכלים באופן מוזר על העובד החדש שהגיע אחריכם למרות שהוא מתנהג באותה צורה כמוכם כשהגעתם.


הכשרה

עובד חדש שמגיע לארגון מכובד, מתחיל תהליך הכשרה או חפיפה מסודר. נהלי בטיחות, איפה מעבירים כרטיס, איך מקבלים גישה למקומות השונים, איך לומדים להפעיל את הציוד, מערכות המידע ועוד.

בהייטק: בחברות גדולות, לרוב יש תהליך הדרכה יחסית מסודר לעובד חדש: יום ראשון, צפייה בסרטוני וידאו משעממים, הדרכה מאיפה מזמינים אוכל, איך מקבלים יוזר, מתי ה-Happy Hour והרבה מסמכים לקרוא. אח"כ אתה לומד על המוצר של החברה מבעלי תפקידים שונים בחברה, אולי הרצאות על החברה עצמה, אולי תקבל תרגיל נחמד.. וככה זה נמשך לפעמים ימים, לפעמים שבועות.


בחברות קטנות, קוראים לזה On The Job Training. במילים אחרות - "תתחיל לעבוד, אם יש לך שאלות - תשאל". "רק ככה לומדים - דרך הידיים." יגידו לך.

מתישהו, הבוס שעובר מאחורי העמדה שלך ב-Open Space מחליט שזה מספיק ומתחיל לזרוק עליך משימות שנראה לו שיתאימו לך. איך הוא יודע שהן מתאימות ? כי שאר העובדים בצוות שלו לא רצו לעשות אותן או שבדיוק עזב מישהו והשאיר ערימות של קוד שאף אחד לא מבין.


נהלי עבודה

בכל ארגון המחשיב את עצמו, יש נהלי עבודה. איך מתחילים את היום והשבוע ואיך מסיימים אותו. באילו מערכות או תוכנות משתמשים או באיזה ציוד לטובת אילו משימות ? מי מחליט שהמשימה התבצעה טוב או לא טוב ? כיצד מפיקים לקחים ? היכן מתעדים ידע וניסיון ?



בהייטק: סיימת לכתוב את שורות הקוד הראשונות שלך ועשית commit ראשון. מזל טוב!

יש מישהו שעושה Code Review ? או שדוחפים פשוט ל-Master  (או Main בלשון נקייה) ? האם ה-Review הוא מועיל ומקדם או רק מציק ומעכב ? 

צלחת את ה-Review, עשית Push ו-Merge. האם כתבת Unit Tests? האם יש תהליך CI/CD מסודר ? האם קיימים תהליכי אוטומציה בארגון שבודקים את האיכות בקוד שלך ?

ואיך כתבת את הקוד ? האם אתה נעזר בעקרונות פיתוח מעולמות ה-Design Pattern? מקפיד על על עקרונות SOLID ? האם יש לך מושג מה זה אומר בכלל? 

מניסיוני, לרוב התשובות לשאלות האלה מתבססות על ההחלטה של הר"צ שלרוב מתבסס על ניסיון העבר שלו מהמקומות הקודמים. מה שעשו שם, כנראה יעשה גם כאן.

נכון שמדי פעם יגיעו עובדים חדשים נלהבים שינסו לקדם ולייעל תהליכים, אבל זה יעבור להם.


החומר האנושי

יש דבר אחד משותף לכל הארגונים - תעשייתיים או תוכנתיים, לואו-טק או היי-טק וזהו האנשים בארגון.

אז נכון, בהייטק יש את עובדות ה-HR הנחמדות שישלחו מיילים שמחים ומקושטים לכולם, יברכו כל עובד ביומהולדת שמח עם כרטיס מתנה, יעשו Happy Hours עם פעילויות "מגבשות" ובאופן כללי ינסו תמיד להרים את האווירה.


אבל, אחרי שהן הולכות - האווירה חוזרת לשגרה. וככל שהארגון גדל מתפתחות אינטריגות ומתחים בין המחלקות ולעיתים בין הצוותים. המתח הזה לעיתים מתודלק ע"י המנהלים עצמם בהחלפת האשמות בישיבות, ברכילויות פנימיות או פשוט באדישות ובהתעלמות מהמצב.

האנשים מטבעם נוטים לסטריאוטיפים ולבדלנות - אתה בצוות השני אז אתה עובד "איתם" ולא "איתנו". החברה מהמחלקה "ההיא" הם עושים עבודה על הפנים.. לא כמו אצלנו..

"האלה מה-IT סתומים חבל על הזמן ..", "החברה של ה-QA האלה הורגים אותי.. אין להם מה לעשות?"

אנשים מתחילים לשלוח מיילים כאורך הגלות עם דוח מפואר על מה שעשו, תוך ציוני AI לאלה שעשו פחות טוב וצריכים לתקן. זה מוביל להתעלמות מהצד השני. זה מוביל לזעם גדול יותר מהצד השולח, מה שמוביל לזימוני ישיבות.

"הוא לא ענה לך ? הבנתי. תזמן בבקשה אותו, את הבוס שלו, את הצוות המקביל ואת הצוות מחו"ל שיהיו ב-CC" 

ואז אנשים באים לישיבות ומפתחים את תסמונת הישיבה. פותחים לפטופים ומחכים שזה יעבור. מדי פעם קוראים להם - הם מרימים ראש "מה? לא שמעתי. תוכל לחזור ?"

עד שמגיעים לישיבות שהמנהלים הבכירים מזמנים. שם אף אחד לא מעיז לפתוח את הלפטופ. המזגן תמיד על מינוס 20 ויש דממה. לרוב, המנהל הבכיר נואם ושאר האנשים מנסים להלחם בצורך לבדוק את הסטטוס שלהם ברשתות החברתיות. כולם ישובים דרוכים ואף אחד לא מחייך, גם לא החבר הכי טוב שלך. וכשמישהו נשאל לגבי האחריות שלו שקשורה למחדל כלשהו, הוא יעשה את הכל כדי לנקות את עצמו - גם אם זה אומר לשקר או להאשים אחרים או לגלגל אחריות למישהו אחר, גם אם זה אתה - העובד החדש שרק סיים הכשרה לפני שבוע וכל היושבים יודעים את זה ושותקים.


וותק

כל ארגון מכובד מתפאר בוותק של העובדים שם. "ההוא שם הדליק את האור בחברה.", "זה פנסיונר אבל עובד בחצי משרה". הממוצע יכול להגיע ל-5 או 7 שנים כאשר יש כאלה שמעל 10 שנים בארגון.

בהייטק: מי שנשאר מעל שנתיים באותו ארגון, מתחיל להרגיש חוסר נוחות מסויים. מי שנשאר מעל 3-4 שנים, אם הוא לא התקדם למעלה בתפקיד ובתחומי אחריות, נחשב כעובד לא משהו שכנראה חושש לחפש אתגרים בחוץ. לאלה שמעל ה-5 שנים מודדים דופק.

כמעט כל אחד שיש לו חשבון בלינקדין מופצץ בהודעות עם מגייסות מתוקות שמציעות לך את העבודה המדהימה הבאה. "אתה תוביל .. אתה תחליט..", "חברה יוניקורן שהרוויחה מיליארדים..", "תנאי העסקה מעולים.. נבחר כמוביל בשביעות רצון..."

בגדול, זה עניין של זמן עד שהשגרה מתחילה לסדוק שם משהו. השאלה איך תטפל בזה ? תבקש העלאת שכר ? שינוי בתפקיד ? לפעמים זה לא אפשרי ולפעמים יש מועמד אחר מתאים יותר.


לפעמים יש גם קיצוצים. השוק תנודתי ומהמשקיעים מגיבים בהתאם. גם אם לא פיטרו אותך, זה לא אומר שאתה רוצה להישאר. הפינוקים מצטמטמים, כח האדם יורד ומספר המשימות לאדם עולה.

בנוסף לכל זה תמיד קיים הרצון להתפתח מקצועית. במקום עבודה מסוים, סביר שיתמידו לעבוד באותה שיטה עם אותם מערכות. מעבר בין טכנולוגיות הוא כואב במיוחד ויקר מאד לארגון. זה לא אומר שהשוק עוצר - להיפך, הוא מתקדם באופן תמידי. 

בדיוק סיימת קורס אונליין על טכנולוגיה חדשה ואתה מתלהב ממנה. אתה מבין איך היא יכולה לקצר משמעותית את זמני הפיתוח אצלכם בארגון. אתה מספר על זה בהתלהבות בארוחת-הצהריים לחברים שלך ובשיחות אחד-על-אחד עם הר"צ אתה מספר איך היית שמח לקדם את הטכנולוגיה הזו. אתה מקבל תגובות מתעניינות, אנשים אולי יתלהבו, אבל עוברים ימים ושבועות ויש מלא משימות לסיים. "אולי אחרי שנסיים עם ההוא, תעשה POC ואז נראה.." אתה מתלבט אם להשקיע בזה מחוץ לשעות העבודה.. אולי מתחיל אפילו משהו, אבל בסוף עוזב את זה.. חבל על הזמן.

מפה לשם, אנשים מסביבך עוזבים. לרוב נאמר על רובם שהם היו "הרבה שנים ותרמו המון לארגון.. והגיע הזמן לחפש קן חדש .." אבל אתה תוהה אם זה אומר משהו עליך שאתה נשאר.

לא תמיד מצליחים לגייס אחד תמורת אחד ולפעמים גם לא נפתח תקן חדש. גם אם כן, העובד שמגיע לא תמיד עם יכולות להחליף את העובד הוותיק שלקח על עצמו עם השנים מלא תחומי אחריות. זה אומר שבנוסף לכל המשימות הרגילות שלך, מתווספות להם המשימות של מי שעזב. בהרבה מקרים זה קוד ישן או שאלה תחומי אחריות לא ממש מעניינים בלשון המעטה.


חילופי כח אדם

כל הגורמים האלו, יחד עם הגורמים השוחקים שציינתי למעלה גורמים לממוצע וותק של עובדים של כשנה וחצי. למרבה הצער, זה בדיוק הזמן בו העובד מסיים את ההכשרה והלמידה שלו ומתחיל לתרום משמעותית לארגון. זה גורם למצב בו דברים מתחילים ולא מסתיימים או עוברים מעובד לעובד כאשר כל אחר מבקר את קודמו ומסביר למה צריך למחוק את כל הקוד ולכתוב אותו "כמו שצריך".

זה גורם לזה שהארגון לא יציב ומתנהל בהרבה מקרים בכיבוי שריפות במקום בחשיבה לעתיד.

זה מעגל שמזין את עצמו. עובדים שמגיעים למיצוי ועוברים ארגון, תוך תקווה שהבעיות שסבלו מהן בארגון הקודם לא יקרו בארגון החדש. עם הזמן, הם מגלים בעיות חדשות שלא הכירו בארגון החדש ואלה מתחילות אצלם תהליכי שחיקה חדשים. וחוזר חלילה.


סיכום

אולי זה היה ציני מדי, אולי קצת פסימי, אבל כמעט בכל ארגון יש לפחות חלק ממה שציינתי. זה מוביל לכך שהעבודה בהייטק היא לא מסודרת וככל הנראה לא יכולה להיות מסודרת.

ארגונים ש"מגוהצים" לפי נהלים - הם ארגונים שכמעט שום דבר לא השתנה אצלם בעשר שנים. בהקבלה לעולם ההייטק - אם ברוב הארגונים היו מפתחים בקובול או ב-C את אותם מוצרים, אז סביר שנהלי הפיתוח היו מתיישרים ומתקבעים עבור כולם. 

דווקא בזכות היות ההייטק מקום דינמי ומתעדכן שהופך אותו רלוונטי לצעירים ולאנשים צמאי אתגרים וטכנולוגיה, זה גורם לו להיות קשה מאד לניהול תחת נהלים מסודרים. 

בסופו של דבר, צריך להגיע להייטק עם הרבה אוויר ולהבין שלמרות החזית הנוצצת, לא תמיד נצליח לקבל את מה שאנחנו רוצים ושיש עוד אנשים מעלינו ומצדדנו עם שאיפות דומות לשלנו.

לא צריך להפסיק ללמוד ולשאוף להתפתח, מצד שני לא צריך לעזוב כל שנה ארגון שלא עומד בדרישות שלכם. המטרה היא למצוא נקודת איזון שתאפשר לכם להתפתח מספיק כדי שתוכלו ללמוד ולהיות מאותגרים מספיק למספר שנים. כמה ? זה לא חשוב, כל עוד אתם מרגישים טוב לקום בבוקר ולהגיע לעבודה.

עם הזמן, אם הרגשתם שהגעתם לתקרת זכוכית - תמיד תוכלו לחזור ללינקדין ולמגייסות שישמחו לקבל אתכם חזרה לזרועותיהן הפתוחות.




אין תגובות:

הוסף רשומת תגובה