בלוקצ'יין, ענן ומה שביניהם. שיח פתוח עם עדי שחם-שביט.

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

עדי שחם-שביט היא Executive VP of Engineering בחברת Clear Blockchain Technologies.

עדי הקימה וגידלה צוותי פיתוח בחברות מדהימות כמו Lemonade, Liveperson ,AppsFlayer. מטורף אה?! עדי מביאה איתה ניסיון טכנולוגי וניהולי רחב, כולל ניסיון בטכנולוגיות ענן ופיתוח Cloud Native.

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

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

אני הרבה שנים בתעשייה. למדתי סטטיסטיקה ומדעי המחשב באוניברסיטת ת״א ומנהל עסקים בטכניון. עבדתי במקומות שונים, ואז הרבה שנים בלייבפרסון. הגעתי כשהיו 60 איש ועזבתי כשהיו 900, ובדרך מצאתי את עצמי עובדת בחברה שונה בכל שנה. לפני שעזבתי ניהלתי צוות של 50 איש, מנהלים, מפתחים, qa, ואז עשיתי switch מאוד דרמטי ועברתי לאפספלייר בתור הבן אדם העשירי בחברה. הגעתי בשביל לבנות את צוות הפיתוח, ובמהלך שלוש וחצי שנים, הצוות שלי גדל מ – 4 אנשים ל 70, המערכת גדלה מטיפול של 200 מיליון events ביום ל 20 מיליארד, והכל נשבר בדרך :). זאת הייתה חוויה הנדסית מרתקת, שהצריכה לחשוב מחוץ לקופסא, לשנות את הארכיטקטורה, להחליף שפת פיתוח, ועוד. אחרי תקופה מרתקת, אבל מאוד אינטנסיבית, רציתי לקחת הפסקה, ויצאתי החוצה ״לנח״. הגיעו כל מיני הצעות בשלב הזה, ואז הצטרפתי לחברת למונייד לנהל את הפיתוח. למונייד הייתה בשלב קצת יותר מתקדם, אחרי round b, אבל צוות הפיתוח היה בחיתולים שלו. גיוס אנשים, מעבר לעבודה בצוותים מקבילים במקום בצוות אחד, הכנת המערכת ליציאה לאירופה ועוד. היום אני בסטארטאפ בשם קלייר, אחראית על כל החלק ההנדסי של החברה – פיתוח המוצר, התקנות ועוד.

ספרי לנו קצת על החברה בה את נמצאת היום

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

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

בפשטות – בלוקצ׳יין זה כמו distributed database, שכל אחד יכול לקבל העתק שלו, אבל אף אחד לא יכול לשנות את המידע שהוא מכיל אלא רק להוסיף מידע. הרשת עצמה היא מבוזרת, ומורכבת ממחשבים שונים שיש להם מעמד שווה (=peer-to-peer). כל בלוק, מכיל מידע, hash ואת ה – hash של הבלוק שנוצר לפניו. התהליך הזה בעצם בא למנוע יכולת לשנות מידע כי שינוי מידע, יגרור שינוי של ה hash שנוצר מהמידע הזה. כל אחד בעצם יכול ליצור בלוק חדש. בתהליך היצירה, אתה צריך לפתור בעיית crypto מורכבת, לפני כל אחד אחר. מי שפותר אותה, מפרסם את הפתרון ברשת, כל הבלוקים הקיימים מאשרים את הפתרון, ואז אתה מקבל אישור שאתה רשאי ליצור את הבלוק הבא. התהליך הזה נקרא proof of work. בעצם, בשביל לקבל את האישור הזה, צריך אישור של לפחות 51% מהמשתתפים ברשת, ולייצר מצב שנקרא consensus.

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

אנחנו משתמשים במימוש ספציפי של בלוקצ׳יין שנקרא Ethereum, ומתחילים להכניס גם שימוש ב Hyperledger.

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

