עד כמה "כימיה" חשובה בראיונות עבודה?

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

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

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

user32

Well-known member
מנהל
מן הסתם כל מראיין זה משהו אחר
אין איזה אלגוריתם זהה לכל המראיינים.

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

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

לגבי הקלישאה: לא יודע מה עם מראיינים אחרים אבל אני יכול להעיד על עצמי. בדרך כלל ה10-15 דקות הראשונות מכריעות. יש מועמדים שישר אני מבין שזה בדיוק מה שאני מחפש, יש כאלה שברור לי שהם לא מתאימים. יש מקרים לא נפוצים של 50-50 ואז להמשך הראיון יש השפעה מכרעת.
במקרה הרגיל שבו אחרי רבע שעה כבר יש דעה די ברורה, ממשיכים את הראיון כדי להתעמק בפרטים. אם זה מישהו טוב, אז רוצים לוודא שלא פספסנו איזה משהו קריטי, וגם לעשות ווידוא ולשלול מקרים שמועמד גרוע הצליח להבריק בכמה דקות.
אם זה מישהו לא מתאים, ממשיכים את הראיון גם מתוך נימוס וגם בשביל לוודא את ההפך: שלא מדובר במועמד שאולי כשל בלשונו מתוך התרגשות אבל בעצם הוא כן מתאים. יש גם עניין של בדיקת A/B טסטינג. כשיש מועמד חלש, אתה בכל זאת שואל אותו את השאלות הרגילות שלך. כנ"ל לגבי מועמד חזק. ככה אתה מתקף שהשאלות הטכניות שלך טובות. מועמד חזק יענה עליהן טוב, מועמד חלש לא ידע לענות.
לי היתה עוד שיטה: במקום בו ייעצתי הייתי מראיין הרבה ואת המועמדים מעביר לVP פיתוח לראיון סופי. אותו בחור היה מפתח מנוסה, ממייסדי החברה, בוגר טכניון ואדם מאוד חכם. הייתי שולח אליו מועמדים בלי להגיד לו מה אני חושב עליהם. ככה מצאתי שמועמד שנכשל אצלי היה נופל גם אצלו, ומי שעבר אצלי היה גם עובר אצלו. אגב, אלה שהיו ככה-ככה אצלי, היו נופלים אצלו, היו לו סטנדרטים גבוהים. זה עזר לי לבנות מודל דירוג שקיבל תוקף אצל עוד גורם.
 
ברור שלכל מראיין יש טכניקות שונות...
ופרמטרים אחרים למועמד מתאים, וכמובן שזה תלוי במשרה שאליה מגייסים. וכמובן שיש מתכנתים גרועים שמצליחים להרשים לעומת מתכנתים טובים שלא מצליחים להרשים.

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

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

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

קלייטון

New member
מה יש לדעת בשילוב של C ו-C++?
איזה שאלות עומק למשל הוא שאל על הנושא הזה?
למיטב ידיעתי זה נושא טריוויאלי לגמרי.
 

vinney

Well-known member
אני אתן לך דוגמא לשאלה
״למה אתה חושב ששילוב של C ושל ++C הוא טריויאלי?״
&nbsp
מהשאלה הזאת אפשר לפתח דיון שיגלה את עומק הידע שלך בשתי השפות, הכרות עם הסטנדרטים העדכניים, הבעיות שיצא לך לפתור, ועומק ההכרות שלך עם שילובי כלים שונים. תלוי באיך תענה ומה יש לך בקורות חיים - אפשר להמשיך ולדון בשאלה ״אוקי, ומה עם שילוב של C ופייתון?״ למשל, או Java, או שילוב של C בקוד אנדרואיד, וכו׳ וכד׳.
&nbsp
כמובן שהשילוב של שפות שונות עם פרדיגמות שונות הוא ממש לא טריויאלי, שלא לדבר על בעית התאימות לאחור שפעם הייתה ואיננה עוד בין ++C לC, מה שיוצר הרבה בעיות לא מעט בזכות מתכנתים שלא יודעים שהתאימות הזאת איננה עוד, וכו׳ וכד׳.
&nbsp
 

קלייטון

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

vinney

Well-known member
טוב, כבר הבננו שאין לנו שום זכות לשאול אותך שאלות

איזו בעיה פתרת עם ״extern C״? למה זאת בעיה מתכלתחילה? אילו עוד בעיות יכולות להיות שהכלי הזה לא פותר?
 

קלייטון

