first I had a home assignment 30 min test with sql questions .
and then a group interview with the vp , gave us a test also about sql .
last stage was sql questions with the vp .
שאלות מתוך הראיון
Sql basic questions
given a table , write queries to fetch informations
התקשרו לזמן אותי לראיון אחרי ראיון טלפוני קצר. בראיון הטכני שאלו שתי שאלות בשפת java, אחת לגבי threads ואחת לגבי גנריות ושאלת קוד. לא עברתי את הראיון הראשון, אך המשך התהליך היה אמור לכלול עוד ראיון טכני, ראיון HR ןהצעת שכר
שאלות מתוך הראיון
1. נתנו קטע קוד קצר שאליו אמורים להיכנס שני threads, והמראיין שאל האם הקוד טוב ואם לא, מה היית עושה כדי לשפר אותו.
2. המראין ביקש ליצור בצורה הכי גנרית שאפשר אלגוריתם שמוצא אם יש מעגל ברשימה מקושרת - גם אלגוריתם נאיבי וגם אלגוריתם אופטימלי.
תשובות
הוסף תשובה
|
לצפיה בתשובות
יוני 2021
1. הקוד היה יכול לגרום לmonitor exception ולכן הפתרון הוא לעשות synchronized על תאים ספציפיים במערך שניתן שם כאינפוט, כשהנעילות יתבצעו בצורה סדרתית מהאינדקס הנמוך במערך לגבוה.
2. הפתרון היה ליצור interface עם פונקציית findCircle כאשר מחלקה אחת שעושה implement מריצה את האלגוריתם הנאיבי (לבדוק על כל אחת מהחוליות האם חוזרים אליה במעגל) והמחלקה השנייה מממשת את האלגוריתם האופטימלי (להחזיק שני פויינטרים כשאחד fast והשני slow, את הfast מקדמים בכל איטרציה ב2 ואת האיטי ב1. אם מתישהו הפויינטרים מצביעים לאותו מקום בזיכרון יש מעגל, אחת אם מגיעים לnull אין מעגל).
שלושה שלבים, ראש צוות אז המנהל שלו ואז VP R&D. השלב הראשון היה ראיון נחמד ודי קליל. בשלב השני המראיין איחר. בשלב השלישי היו שאלות מוזרות שגרמו להרגשה לא נעימה.
שאלות מתוך הראיון
בשלב הראשון: שאלה של קבלת שרשרת של חוליות עם מספרים דו ספרתיים וחד ספרתיים ולבדוק האם ניתן לבנות את הדו ספרתיים מתוך חד ספרתיים. השאלה השניה הייתה לממש הדפסה של עץ בינארי בצורה איטרטיבית עם O(1) זכרון.