תואר החלומות ב”הנדסת תוכנה”

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

תואר בהנדסת תוכנה לא צריך להיראות כך

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

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

את “תואר החלומות” הזה הרכבתי בעזרת כמה עמיתים לעבודה: ראשי צוותים, ארכיטקטית ותוכניתן בכיר (תודה רחלי, גדי, נילי ואביחי) וזוהי תוכנית שהיינו ממליצים למכללות / אוניברסיטאות לאמץ – בכדי לחנך מהנדסי תוכנה טובים יותר.

וגם: אלו המשרות המבוקשות ביותר בענף ההיי-טק הישראלי בשנת 2013

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

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

נושאים

topics

חילקנו את המקצועות הנלמדים המקובלים לקבוצות: “חמים” (מעולה – המשיכו כך) ו”קרים” (הסטודנט יכול להתמקד בקבלת ציון סביר פלוס – הידע עצמו פחות יעזור לו).

רגע לפני שאתם “קופצים” על מה שנכתב כאן על קורס האלגוריתמים (נושא טעון), עברו על השקף הבא:

thoughts

אנו רואים שינויים משמעותיים בעולם הידע המקצועי: שינוי שאם האוניברסיטאות / מכללות לא יפנימו, הן עלולות למצוא את עצמן הופכות מ”מיינסטרים” ל”נישה”. אם פעם הדרך היחידה כמעט לרכוש ידע יסודי על רשתות תקשורת היה לעשות קורס במדעי המחשב – היום יש ספרות מקצועית רבה ואיכותית וזמינה (שאני יכול להוריד בתוך דקה ל-iPad שלי), קורסים מעולים בוידאו, בתשלום או ברשת בחינם, או סתם חיפוש קצר בגוגל שיוביל ל-StackOverflow, יפתור לי את הבעיה באופן רגעי ואלמד משם טיפה אחר טיפה.

לגבי האלגוריתמים והמתמטיקה: אנו מאמינים שזהו נושא חשוב לאלגוריתמאים / חוקרים, שמהווים לא יותר מ5% מסך אנשי התוכנה. לשאר אנשי התוכנה – אין שימוש ממשי בידע זה. גם ידע מתמטי עמוק, כדרך אגב, ניתן כיום להשלים מהבית בעזרת Coursera / iTunesU ואחרים.

התוכנית

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

first years

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

התמונה הגדולה של התוכנית

הנה כמה רעיונות שרציתי להעביר:

big picture

איפה שנה ג’? אנו מאמינים שלמידה היום יכולה להיות קצרה יותר. עדיף ללמוד מעט – ואז להתחיל לעבוד, מאשר לשבת שלוש-ארבע שנים ורק ללמוד. יותר Agile ופחות Waterfall. השלמות ותוספות יתרחשו מעצמן תוך כדי העבודה ואם ממש רוצים – אולי כתואר שני (של שנה?). חשוב שהבוגר יקבל בסיס ומיומנויות למידה, אבל זה יהיה בזבוז (waste) להמשיך ולתת לו עוד ידע, בלי שברור שהוא זקוק לו.

ידע “אנושי וארגוני” הוא לא פחות חשוב מידע טכנולוגי ואפשר ללמוד אותו. למה אוניברסיטאות נותנות משקל כל-כך קטן (אם בכלל קיים) לצד זה של ההשכלה? האם “מדעני מחשב” באמת לא זקוקים לידע בין-אישי? האם באקדמיה עובדים לבד ולא בקבוצות / שיתופי פעולה?

Domain Knowledge הוא ידע יקר ערך שאוניברסיטה לא תוכל לספק, אבל היא כנראה יכולה לתת הצצה אליו – ולפתוח צוהר לסטודנטים ללמוד אותו. ב-Domain Knowledge אני מדבר על ההיבטים שתוכנה לגופי IT נראית וכתובה באופן שונה מתוכנה לחברות של תשתיות או רפואה, ביטוח או פיננסים. זה להבין בגדול כיצד ה”ביזנס” שעבורו אנו כותבים מערכות עובד, אלו צרכים מיוחדים יש לו (לפעמים בעקבות רגולציה) וכיצד מתנהלים ארגונים שעוסקים בתחומים אלו? מה מטריד ומעסיק אותן? אלו Patterns של תוכנה מקובלים להתמודד עם הבעיות הללו?