New member
זכות לשאול שאלות יש לכל אחד
אנחנו חיים במדינה דמוקרטית ויש כאן, למרבה הצער, חופש ביטוי. אז לשאול מותר, אבל יש שאלות שמעידות שהשואל לא מבין את המקצוע כמוני, ולכן על פניו אנחנו לא מתאימים. כי אם הוא הולך במהלך שיתוף הפעולה להציק לי עם שאלות טפלות אני לא אוכל לעבוד.
לשאלתך איזו בעיה פתרתי, התשובה היא "את הבעיה של שילוב C עם C++"
נתת לי C (כנראה ממקור חיצוני), הסכמנו שאנחנו עובדים ב-C++, צריך לשלב את ה-C, הנה בוצע.
יש בתור עוד 150 בעיות רק להיום, הצטברו כי אתה מתחפר בשטויות ומזמן ישיבות של 3 שעות לדון ב"למה שילוב של C ו-C++ זו בעיה", וכל יום זורמות פנימה עוד 10-20 פר מפתח. בגישה שלך על כל בעיה שנכנסת אנחנו נפתח דיון שלם בלמה וכמה. בגישה שלי מוצאים פתרון לבעיה במהירות המירבית ועוברים לבעיה הבאה. אז השאלה היא: אתה רוצה לבנות מערכת תוכנה שיהיה לך מה למכור, או אתה רוצה להתפלסף?
 

vinney

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

קלייטון

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

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

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

קלייטון

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

vinney

Well-known member
האם אתה יודע?
אם אני אשאל על אלגוריתם מיון - תוכל להראות לי נכונות של האלגוריתם? תוכל להסביר לי איך הוא עובד? או שתגיד "הנה, הרצתי מיון וזה ממוין, מה עוד אתה רוצה?"
 

קלייטון

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

vinney

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

קלייטון

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

BravoMan

Active member
לפי מה שסיפרת עד כה, אתה לא מתאים לעבודת פיתוח בכלל...
ככל שאתה כותב יותר, גובר בי הביטחון שסיפוריך מצוצים מהאצבע, אבל אני לא יכול לפסול אותך סופית רק מסיבה אחת:
&nbsp
ייתכן, שכשהתחלת לעבוד בחברה שבה אתה עובד, המוצר שלה היה ייחודי.
בלי מתחרים, גם אם המוצר שלך הוא המיץ של הזבל, אנשים עדיין ישתמשו בו כי אין משהו אחר.
&nbsp
מקרים כאלה הם סופר נדירים בתחום התוכנה.
&nbsp
אם אתה לוקח אלגוריתם מיון, ואין לך מושג מה הוא עושה, כשתגיע ללקוח לתוכנה שלך ייקח שעות למיין את הנתונים.
כאשר מתחרה שיש לו מפתח שהוא אשכרה מפתח, ולא אחד שעושה copy paste בלי להבין יוציא מוצר שממין את אותם הנתונים תוך שניות, החברה שאתה עובד בה תפשוט את הרגל, וגם אישתך המנכ"לית תלך הבית יחד איתך במהירות מסחררת.
&nbsp
אז או שבאמת נפלת על נישה שאין בה מתחרים בכלל, או שעכשיו חברה שלך מעסיקה מפתחים אמתיים ואתה שם רק בקומבינה, או שכל הסיפורים שלך מצוצים מהאצבע.
 

user32

Well-known member
מנהל
זה הרבה יותר נפוץ ממה שנדמה לך
בעולם מעולם היישומים, איכות הקוד וכותבי הקוד הוא הרבה פעמים פחות חשוב. יותר חשוב דברים כמו חווית משתמש, הבנת צורכי לקוח, פתרון נכון לbusiness cases ועם החומרה של היום לפעמים אין משמעות עסקית לדברים כמו יעילות, זמני ריצה, סיבוכיות וכו'.
 

קלייטון

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

user32

Well-known member
מנהל
מסכים עם מה שכתבת
אבל זה באמת לא המצב ברוב המקומות בתעשיה. אולי זה יישמע לך מעליב אבל סוגי המוצרים והעסקים שתיארת (וכעצמאי, ראיתי הרבה כאלה) נחשבים לתחתית של התעשיה גם אם הם רווחיים.
המשרות במקומות הללו בדרך כלל לא מאוד מתגמלות, בהנחה שאתה לא בעל העסק בעצמך או נשוי למנכ"ל.
 
למעלה