כשהגעתי לליבפרסון ב – 2005, זאת היתה הפעם הראשונה שעבדתי בחברה שעושה SAAS ולא מוצר on-premise. בעצם כשיש מוצר on-prem, החברה מספקת artifact שמתקינים אצל הלקוח, קצת אולי כמו התקנה של word על המחשב שלי. במקרה שלי, זה היה מוצר שהיה מותקן אצל לקוחות פיננסיים, ולא משתמשי קצה. חברות שיש להן מוצרי saas, בעצם לא נותנות התקנה, אלא נותנות שירות. הלקוח מקבל מוצר, שהוא לא צריך לתחזק, כי ההתקנה, הגיבויים, התחזוקה השותפת ועוד, נמצאים אצל החברה שנותנת את השירות. ברוב המקרים, הלקוח מקבל גישה למערכת דרך ממשק כלשהו, ויכול להשתמש במוצר. בעצם, חוץ מלקבל את המוצר עצמו, הלקוח מקבל גם את שירותי ה it וכל מאמץ ה scale יושב על השולחן של חברת המוצר. זה מצריך מהחברה לדעת לנהל מספר רב של לקוחות במקביל, לדעת להפריד בין המידע שלהם, לטפל בבעיות מסביב לשעון ועוד. את כל הדברים האלו יצא לי ללמוד בלייבפרסון – מה המתודולוגיה הנכונה לניהול מערכת שמשרתת מספר גדול מאוד של לקוחות במקביל, איך לטפל נכון באתגרי scale ו up time, איך להעלות מוצרים וגרסאות חדשות וכו. זה היה בזמנו data center פיזי, כמובן, אבל הניח בשבילי את היסודות ללמוד ולהבין איך זה נראה, וגם מה האתגרים בניהול של data center פיזי. נתקלתי במקרים שהפיתוח יכול היה לפתח מוצרים חדשים שיתנו ערך נוסף ללקוחות, אבל בגלל אילוצי מחשוב פיזיים, המוצרים הגיעו ללקוחות לפעמים חודשים אחרי זיהוי הפער. Data center פיזי, הוא כזה שהחברה מתחזקת בעצמה או בעזרת קבלנים. בעצם, החברה מקימה מערך שמנהל קנייה של מחשבים וציוד תקשורת, של התקנות פיזיות וחיבורים. בלייבפרסון, זאת היתה האופציה האפשרית כשהחברה קמה. היום יש גם את האפשרות להשתמש בשירותים של public cloud, ולתת למישהו שהוא מקצוען בזה, לנהל את כל החלק הפיזי.

כשהקמנו את המערכת באפספלייר, זה היה ברור שהיא צריכה להיות מותקנת ב public cloud מהסיבה הפשוטה שצוות הפיתוח היה מאוד קטן, וזאת פשוט לא היתה אופציה להקים ולתחזק את הכל בעצמנו. AWS היה בזמנו היחיד שהיה ברמה מספיק טובה. בהמשך עברנו גם לנהל חלק מהמידע בשירותים מתקדמים של Google Cloud כמו Google BigQuery. השיקולים שלי בזמנו ללכת לשני clouds במקביל, היו על מנת לנצל את היכולות הכי טובות של כל אחד מהם, כלומר – לבחור את הכלי הכי טוב למטרה, ולא להתקבע על ״המקום שכבר היינו בו״. יש עוד שיקולים לבחירה ללכת ליותר מ cloud אחד במקביל – חברות יכולות לבחור להחזיק מערכת מבוזרת משיקולי מחיר למשל, משיקולי זמינות של מערכות שונות וכו. לכל אחד מה public clouds יש התמחויות קצת שונות, והיכולת לנצל אותן יכולה להיות משמעותית. מהצד השני, חשוב להבין את ההשלכות ההנדסיות של פריסת מערכת ביות מ public cloud אחד – דברים כמו תמיכה של מערכת הניתור, לדוגמא, הקוד שיודע לפרוס שרתים וכו. צריך להבין שזה נותן ערך מספיק משמעותי בשביל לעשות מהלך כזה.