לדוגמה:

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

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

שבירת הסדר בין “יסודות” ל “ידע מעשי” – באוניברסיטה מקפידים על סדר של bottom up, מלמדים שכבה אחר שכבה. למשל: לומדים את מבנה המחשב, לפני שלומדים מערכות הפעלה. לומדים ממשק משתמש (UX) רק אחרי שלומדים לפתח UI – וכו’.

הבעיה היא ש:

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

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

ואיך נראה תואר החלומות שלכם בהנדסת תוכנה?

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

.

הפוסט פורסם במקור בבלוג Software Archiblog

קרדיט תמונה ראשית: Shutterstock / Blackboard with Data

ליאור בר-און

ליאור בר-און הוא Chief Architect בחברת סטארטאפ ישראלית גדולה.

הגב

49 תגובות על "תואר החלומות ב”הנדסת תוכנה”"

avatar
Photo and Image Files
 
 
 
Audio and Video Files
 
 
 
Other File Types
 
 
 

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

סידור לפי:   חדש | ישן | הכי מדורגים
איתי
Guest
אם בכל זאת אתם תבחרו ללמוד באוניברסיטה – אל תלכו ללמוד “הנדסת תוכנה” – תלמדו תואר במדעי המחשב! יותר עדיף ויותר יעיל! מדעי המחשב זה רק 3 שנים , לעומת הנדסת תוכנה שאורכו 4 שנים. אם תלמדו מדעי המחשב תסיימו שנה אחת פני ותרוויחו שכר של שנה שלמה בהייטק , ולא פחות חשוב – שנת ניסיון מלאה שתיתן לכם הרבה יותר ידע מעוד שנה נוספת באקדמיה. הרבה סטודנטים שבחרו “הנדסת תוכנה” מצטערים שלא בחרו ללמוד מדעי המחשב ומנסים לעבור מהנדסת תוכנה אל מדעי המחשב. הם טוענים שהרבה קורסים ב”הנדסת תוכנה” לא עזרו לכם בכלום ,וששנת הניסיון שהיו יכולים לקבל בעבודה… Read more »
אלי
Guest

מצד שני – השנה הנוספת – היא עוד שנה להיות סטודנט – שזו חוויה שלא תחזור על עצמה.

ולדי
Guest

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

מתן
Guest

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

אבי
Guest
כן ולא. מתמטיקות ופיזיקות כן חשובות. להשכלה, לידע כללי, לאימון המוח, וחלק מהנושאים המתקדמים כן צריכים מתמטיקות. אבל במקביל הייתי שם דגש קודם כל על כישורי למידה. אחר כך הייתי מכניס מכניס את הלימודים במקביל ודרך פיתוחים בקבוצות, לאורך שנים: בקרת איכות, אינגרציה מתמשכת (או איך שלא קוראים ל-CI בעברית), בקרת גרסאות ותצורה, DDD וכו’. הייתי מלמד ניהול פרוייקטים (גנטים וכו’, אפילו ברמה של עבודה מול רשימת מטלות, הערכות זמנים), עבודה מול לקוחות, הוצאת דרישות מלקוחות, wire-framing ו-mocking, תחזוקת תכנה, בדיקות תכנה – אספקטים תיאורטים מלווים באותו פרוייקט נמשך לאורך שנים. הייתי הולך לאורך השנים גם על התמקצעות בשני עולמות… Read more »
אבי
Guest
כן ולא. מתמטיקות ופיזיקות כן חשובות. להשכלה, לידע כללי, לאימון המוח, וחלק מהנושאים המתקדמים כן צריכים מתמטיקות. אבל במקביל הייתי שם דגש קודם כל על כישורי למידה. אחר כך הייתי מכניס מכניס את הלימודים במקביל ודרך פיתוחים בקבוצות, לאורך שנים: בקרת איכות, אינגרציה מתמשכת (או איך שלא קוראים ל-CI בעברית), בקרת גרסאות ותצורה, DDD וכו’. הייתי מלמד ניהול פרוייקטים (גנטים וכו’, אפילו ברמה של עבודה מול רשימת מטלות, הערכות זמנים), עבודה מול לקוחות, הוצאת דרישות מלקוחות, wire-framing ו-mocking, תחזוקת תכנה, בדיקות תכנה – אספקטים תיאורטים מלווים באותו פרוייקט נמשך לאורך שנים. הייתי הולך לאורך השנים גם על התמקצעות בשני עולמות… Read more »
מיקי
Guest

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

