ולידציה/וריפיקציה?

RandomNick

New member
ולידציה/וריפיקציה?

אני בוגר מדעי המחשב, ומחפש משרת פיתוח ראשונה.
כבר די הרבה זמן אני מתחבט בשאלה אם משרות ולידציה/וריפיקציה הן לא בסה"כ אוטומציה. קראתי את כל ההודעות בפורום שדיברו על העניין, וראיתי שהדעות חלוקות בנושא. חלק טוענים שהמשרות הללו הן פיתוח לכל דבר, בעוד חלק טוענים שהן בדיוק כמו אוטומציה מבחינת המעמד שלהן, ולכן לא מומלצות למבקשים להיכנס לתחום הפיתוח.
האם למישהו פה יש ידע בנושא מניסיון אישי?
מציעים לי כרגע משרת ולידציה פרה-סיליקון (מה ההבדל בכלל בין פרה-סיליקון לפוסט-סיליקון?) באינטל. התיאור שלה הוא:
"Develops preSilicon functional validation tests to verify system will meet design requirements. Creates test plans for RTL validation, defining and running system simulation models, and finding and implementing corrective measures for failing RTL tests. Analyzes and uses results to modify testing."
הבנתי שמדובר במשרה שמערבת תכנות embedded low-level ברמת המעבד. מדובר בקבוצת ה-Platform Engineering Group.
בכל מקרה מדובר פה באינטל. האם זה כדאי?
 

ipv6

Member
ורפיקציה זה פיתוח סביבת בדיקה

לצ'יפים.
נכון שהתחום נחשב לפחות "נוצץ" \ "יוקרתי" מ-Design אבל יותר נכון להסתכל על זה כעולם מקביל לפיתוח ASIC ולא איזה משהו נחות.

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

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

יבגניי34

New member
יש בעייה קשה של הבנת הנקרא בפורום הזה.

השואל בוגר מדמ״ח והוא שואל אם זו משרה טובה כמשרת פיתוח (*תוכנה*) ראשונה בחייו התשובה לזה קצרה ומתחילה בלמד.

אין קשר ל״נחות״ או ״נוצץ״ - הטרנספרביליות של פיתוח סביבת בדיקה בורילוג לכל פיתוח אחר היא אפס.
 

ipv6

Member
נתחיל מזה שסביבת וריפקציה

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

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

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

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

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

יבגניי34

New member
המגיב החכם יענה בקיצור כדי לדגום את השואל

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

John the Savage

New member
זה לא "אוטומציה" וגם לא תכנות

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

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

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

מקווה שעזרתי.
 

ipv6

Member


 

RandomNick

New member
תודה רבה! אז אני מבין שזה ממש לא בכיוון, על אף שמדובר באינטל

 

d70

Well-known member
תוספת קטנה
רצוי לברר עם אילו כלים ואיזה שפות תעבוד.אני מכיר מחלקות באינטל שאת הוריפיקציה (כולל RTL) מבצעים עם שפות OO,"לא חומרתיות" כגון C++ ופייתון ובמקרים מסוימים נדרשת התעסקות עם matlab עבור post-processing.

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

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

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

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

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

choo

Active member
הבעיה שאחרי משרה כזו באינטל - קשה להחליף עבודה

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

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

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

choo

Active member
מהמעט שאני מכיר - גם למובילים עשויה להיות בעיה בגלל הדומיין

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

ipv6

Member
לדעתי עיקר הבעיה

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

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


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

ipv6

Member
אתה צודק

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