חזרתי לשוק אחרי כמה שנים טובות. אני מתראיין ויצא לי להתקל בלא מעט מראיינים חובבנים שלא מראיינים בצורה נכונה, כלומר שואלים שאלות סתמיות של ידע טכני יבש או מתעצלים ולוקחים את השאלה הראשונה שהם מצאו בגוגל כדי לצאת ידי חובה וחורצים את גורלך על סמך שטויות. בין השאר נתקלתי גם בחוכמולוגים ששואלים את השאלה הבאה: "איך היית ממדל את X או איך היית כותב את זה בלי פריימוורק?" כלומר שאלה מתחכמת של להמציא את הגלגל מחדש.אני חושב שיש שתי בעיות עם השאלה הזאת:
א. לא ממש שרוכה בפרונטאנד, שכן JS היא לא מונחת עצמים קלאסית ואין בה עידוד לכתוב OOP קלאסי (כי היא לא). להפך, היא הולכת לכיוון הפונקציונלי שקדם ל OOP. ריקאט אגב, זה דוגמא מצויינת למשהו שמנחה כתיבת פונקציונלית.
ב. פשטנית מדי, אי אפשר להמציא תבנית עיצוב על המקום, שכן רוב אנשי הפרונט-אנד הם לא מהנדסים ולא עוסקים בפיתוח של פריימוורקים (משאירים את זה לתותחים כמו דן אברמוב, אוון יו וכו').
יאמר לזכותו, שבמקום אחד ששאלו את זה, הם למעשה כותבים הכל ב TS, כלומר OOP קלאסי, ככה שיש היגיון בלשאול את זה. הבעיה שלא הציגו את המידע לפני שהגעתי לראיון.
במקום אחר, שכותבים בריאקט איזה דאשבורד (כמו 99% מהמקומות), גם שאלו את השאלה הזאת, אבל בצורה ממש חובבנית, כאילו יש תשובה אחת מוכנה מראש. כשהסברתי קונספטים גנרים שכל מתכנת מנוסה אמור להכיר, היה נראה שאני לא "פוגע" ולא מצליח להרשים את המראיין שנעול על תשובה אחת לשאלה שלו. זה היה די מעורר גיחוך, מה גם ששאלתי אותו לגבי התשובה שלו לשאלה הזאת, הוא לא טרח לענות. כלומר, המלך הוא עירום.
עכשיו אני שואל האם לדעתכם הגיוני לשאול כאלה שאלות בהקשר של פרונט-אנד? אגב, למרות שלא כתבתי OOP קלאסי, כי מה לעשות השפה בצורה הטבעית שלה, כפי שהסברתי, לא מכוונת לכך, אני כן מכיר כללים כמו סוליד, מה גם שרובם גנרים לכל שפה ומתכנת טוב מסיק אותם עם הזמן ללא הכרה רשמית. אני גם יודע שייקח לי חודשים בבודדים ליישר קו בפועל, בכתיבת קוד.
אשמח לשמוע את דעתכם וגם כיצד אתם הייתם עונים על השאלה. אני מזכיר שההקשר פה הוא פרונט-אנד. ייתכן שזה מוכיח שפיתוח פרונט-אנד לבד הוא די בולשיט וחייבים להכיר לפחות שפה אחת נורמלית, מונחית OOP קלאסי בשביל לא להגיע לבעיה הזאת בראיונות עבודה?