מישהו
Guest
האקדמיה לא מיועדת להכין אנשים לשוק העבודה… אם אתה רוצים להיות מתכנתים – אל תעשו תואר. לכו תעשו איזה קורס או שניים במשך חצי שנה ותתחילו לעבוד. האקדמיה מטרתה היא מחקר. לצערי אנחנו חיים בעולם מעוות שכל אחד צריך תואר. זה בזבוז כסף, משאבים וזמן. מי שרוצה לעבוד לא צריך ללמוד 3 או 4 שנים. אגב, גם חברות יעדיפו לקדם אנשים עם תואר – שזה ממש מגוחך. קחו מישהו בלי השכלה אקדמית ושהתעסק כל החיים שלו במחשבים, לעומת מישהו שרק עשה תואר במדעי המחשב – אין מה להשוות, התואר זה בדיחה. מה שאמור להיות: אתה רוצה לעבוד? תעשה קורס. אתה… Read more »
משה אופניק
Guest

זה בדיוק העניין, יש אינפלציה של תארים. ניתן לקרוא את ספרו המצויין של קן רובינסון “לצאת מהקווים”.
בעבר (שנות השישים), העובדה שלמישהו היה תואר הפרידה אותו משאר האנשים ונתנה לו יכולת להתקבל כעובד לכל עבודה. עם הזמן, כאשר נתח גדול מהאוכלוסיה כבר בעל תואר ראשון, יש מקומות עבודה *שדורשים* תואר שני, בקרוב ידרשו תואר דוקטור…
כל זה בגלל שמקום העבודה מנסה שמישהו אחר יעזור בסינון המועמדים. הדרך הקלה היא: איפה למדת, איזה תואר (ראשון/שני..) – ורק כך לזמן לראיון.

אלון
Guest
נקודת המבט שלי – ההצעה היא טעות נוראה. חלוקה של נושאים לפי הצורך הנוכחי בתעשיה הופך את האקדמאי לבורג. “שילמד מה שחשוב לנו עכשיו, וכמה שיותר מהר – עזבו אותכם מהשאר…” במקרה הטוב – זה פשוט להלביש את תואר “הנדסאי” על אנשים שאמורים ללכת לעשות תואר. ויאללה – “מה כואב” לאוניברסיטאות – שיקראו לזה תואר ראשון. אני חושב שמומלץ להאריך ולרפד ככל האפשר את התואר לאקדמאים. כל עשור יש משרות רבות שתוקפן פג… מומלץ להיות עם רקע רחב, ויכולת להיות דינאמי. דברים כמו מתמטיקה ופיזיקה הם דווקא האבנים הכי חשובות במובן הזה. רוצים בתעשייה אנשים שממוקדים לנושאים, ולומדים רק שנתיים?… Read more »
מגיב
Guest

קראתי ואני מסכים חלקית.

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

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

שי
Guest

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

אבי
Guest
אני אכנה את התואר – תואר טכנאי תוכנה, לשם הוא מכוון, לייצר עובד שידע להפוך דזיין פשוט לשורות קוד. בהרחבה: 1) ראשית , כל התוכנית נכתבה לדעתי מנקודת מבטו של מישהו שמתכנת אפליקציות\וואב\משהו שמתחבר בסוף למשתמש אנושי. ניתן לראות את זה בגודש האין סופי של HTML, java script, mobile. האם הטכנולוגייות האלו עד כדי כך חשובות? האם מצוות המוחות שהגה את התוכנית היה איזה מתכנת דרייברים לרפואה? אלגוריתמאי? realtime ? מה עם c ? בכל זאת השפה הנפוצה בעולם, איך אפשר לגדל מתכנת שלא עבד ישירות עם זכרון? http://langpop.com/ 2) לדחוף מקביליות, מערכות קבצים , רשתות, realtime לתוך קורס אחד… Read more »
אלון
Guest

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

אבי
Guest
אלון ,מסכים איתך. אני האחרון שחושב שלא צריך לרענן מידי פעם את רשימת הקורסים והתכנים. ואני גם לא חושב שכל קורס שלמדתי בטכניון הוא חובה או בנוי בצורה הכי טובה (על המרצים אין בכלל מה לדבר). אבל התמהיל נכון – יסודות מתמתיים חזקים, מחשבים מלמטה למעלה (אסמבלר, סי, ספרתיות, קומפילציה ,מערכות הפעלה , מקביליות וכ), אלגוריתמיקה ( אלגו, מבני נתונים), תאוריה קלאסית של מדעי המחשב (חישוביות, סיבוכיות , אוטומטים), וכמובן תכנות (קורסים נפרדים וכתוספת מטלות תכנות ברוב הקורסים). על הבסיס החזק הזה מוסיפים קורסי בחירה , בקורסי בחירה האלו הייתי שם את רוב מה שמופיע בתכנית למעלה (html, java scripts… Read more »
יואב
Guest

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

מתן כהן
Guest
כל מילה בסלע. בתור ממר”מניק שמשתעמם ופורש סדרתי מלימודי מחשבים באוניברסיטה. הלוואי שמישהו ירים את הכפפה (אם לא הייתי טירון בתחום הייתי עושה זאת בעצמי) וידאג לבנות תוכנית מיוחדת ומוכרת על ידי חברות ההייטק הגדולות. בתוכנית יבחרו את הקורסים הטובים ביותר משלל מקורות הידע שצוינו לעיל, והתשלום בתכנית (שתהיה בשיתוף פעולה עם מקורות הידע ובתשלום מיוחד רק על הקורסים שנבחרו להיות חלק מהתוכנית) זול בהרבה מעלות תואר וכך ניתן יהיה לקבל הסמכה מוסכמת ושימושית וגם לדעת לעבוד. כל אחד יוכל להתקדם בהכשרה על פי לוח הזמנים שלו עם מגבלות מסגרת מסוימות. יש להוסיף כמובן בחינות מיוחדות לכל נושא לאחר הקורס.… Read more »
T
Guest
אני מתחבר לרעיון הכללי, המימוש קצת פחות לטעמי (מאוד מוטה פיתוח web, ואת זה אני אומר בתור מי שעוסק בפיתוח web בין השאר). קשה לי הוויתור על קורסי המתמטיקה, ואני חייב להודות שלי כן יצא להשתמש באלגברה לינארית וחדו”א בעבודה. לא כל יום, אבל מדי פעם זה נפלא להיות בעל כישורים גם במתמטיקה. בחיים לא הייתי מלמד javascript בקורס תכנות ראשון, כי זו שפה דינמית (ועוד עם closure ו-functions as first class citizens). את NoSQL הייתי שם תחת קורס סקלביליות והייתי מוסיף ORM בקורס מסדי הנתונים. את סקלביליות הייתי שם כקורס בחירה. “תכנות מערכות” נשמע כמו קורס שמכיל בתוכו חמישה… Read more »
אבי
Guest

T, בנוגע לאיכות קוד – אני חושב שזה אחד הדברים שהרבה יותר קל “ללמד” מישהו תוך כדי עבודה , שהרי זה מה שהוא עושה רוב היום , מתרגל לכתוב קוד.
קשה מאוד ללמד את זה פרונטלית לדעתי , משום שכל אחד חושב אחרת ויש לו “טעויות” שונות , לעומת זאת במהלך העבודה תוך כדי code review מאוד קל להצביע על בעיות או שיפורים אפשריים.

אני
Guest

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

יואב לוי
Guest
ליאור – הנושא חשוב מאין כמוהו, ושאפו על היוזמה. אחרי 20+ שנה בתעשיה, יש לי ה-מ-ו-ן תובנות, רובן מוליכות למסקנת-שורש אחת: מוסד אקדמי אינו המקום לקבל בסיס / הכשרה / הסמכה / השד יודע מה מעסיקים באמת צריכים ממועמדים להנדסת תוכנה. כשאני מראיין מועמדים-סטודנטים, אני רואה את הכשל בו אנו בלית-ברירה מתמקדים בציונים שהשיג עד כה, בידיעותיו הבוסריות, מתוך נסיון לנחש את עלות עקומת הלימוד שלו לארגון. לדעתי, מוסדות אקדמיים שמקבלים מועמדים להנדסת תוכנה, צריכים להעניק להם את הבסיס התיאורטי מדעי שמוכח מעל כל ספק שלא ניתן ללמוד ביתר יעילות בלמידה יחידנית מבוססת-מחשב, ולשחרר אותם כמה שיותר מהר לשוק. המעסיקים… Read more »
ישעיה
Guest

רוצה לשמוע עוד :)
0528437890