באפספלייר, היתה גדילה מאוד משמעותית של ה traffic שנכנס למערכת, לפעמים גם 50% גדילה תוך רבעון אחד. בנוסף, היתה שונות גדולה בין השעות ביום, לפי שעות הערות של ארה״ב. כלומר – היכולת לגדול מהר, והיכולת לשנות את השימוש לפי הצורך, נתנה לי כמנהלת הפיתוח את היכולת לתת ל business את מה שהיה צריך, ללא צורך בהכנה או בתיאום מראש. שני דברים מרכזיים הנחו אותי כתפיסת עולם – 1. שילוב של פיתוח ואופרשיין, 2. אוטומציה מלאה, בלי התפשרות. שני העקרונות האלו, אפשרו לצוות לבנות מערכת שמתאימה בצורה אופטימלית לעבודה ב – production ולא רק בסביבות פיתוח מה שהעלה מאוד את היציבות והיכולת לשרת לקוחות 24*7, ונתנו לעסק את התשתית לגדול לפי הביקושים העיסקיים ולא לפי מגבלות טכנולוגיות.

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

אז איך בכלל משלבים בלוקצ'יין וענן?

המערכת שלי היום, עומדת בפני אתגרים אחרים מאשר אלו שעומדות בהן חברות של web scale. המערכת של קלייר בנוייה להתקין node של בלוקצ'יין אצל כל לקוח, ו node של bootstrap אצלנו שאחראי לאשר (טכנית) הוספה של משתתפים חדשים ברשת. זה אתגר מאוד מעניין – בעצם יש לי מערכת שמותקנת במקומות שונים בעולם, תחת ארכיטקטורות רשת שונות, שצריכות לדבר אחת עם השניה באופן ישיר, לא דרך קלייר. זה אומר שמערכת המותקנת, צריכה לתמוך בסוגים שונים של private ו public clouds. מצד שני, כמו כל חברת סטארטאפ, יש לנו צוות אוד קטן, שצריך גם להיות מסוגל להמשיך לפתח את המערכת מבחינה עיסקית, כלומר – חייבים להיות מאוד יעילים בניהול ובהתקנות עצמן, אחרת זה יהיה כל מה שנעשה. שני השיקולים האלו הביאו להחלטה להשתמש ב k8s להתקנה של המערכת. בעצם מה שרצינו הוא להפוך את המערכת וההתקנה שלה ל cloud agnostic, בדיוק כמו שעושה כל חברה שמחליטה לפרוש את המערכת שלה ביותר מ public cloud אחד. השימוש ב k8s נותן לנו את היכולת להשתמש בדיוק באותה התקנה בכל מקום ללא חשיבות לתשתיות המחשוב שנמצאות מתחת, וללא התחשבות ב api שונים שיש ל public clouds השונים. זאת אחת הטכנולוגיות הכי משמעותיות כשמדברים על cloud native – בעצם, זאת מערכת שמראש נבנתה להשתמש ב cloud, ולנצח את השונות בין ה clouds השונים. אנחנו משתמשים ב distribution שנקרא Gravity, שבעצם אורז את כל ההתקנה יחד. החלטנו בשלב הזה לא לתמוך ב managed k8s, בשביל לפתח ולתמוך כרגע רק באופציה אחת. זה מאפשר לנו להתקין בכל data center שהלקוחות שלנו עובדים איתו, ולהמשיך לשפר את ההתקנה. הגענו למצב שאנחנו מתקינים בפחות משעה את הכל, אם קיבלנו את משאבי המחשוב הנכונים כמובן, מבחינת cpu ו disk space. בנוסף, המערכת אוספת monitoring indicators דרך prometheus, מה שמאפשר לנו לאבחן תקלות דרך grafana, ולשלוח לערוץ ייעודי בסלאק alerts בשביל לדעת אם קורה משהו לא תקין אצל אחד הלקוחות.

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

איך זה להיות אישה בתפקידים טכנולוגיים בכירים?

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

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

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

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

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

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *