הנדסת תוכנה, התואר שישאיר אתכם רלוונטיים ומבוקשים בתעשייה
המים שאנחנו שותים, החשמל שאנחנו צורכים, התקשורת, התחבורה ובעצם מה לא – העולם שלנו רץ על תוכנה. המערכות הופכות מורכבות יותר ויותר, כך שכל טעות בהן עלולה לעלות בחיי אדם ובהרבה מאוד כסף. בנוסף, המערכות חייבות היום להיבנות באופן גמיש דיו כך שניתן יהיה להשתמש בהן, לעדכן אותן ולהכניס בהן שינויים גם בעוד 10 ו-15 שנים. וכל אלו הם רק חלק מאתגרי היומיום של מהנדסי התוכנה.
קחו לדוגמה את המערכות הישנות והמסורבלות המאפיינות סקטורים מסורתיים ועתירי נתונים, כמו בנקאות, ביטוח ושירותי בריאות. לא פעם, צוותי הפיתוח בתאגידים הגדולים בעולם נאלצים לכתוב את הכול מחדש וכמעט מאפס.
"יש סיבה שמערכות הלגאסי הכבדות לא ניתנות עוד לשימוש, תחזוקה ועדכון", אומר ד"ר דוד פייטלסון, ראש בית הספר להנדסת תוכנה ומדעי המחשב באפקה – המכללה האקדמית להנדסה בתל אביב. "משלב מסוים הארכיטקטורה לא יכולה להכיל יותר שינויים, ואין ברירה אלא להקים מערכת from scratch. זה קורה, גם בסטארט-אפים שנבנים סביב קוד בסיס הצומח טלאי על טלאי. בנייה נכונה וגמישה, כזו שמותירה מלכתחילה מקום לשינויים עתידיים ומכינה עבורם מנגנונים ייעודיים, אומנם לא תשאיר את המערכת לנצח – אבל תבטיח לה אורך חיים ממושך יותר, אבטחת מידע מעודכנת וחזקה יותר, יכולות מיגרציה בין סביבות ופלטפורמות, ולבסוף, שימוש כרכיב במערכת חדשה".
"מערכת תוכנה דומה יותר לייצור ביולוגי מאשר למוצר תעשייתי", ממשיך ד"ר פייטלסון. "כוס, למשל, נותרת ללא שינוי כל עוד משתמשים בה, ואם היא משתנית באופן משמעותי, היא מאבדת את ערכה ככלי שימושי ומושלכת לפח. מערכת תוכנה, לעומתה, חייבת להשתנות כל העת. למעשה, הנקודה היחידה שבה היא מפסיקה להשתנות מגיעה כשאנחנו מפסיקים להשתמש בה, בסוף חייה".
דוגמה מאלפת היא Overleaf.com – שירות נפוץ לכתיבת מאמרים מדעיים עם טקסט מתמטי מורכב. התוכנה שבבסיסו, TeX (בהגייה: טֶח), פותחה בשנות ה-80 של המאה הקודמת, והוא עדיין משמש אותנו, עם אינספור תוספות של פיצ'רים, תצוגות, שפות והתנהגויות (למשל כתיבה מימין לשמאל) ועם Web service נגיש במקום הורדת תוכנה כבדה למחשב האישי. "לא סתם המוצר הזה, יצירת מופת של קוד שנכתב כשעוד בקושי היה אינטרנט, עדיין רלוונטי וחסר תחליף לעשרות מיליונים ברחבי העולם. כתב אותו פרופ' דונלד קנות' (Donald Knuth), מהאבות המייסדים של מדעי המחשב וגאון בהנדסת תוכנה".
"צריך להבין שטכנולוגיות נולדות ומתחלפות, אבל שאלת היסוד של פיתוח התוכנה – איך בונים אותה כך שגם אחרים יוכלו להבין אותה ולהכניס בה שינויים כעבור שנים – לא השתנתה. להיפך: ככל שהמערכות משתכללות, ככל שהתוכנה נכנסת לעוד ועוד תחומים חיוניים, השאלה רק מתחדדת". ד"ר פייטלסון מוסיף כי זו גם הסיבה לכך שבוגרי ובוגרות הנדסת תוכנה מאד מבוקשים בתעשייה כיום, עם שיעורי תעסוקה פנומנליים. "המחסור בתעשייה במהנדסות ומהנדסי תוכנה איכותיים – כאלה שמגיעים עם השילוב האידיאלי של מצד אחד, ידע תאורטי ועומק מתמטי לפתרון בעיות מורכבות, ומצד שני ניסיון מעשי – מביא לכך שרוב הסטודנטים שלנו באפקה מועסקים כבר בזמן הלימודים. חלקם אפילו כראשי צוותים".
לצאת מהתואר עם תיק עבודות
אם פתחנו ואמרנו שהנדסת תוכנה היא בעצם "הכול", הרי שנגזרת מכאן אחת המגמות החזקות בתחום בשנים האחרונות: הצורך בהתמקצעות. ניתן להשוות זאת לרפואה, שאומנם נשענת על רקע מדעי-תאורטי משותף אבל מתפצלת למגוון רחב של התמחויות ותתי התמחויות – אנדוקרינולוגיה, נוירוכירורגיית ילדים, אורתופדיה עם התמחות בפציעות ברך.
כיום מציע התואר הראשון באפקה שלוש התמחויות, וכל אחת מהן כוללת אשכולות של קורסים המקנים נקודת כניסה מיטבית לתעשייה: התמחות בסייבר ואבטחת מידע; למידת מכונה, עם הבנה נרחבת של הרציונל המתמטי והאלגוריתמי שמאחורי כלי ה-AI, ולא רק שימוש בהם כ"קופסה שחורה"; ומערכות מובייל, לרבות התחום החם של UX-UI. ד"ר פייטלסון מכין את הקרקע להתמחות נוספת – נושא שהוא עצמו עסק בו בהרחבה בדוקטורט שכתב באוקספורד, ושלמעשה, החזיר אותו לאקדמיה: שיטות פורמליות לאימות תוכנה. כאן הרעיון הוא מודלים מתמטיים שיאפשרו לחזות ולמנוע מראש באגים, שגיאות ותקלות עוד לפני כתיבת הקוד ובניית המערכת. וזה עולם ומלואו.
לצד ההתמחויות מפעילה מכללת אפקה את אופק – מערך נרחב של פעילויות משלימות לתוכנית הלימודים הפורמלית. במסגרת הזאת יכולה סטודנטית להנדסת תוכנה להשתלב בפרויקט עם עמיתים מהנדסות אחרות, או לחבור לאחד המועדונים החזקים – חלל, רכב, רובוטיקה, אנרגיה – וליישם את הידע בפרויקט אמיתי. להתנסות הזאת, יחד עם עבודת הגמר המשתרעת לאורך השנה הרביעית ללימודים וכמעט תמיד תוך חיבור ישיר לתעשייה, יש שלושה תוצרים: תיק עבודות מרשים מול מעסיקים עתידיים (וגם רשת קשרים, מעצם העבודה מול התעשייה והצגת הפרויקטים בכנסים עם נציגי החברות); רכישת מיומנויות רלוונטיות – עבודת צוות, חשיבה ביקורתית, הבעה, הובלה ופרזנטציה – שחשובות כיום לא פחות מהידע ההנדסי, ובאפקה הוחלט לשים עליהן דגש רב כחלק מאפיון מהנדסי העתיד; וחוויית למידה שונה, עדכנית ומהנה.
ד"ר פייטלסון שב אומנם לאקדמיה, אבל כמו רוב חברי הסגל באפקה, הוא נשאר בקשר רציף עם התעשייה ומשמש לא פעם כיועץ. מהפידבק שהוא שומע מחברות, הקערה התהפכה: אם בעבר היו דרושים לתפקידי מפתח בתחום בעיקר בוגרי אוניברסיטאות, כיום מבינים לגמרי את היתרון שמביאים איתם הבוגרות והבוגרים של אפקה, עם הרבה יותר התנסות מעשית ומיומנויות רלוונטיות לצד הידע האקדמי הנדרש. "אני שומע ממעסיקים שכבר בראיונות הבוגרים שלנו זורקים להם מושגים, מספרים על דברים שעשו ומפגינים הבנה ועניין יותר מג'וניורים שכבר תקופה בחברה. חוץ מזה, לא מעט מהחבר'ה שגידלנו התברגו בתפקידי מפתח, והם בוודאי מבינים את המשמעות ומחפשים אנשים כמוהם. כך שהיתרון בדרך לשוק התעסוקה הוא מובהק".
למידע נוסף על לימודי תואר ראשון בהנדסת תוכנה
לפתור בעיות שעדיין לא צצו: האתגר הגדול של הנדסת התוכנה
שתף לינק באמצעות:
https://external.afeka.ac.il/about-afeka/afeka-news/articles/לפתור-בעיות-שעדיין-לא-צצו-האתגר-הגדול-של-הנדסת-התוכנה/WhatsApp
Facebook
Twitter
Email
https://external.afeka.ac.il/about-afeka/afeka-news/articles/לפתור-בעיות-שעדיין-לא-צצו-האתגר-הגדול-של-הנדסת-התוכנה/