אביתר
Guest

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

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

מוטי
Guest
אני בעד לקחת את הכסף שהמדינה משקיעה באונברסיטאות. ולהשקיע על אתר עם וידאו שכל אזרח ישראלי יקבל שם משתמש וסיסמה ויוכל דרך הבית ללמוד איזה נושא מדעי שהוא רוצה כולל פרום על אותו נושא בו הוא יכול לשאול שאלות אם הוא לא הבין. אני חושב שזה לא יעלה הרבה לשלם פעם אחת למרצה כדי להרצות ואחרי זה כל המדינה תוכל ללמוד מזה. ככה שזה אפילו יכול להיות לימוד בחינם. אחרי שלומדים כמה נושאים אפשר לעשות שהולכים להיבחן על זה במקום במסוים וככה לעשות שלכל נושא יש ציון ויש ציון כללי כמה זה תואר וככה כל אחד יכול לבחור לו איזה… Read more »
איתי
Guest

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

מרבחור
Guest

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

יהיר
Guest

יש גם את אלמנט היהירות – להחליט שכל מה שלמדו עד עכשיו לא רלוונטי כאילו הכותב ניחן בראייה נבואית לגבי עתיד הטכנולוגיה.

מאיר
Guest

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

הודי
Guest

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

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

פרופסור
Guest
מדהים שהכותב לא חשב ולו לרגע שאולי יש בכל זאת סיבה שכל האוניברסיטאות הטובות בעולם חושבות שמתמטיקה ושאר קורסי בסיס כן דרושים לאיש הנדסת תוכנה? אולי לא כולם מטומטמים שם? אולי יש גם כמה פרופסורים עם נסיון בתעשיית ההיי-טק (רמז: גם בישראל יש הרבה כאלה וגם בסטנפורד ומקומות רבים נוספים בארה”ב.) דווקא המקומות מדרג ב’, המכללות הגרועות שמנסות להכשיר ברמה של “הנדסאים”, להם יש תוכנית לימודים יותר בכוון של שימוש בכלים וטכנולוגיות עכשוויים. הנדסאים (במהות, גם אם בתואר כתוב BA) אלו ודאי ימצאו עבודה (לא מאוד מאתגרת) בשנים הקרובות, אבל רבים מהם יתקשו להסתגל לשינויים שוודאי יבואו בעשר השנים הקרובות… Read more »
נשמע מעניין
Guest
הרעיון מקסים רק חסר הבנה לגבי מטרת מוסד האוניברסיטה, למעשה האוניברסיטה משמשת דרך לאיתות למעסיקים מי המועמד הכי טוב,זוהי דרך סינון שמטרתה להקל על מעסיקים שלא יודעים דבר אמיתי על יכולתו של המועמד להסתמך על קריטריון כלשהו כדי לנפות מועמדים. גם העובדה שהתקבלו ,סיימו את התואר, דורגו בדירוג בין התלמידים מעיד משהו עליהם. במקום כל הקורסים ניתן לשחק פינגפונג או לעשות אתרי ווב אך זה יהיה קשה לדרג את הסטודנטים על יכולת חשיבה והבנה. מה שחשוב שהמועמד יהיה אינטיליגנטי וידע ללמוד בעצמו. המכללות הן דרך הבייניים להגיד עשינו תואר אנחנו שווים כי היה קשה וגם עם התאמה לעולם המשתנה של… Read more »
אלעד
Guest

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

nir
Guest

שלום. מה הייתם ממליצים ללמוד למי שרוצה לעבוד ב real time/embedded
thanks nir

ronen
Guest

גם בנט חושב כך
עדיף קורסים קטנים לאורך הקרירה

