ראיון טלפוני ראשוני, לאחר מכן ראיון ראשון עם ראש צוות ומנהל, ראיון שני עם מנהל בכיר ולאחר מכן ראיון HR ממליצים ושיחת שכר.
שאלות מתוך הראיון
איך נראה היום שלך בעבודה?
איך אתה מתמודד עם קשיים/כשלונות?
תשובות
הוסף תשובה
|
לצפיה בתשובות
מרץ 2024
היום דינאמי וכולל מענה לטיקטים של שאלות ע"י מפתחים, מעבר על מיילים, פגישת דיילי בבוקר, ישיבות עם צוותים וראשי מחלקות, כתיבת דרישות ואפיון.
התמודדות עם קשיים ע"י מציאת פיתרון מהיר, יעיל וזול ככל האפשר בקור רוח ושיחות עם אנשי הצוות שיוכלו לסייע בבעיה
בהתחלה תיארו לי את התפקיד. לאחר מכן ביקשו שאדבר על פרוייקט שעשיתי ואז שאלו אוית 3 שאלות טכניות.
שאלות מתוך הראיון
1. לכתוב פונקציה שמקבלת מספר ומחזירה TRUE רק אם במספר יש ביט דולק אחד בלבד, אחרת מחזירה FALSE.
דוגמה: 0x000800 -> TRUE, 0x00C00 -> FALSE
2. ישנה רשימה מקושרת דו כיוונית ו-Index. כתבו פונקציה שמוחקת את האיבר במקום Index.
3. ישנה רשימה מקושרת חד כיוונית הפעם. לכל צומת ברשימה יש פוינטר בשם random שמצביע לצומת אקראי אחר ברשימה. איך ניתן לעשות deep clone לרשימה המקושרת?
תשובות
הוסף תשובה
|
לצפיה בתשובות
מרץ 2024
1. הפואנטה היא להבין שכל מספר נשמר בביטים במחשב. כל פעם אפשר לחלץ את ה-least significant bit (כלומר הביט הימני ביותר) בעזרת num&1, ואז צריך לעדכן את המספר על ידי num>>1 כדי שכעת ה-lsb (הביט הימני ביותר) יהיה הספרה הבאה במספר.
כך נעבור על כל הספרות ונתחזק counter שסופר כמה פעמים num&1==1. אם יש יותר מספרה אחת כזו נחזיר FALSE, אם סיימנו לעבור על כל המספר (כלומר num == 0) ולא החזרנו FALSE יש רק ביט אחד דולק ונחזיר TRUE.
2. אין התחכמויות, חשוב להיות מסודרים בלוגיקה ולהבחין במקרי קצה.
לולאה ראשונה להגיע למיקום של האיבר שצריך למחוק, ואז לולאה שנייה כדי למחוק את האיבר.
מקרי קצה: רשימה ריקה, איבר אחד, index out of range, מחיקה של איבר ראשון או איבר אחרון.
3. הרעיון הוא שנעבור על הרשימה פעמיים. פעם אחת ניצור העתק לכל איבר מהרשימה הישנה ונשמור את המיפוי לכל איבר מהרשימה החדשה למתאים לו ברשימה החדשה. פעם שנייה נעדכן את הפוינטרים next ו-random לפי המיפוי שיצרנו בלולאה הראשונה. (חפשו בליטקוד: "Copy List with Random Pointer")
ראיון שני למשרת סטודנט הראיון היה בטימס ערך כשעה תשובה מחזיר תוך שבוע אם עברת אז ראיון HR
שאלות מתוך הראיון
שאלה ראשונה שאלת כתיבת קוד : נתונים 2 מערכים של מספרים (גם שלילים וגם חיוביים לא ממויינים) צריך להחזיר את ההפרש המינימלי בין 2 מספרים כאשר אין עדיפות לאיזה מערך יהיה הראשון ואיזה השני וההפרש הוא תמיד חיובי (בערך מוחלט)
שאלה שניה שאלה לוגית של מקרי קצה :
נתון כי יש פרח בגובה של 10 ס''מ וקיים חילזון שרוצה לעלות לפרח, החילזון עולה 2 ס''מ בשעה אבל אחרי זה חייב לנוח שעה שבה הוא יורד 1 ס''מ, תוך כמה זמן הוא יעלה לפרח?
תשובות
הוסף תשובה
|
לצפיה בתשובות
פברואר 2024
1. מיון כל מערך ואז בעזרת לולאת WHILE מעבר על 2 המערכים, אם המינימום החדש קטן יותר אז מעדכנים את המינימום , אם הערך במערך 1 גדול יותר ממערך 2 מזיזים את האידקס במערך 2 אחרת מזיזים את האידקס במערך 1 .
התנאי בלולאה הוא כול עוד לא הגענו לסוף המערך (while (i< n1 && j < n2))
2. ציור של גרף מהלך העליה והירידה שלו, בכל שעה אי זוגית הוא יעלה 2 ס''מ ובכל שעה זוגית ירד 1 ס''מ ולכן יקח לו להגיע לפרח 17 שעות