הייתי אתמול בראיון עבודה אצלהם.
ראיון יחסית ארוך .. באזור השעתיים ורבע
ראיון מול 2 אנשים למשרת פיתוח.
בהתחלה אתה מספר על עצמך ועל פרויקטים שעשית , ואז לאט לאט המראיינים נכנסים איתך לפרטים פנימה .
מאחר והרחבתי על פרויקט שהשתמשתי בהמון Threads , הם החליטו לשאול אותי שאלה על Threads.
בהנתן 2 קטעים קוד , כל אחד עבור Thread כלשהו . המטרה היא שכל Thread יכנס לפונ' כלשהי ואז ברגע ששניהם נכנסו לפונקציה הם ימשיכו הלאה.
בהתחלה לקח לי קצת להבין בגלל כל הלחץ ואחרי 5 +- דקות נפל לי האסימון שזה Barrier . הפתרון הוא כמובן להשתמש עם Semaphores. בחלק הזה יחסית לקח לי דיי המון זמן לפתור , העלתי מספר פתרונות , אבל אחרי בדיקה עם המראינים ראיתי שהפתרון לא נכון , עד שהם זרקו רמז והצלחתי לפתור.
זהו החלק שבעיקרון לקח לי הכי הרבה זמן.. אני לא יודע אם זה מהלחץ או משהקושי.
החלק השני היה שאלות ב C++.
מה קורה כאשר מגדרים Constructor כ private , האם זה שגיאת קומפילציה או ריצה. איך בכל זאת אפשר להתגבר על זה?
הפתרון הוא בעצם להגדיר את המשתנה בהקצאה דינמית . אבל דבר זה יוצא בעיית memory leak .
לאחר מכן הם שאלו איך אפשר לפתור את זה ללא memory leak.
הפתרון הוא להגדיר פונקציה שבעצם עושה delete this.
פתרתי את זה ככה , אבל אמרתי להם שאני לא בטוח מה יקרה לאחר מכן , כלומר איך הקוד ימשיך לרוץ.
שאלו גם מה ההבדל בין STACK ל HEAP.
כמו כן שאלו איזה בעיות יכולות לנבוע כאשר מוגדרת מחלקה עם פוינטר ופונקציה ווירטואלית ללא מימוש.
ואיך לפתור את זה.
אני כרגע מחכה לתשובה.... במידה ומשהו היה ויודע כמה זמן מחכים אשמח לשמוע