Val
Guest
לאחר קריאת הכתבה והתגובות יש לי כמה תובנות. התכנית המוצעת מצויינת להנדסאים אבל לא למי שרוצה ללמוד מדעי המחשב/הנדסת תוכנה ברמה של אוניברסיטה. מצד אחד אתה מתמקד הרבה יותר מדי בטכנולוגיות ווב וזורק מהחלון הרבה מאוד דברים שגם אם הם לא באים לידי ביטוי ביום יום מתכנת טוב חייב להכיר, למשל אלגוריתמיקה, בסיסי נתונים (ולא רק NoSQL בשביל להבין למה הולכים לשם חייבים לדעת מאיפה הגענו). תקשורת נתונים ומערכות הפעלה למשל. רק תחשוב על הצורה שמערכת ההפעלה מנהלת Paging מה שיכול לתת לך כיוון בהרבה בעיות מהחיים. בעניין המתמטיקה המתקדמת פחות או יותר. אני אישית סיימתי תואר כהנדסאי ואני עובד… Read more »
גיא
Guest
מה עם שפת C? מה יהיה ההבדל בין מכללת סלע לבין אוניברסטאות? לא מסכים בעליל. בשביל להבין נניח, עיבוד אות כן צריך מתמטיקה כבדה. (וכן, יש מהנדסים שעושים את זה, וגם תוכנה בתוכנות מיינסטרים לחלוטין). בשביל להבין שלא יכול להיות מחשב שיבין אם יש באג בתוכנה אחרת כן צריך לדעת חישוביות (ואפילו אפשר להבין שאופטימיזיה בשלמים תחת מגבלות היא “קשה”). מה לגבי תכנון לינארי, תיכנון דינמי וכוי”ב? ידעתי לתכנת מצויין עוד לפני שנרשמתי לאוני’, אבל את הקפיצה האמתית קיבלתי באוניבריסטה. אחרת נגדל פה דור של בוני אפליקציות ואתרים – ולא שיש בזה משהו רע – אבל היתרון האמיתי של ישראל… Read more »
איה
Guest

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

מהנדס ב ibm מחקר
Guest
מהנדס ב ibm מחקר

ממש לא. הוא מציע שם תוכנית לימודים שטחית ש*לא* תייצר אנשי תוכנה טובים. אולי טובים בשביל החברה שהוא עובד בה. קיצר זה יותר מתאים לבתי ספר כמו John Bryce וכו’ מאשר לאוניברסטאות.

עמית ל
Guest
אני חושב שאתה מחליש כאן את ההבדל בין ‘מתכנת’ לבין ‘מהנדס תוכנה’. בעוד שהראשון יודע לכתוב קוד (רצוי שבכל מיני שפות וסביבות), השני יודע לנתח בעיות, לנתח מערכות, לפתח פתרונות נכונים ויעילים לבעיות תוך הבנה של כל הגורמים. בשביל הניתוח וההבנה של המערכת, אתה חייב בסיס חזק. בסיס מתמטי בשביל להבין סיבוכיות זמן ומקום של הפתרון, בסיס באלגוריתמים בשביל להכיר טכניקות וטיפוסים של בעיות (תכנות דינאמי?), בסיס במערכות הפעלה וארכיטקטורה כדי להבין איך להשתמש במשאבי המחשב בצורה הטובה ביותר, בסיס בתקשורת כדי להשתמש בWEB נכון ועוד המון המון. עם כל הכבוד למקצועות ה’אנושיים’, אלו דברים שאתה קולט תוך שנה-שנתיים בתעשיה.… Read more »
@halperinko - Kobi Halperin
Guest

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

