היי ,
מישהו היה לאחרונה בראיון למשרת מהנדס תוכנה באלגוטק (c# .net)?
אם כן, מה שואלים במה כדאי להתמקד? וד"א למי שמכיא מישהו שעובד שם, מה דעתכם על החברה? שווה את המאמץ?
לפני 5 שנים
ע"י: 1_אורח_כללי
bug life cycle
test Windows OS connection
Windows OS error
מה ההבדל בין NAS ל SAN
SQL
3 מעליות, צריך לרשום tests
Application A - סורק image בפורמט jpeg ה server מעביר ל external disk,
Application B - ה server צורב ל DVD.
צריך לרשום tests
לפני 12 שנים
ע"י: 1_אורח_כללי
בקשר לשאלה ראשונה :
string LongRunningMethod(int iCallTime, out int iExecThread)
{
Thread.Sleep(iCallTime);
iExecThread = AppDomain.GetCurrentThreadId();
return "MyCallTime was " + iCallTime.ToString();
}
delegate string MethodDelegate(int iCallTime, out int iExecThread);
public void DemoCallback()
{
MethodDelegate dlgt = new MethodDelegate (this.LongRunningMethod) ;
string s ;
int iExecThread;
// Create the callback delegate.
AsyncCallback cb = new AsyncCallback(MyAsyncCallback);
// Initiate the Asynchronous call passing in the callback delegate
// and the delegate object used to initiate the call.
IAsyncResult ar = dlgt.BeginInvoke(3000, out iExecThread, cb, dlgt);
}
public void MyAsyncCallback(IAsyncResult ar)
{
string s ;
int iExecThread ;
// Because you passed your original delegate in the asyncState parameter
// of the Begin call, you can get it back here to complete the call.
MethodDelegate dlgt = (MethodDelegate) ar.AsyncState;
// Complete the call.
s = dlgt.EndInvoke (out iExecThread, ar) ;
MessageBox.Show (string.Format("The delegate call returned the string: \"{0}\","
+ "and the number {1}", s, iExecThread.ToString() ) );
}
לפני 12 שנים
ע"י: מהנדס_תוכנה
לכל מי ששלח לי שאלות לפרטי , עדיין לא פנו אליי למרות שאמרו שיחזרו אליי תוך שבוע
אם מישהו היה שם כבר אשמח לשמוע מה בדיוק שואלים ?
תודה
לפני 12 שנים
ע"י: מהנדס_תוכנה
יש לי ראיון שם בקרוב ? מישהו היה שם בזמן האחרון , מכיר עוד חומר ושאלות ?
תודה
לפני 12 שנים
ע"י: 1_אורח_כללי
יוצרים תור של אוביקטים שכל אחד מהם מחזיק את זמן ההשהייה ואת הפונקציה שיש לקרוא בסיום ההשהייה. בכל פעם שנגמרת ההשהייה, מוציאים איבר מהתור ממתינים את ההשהייה שלו ומפעילים את הפונקציה. בכל פעם שרוצים שקוראים לפונקציה שלנו היא בודקת האם התור ריק ואם אין השהייה שמתבצעת כעת. אם כן, היא מבצעת מייד את ההשהייה המבוקשת, אם לא היא מוסיפה את האובייקט לתור.
לפני 12 שנים
ע"י: 1_אורח_כללי
כתוב שאין אפשרות להשתמש במשהו ממערכת ההפעלה אז איך אפשר ליצור טיימר חדש?
לפני 12 שנים
ע"י: 1_אורח_כללי
אפשר לתת הסבר יותר מפורט לגבי פתרון שאלה 1 ?
לפני 13 שנים
ע"י: 1_אורח_כללי
בכל פעם שאתה קורה למתודה אתה יוצר טיימר חדש עם הזמן שקבלת והטיימר מפעיל את האירוע OnTick. ב OnTick אתה בודק מי זה ששלח (sender) ולפי זה מפעיל את המתודה המתאימה.
לפני 13 שנים
ע"י: מיכאל פו
איך פותרים את השאלה הראשונה?
לפני 13 שנים
ע"י: 1_אורח_כללי
שחזור ראיון אלגוטק:
שאלה 1:
נתונה מתודה שנקראת setTimer שמקבלת שתי משתנים משתנה timeInterval ומשתנה שני שהוא מצביע לפונקציה. כאשר מתבצעת קריאה לפונקציה setTimer מ"ה ההפעלה מחכה את ה-timeInterval ומבצעת את הפונקציה שאליה היא מציעה.
לדוגמא המתודה setTimer(5,funcA) תגרום למ"ה לחכות 5 מילישניות ותפעיל את פונקציה funcA.
הבעיה של המתודה הנ"ל היא שקריאה שניה של נוספת למתודה לפני שהיא גמרה לבצע את הפעולה שהיא הייתה אמורה לבצע תבטל את הקריאה הראשונה ותבצע את הקריאה השנייה בלבד.
לדוגמא:
אם נקראו הפונקציות setTimer (5, A) ומאית שנייה אח"כ תקרא המתודה setTimer(2,B) היינו מצפים שיתבצעו הפעולות הבאות:
0. קריאה למתודה עם timeInterval 5 לביצוע פונקציה A.
1. קראיה למתודה עם timeInterval 2 לביצוע פונקציה B.
2.
3. פונקציה B מבוצעת.
4.
5. פונקציה A מבוצעת.
בפועל רק פונקציה B מבוצעת (כי הקריאה השנייה למתודה ביטלה את פעולת הקריאה הראשונה).
הצע מתודה חדשה setTimer2 שתגרום לשתי הפונקציות להתבצע , כלומר כל הפונקציות הנקרות יתבצעו ללא קשר לסדר הקריאה להן.
צריך לפתור את השאלה ללא שימוש הת'רד נוסף או ביכולות אחרות של מ"ה.
שאלה 2:
נתונה הפונקצייה compactString שמקבלת מערך של char , הפונקצייה את המערך כך שכל הרווחים שהיו במערך הוזזו לסוף המערך.
לדוגמא עבור המערך "i love ice-cream" הפונקציה תחזיר "iloveice-cream " (הרווחים הוסטו לסוף המערך).
אסור להשתמש בפונקציות עזר של string ויש להתחשב בשיקולי זמן ומקום (כלומר צריך לבצע מעבר אחד על המחרוזת בלי להשתמש במערך עזר).
שאלה 3:
מימוש בכתב של singelton . הייתה שאלה על מימוש של המחלקה שעון , שבגדול צריך לממש אותה הצורה של singelton.
בנוסף שואלים שאלות כלליות בתכנות מונחה עצמים (המראיינים הגיעו עם דף שאלות, אלו השאלות שאני זוכר).
כדאי לזכור DP, ההבדל בין dispose ל- finalize . הסבר על פעילות ה-GC. שימוש ב-delegates. שימוש ב- boxing ו- unboxing. העברת משתנים by value ו- by ref. מה ההבדל בין threadpool ל- paralelism (ובכלל שימוש בתכנות מקבילי).
בסה"כ עשו רושם של חברה רציניים שעוסקים בתחום מעניין מאוד (לטעמי). אבל תנאי העבודה שם לא הכי נוחים (המתכנתים יושבים בopen space די אחד על השני) ונראה דהאוירה שם מאוד כבדה ויותר מדי רצינית.
אני לא המשכתי איתם ,שיהיה בהצלחה למי שמתראיין.
נ.ב מומלץ להקדים ולבהות בשתי פקידות הקבלה שעובדות שם, זה אחד המחזות היותר מצחיקים שמתקלתי בהם