משה
Guest
תסלח לי על השאלה הבוטה, אבל מה ההשכלה שלך? ה”תואר” שהצעת מתאים, במקרה הטוב ל”הנדסאי תוכנה” ולא כתחליף לתואר ראשון במדעי המחשב או הנדסת תוכנה (שהאחרון הוא בגדול שם סקסי ל”מדעי המחשב עם תוספות וקורסי בחירה מוטי הנדסת תוכנה”. כלומר, הנדסת תוכנה מכילה את מדעי המחשב. מידע זה נכון לאוניברסיטאות). במקרה הפחות טוב, התואר יתאים לאיזו פיקציה שנקרא לה “הנדסאי יישומי אינטרנט”). אין ב”תואר” שהצעת שום בסיס חשיבתי או מתמטי. אין בסיס אלגוריתמי בכלל ו- foundations בפרט. אם נסתכל על שנה א: 1) “תכנות בסיסי” על שום מה ולמה? כיצד האדם יתחיל “לתכנת” כשאין לו בסיס חשיבתי כלשהו. דין Java… Read more »
דני אלמוג
Guest
נושא חשוב – ואני קוראה לכולם להגיע לכנס בכנרת. לאחר יותר מ 6 שנות הוראה אקדמית בהנדסת מערכות מידע, הנדסת תוכנה, הנדסת תעשיה וניהול מגמת מערכות מידע ועוד. אני רוצה להבהיר שני מושגים רלוונטיים הנובעים משם המקצוע. התואר הוא תואר בהנדסה – לא במדעי המחשב. מהנדס הוא אדם תכליתי שתפקידו להגיע לתוצאות ובשיטות יעילות איכותיות ונכונות. ההנדסה של ימינו כבר אינה מקצוע אינדבידואליסטי. חלק בלתי נפרד והכרחי של עבודת המהנדס הינה עבודת צוות ושיתוף פעולה. לכן מוכנסים לתוך תכניות הלימודים המקצועות ה “רכים” של יכולות תקשורת, ניהול, עבודת צוות ועוד. מי שאינו מכליל מקצועות אלו בתהליך הכשרת המהנדס עושה עוול… Read more »
משה
Guest
הכל טוב ויפה. הבעיה היא שהכסות שאתה מציע היא צבועה למדי. מצד אחד אתה רוצה תואר (ראשון, BSc) בהנדסת תוכנה. מצד שני אתה רוצה שהוא יהיה כמה שיותר יישומי ופחות מדעי. אני חושש שגם לך אין תואר גבוה בהנדסת תוכנה, מדעי המחשב או בכלל. ראשית, התואר “הנדסת תוכנה” לפחות באוניברסיטאות הוא תואר שמכיל בתוכו את הבסיס של מדעי המחשב שהוא בסיס חובה (כך שאם יש לך בעיה עם העובדה הזו, כנראה שהתואר שלך צריך לקבל שם אחר). על בסיס החובה הזה אתה מכניס את הקורסים הרלוונטיים להנדסת תוכנה. תוכל לראות דוגמא רלוונטית בקטלוג של הטכניון, אוניברסיטת ת”א וגם באוניברסיטה הפתוחה.… Read more »
גדי
Guest

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

משה
Guest
לא מעוניין בתואר? חושב שזה קונספט מיושן? לגיטימי לגמרי. רק אל תדחפו איזו תוכנית לימודים מוזרה שהקשר בינה לבין *תואר ראשון* כלל לא קיים. מהנדס הוא מהנדס. הוא לא תוכניתן ואפילו לא מתכנת. אין כאן את היסודות של הנדסה בכלל, אלא רצון לתפוס הכל מהכל. אתם רוצים להשתמש במילה “תואר ראשון” ו/או “מהנדס תוכנה” בלי לקבל תואר ראשון ובלי שום קשר להנדסה. זה קצת צבוע מצידך. רוצה להרחיב את אופקיך וחושב שתואר זה קונספט מיושן ומיותר? נהדר. לך למספר קורסים בג’ון ברייס, עשה הסמכות באינטרנט, קרא לזה “תוכנית לימודים” ותצהיר שזה מה שלמדת. תוכנית הלימודים הזו תהיה רלוונטית מטעם עצמך… Read more »
גיא
Guest
אורן, “נפלת” על הבנאדם המתאים. ראשית, הרשה לי להציג את עצמי (ואני עושה זאת בלי התנשאות): אני בוגר הנדסת תוכנה מלפני 13 שנים, יש לי ניסיון של 15 שנים גם בעולם הרשתות וגם כמתכנת. לפני שלוש שנים, סיימתי עוד תואר במנהל עסקים. היום אני מרצה לתחום של רשתות תקשורת במכללה הטכנולוגית ברופין (של הנדסאי תוכנה) ובקורס מערכות IT ארגוניות (עבור מנהלים שלומדים מנהל עסקים לתואר ראשון) במרכז האקדמי רופין. ואחרי כל זה – לתכל’ס: אני מסכים עם חלק מהתגובות כאן, בתור מי שרואה את תכניות הלימודים של ההנדסאים ברופין. למעשה, מה שהצגת – זו בדיוק התכנית שמלמדים היום הנדסאי תוכנה… Read more »
משה אופניק
Guest

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

מהנדסי תוכנה זה קצת יותר מ-code monkey.

Mr Bcool
Guest

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

יוני
Guest

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

wpDiscuz

תגיות לכתבה:

נותרו עוד
00
ימים
:
00
שעות
:
00
דקות
:
00
שניות
לכנס המפתחים הגדול בישראל