ראשי> תכנות> שאלות מראיונות למשרות פיתוח
Shahaf
Avatar
מנותק\ת

מנהל ראשי
הודעות: 342

 
25/09/2014 21:52:57

לאחרונה יצא לי לחפש הרבה פעמים ריכוז שאלות מראיונות עבודה לקראת משרות תכנות בפיתוח, וחשבתי שיכול להיות נחמד לרכז פה שאלות עדכניות ששאלו אתכם בראיונות אחרונים למען  נוכל כולנו לחזור לפה להתכונן לקראת הראיונות הבאים.

אז אם יש לכם מה לשתף נראה לי שזה יתרום לכולנו, ותודה מראש smiley

יכול לעזור אם תציינו גם לאיזה משרה השאלות (c, c++, java, dotnet, web - client/server/full וכו') ואם אתם מעדיפים לא את שם החברה אז לפחות אם זה חברה גדולה או סטרטאפ.


נערך על-ידי Shahaf בתאריך 25/09/2014 21:54:46

Signature
תגובות ישנות יותר
GoldMaster
Avatar
מנותק\ת

משתמש רגיל
הודעות: 34

 
26/09/2014 18:21:14

אני זוכר ששאלו אותי דברים במערכות הפעלה, הביאו כל מיני תרחישים ואז היה צריך לפתור אותם עם threads וכדומה.

עוד משהו שאני זוכר זה שהביאו תרשים של פעולה מסויימת, היה צריך לשפר את התרשים כך שיהיה נכון, להסביר אותו ואז לממש את מה שהיה נתון שם (אני לא ממש זוכר מה בדיוק היה נתון).

בכלליות יש גם קובץ מאוד גדול של שאלות מראיונות עבודה ושנמצא בלינק הזה: http://img2.timg.co.il/forums/1_167966025.pdf

avi.b
Avatar
מנותק\ת

מנהל ראשי
הודעות: 118

 
26/09/2014 20:25:48

וואו אחי תודה זה קטלני אני מוריד למחשב זה חומר טוב

GoldMaster
Avatar
מנותק\ת

משתמש רגיל
הודעות: 34

 
27/09/2014 14:53:48

בכיף! מקווה מאוד שלכולנו יילך טוב בראיונות ושהקובץ הזה באמת יעזור.

yaara1000
Avatar
מנותק\ת

משתמש רגיל
הודעות: 9

 
29/09/2014 10:37:50

שאלה שקיבלתי בראיון לחברה לא גדולה מאוד, אבל אחת שנרכשה על ידי אחת גדולה, לא מזמן, מדובר על משרה בתחום אבטחת מידע: 

*בתכל'ס זה לממש REGEX בערך*

לממש פונקציה:

בחתימה של הפונקציה מקבלים סטרינג אחד שהוא test ואחד שהוא pattern, כאשר test יכול להכיל את כל התווים מלבד * ו ?, וpattern יכול להכיל הכל.

המטרה היא לבדוק האם כל התווים בtest תואמים לpattern, כאשר הכלל הוא כזה:

אם מופיע בpattern התו '?', אז באינדקס הזה בtest יכול להופיע כל תו.

אם מופיע '*' אז באינדקס הזה בtest יש רצף של 0 או יותר תווים.

אם יש התאמה, נחזיר true, וfalse אחרת. 

דוגמא:

test="aabbcdefg"

pattern="aa*defg"

פה יוחזר true

test="aabcc"

pattern="a?b"

כאן יוחזר false

 

 

 


נערך על-ידי yaara1000 בתאריך 29/09/2014 10:38:38
Shahaf
Avatar
מנותק\ת

מנהל ראשי
הודעות: 342

 
29/09/2014 17:44:18

שאלות ששאלו אותי בראיון לפיתוח WEB בחברה קטנה:

שאלה: מה השלבים בטעינת דף ASP?
תשובה: הכונה שלהם היתה לתאר שהלקוח שולח בקשה לשרת, השרת מעבד את הקוד ASP ויוצר ממנו קוד HTML, ומעביר אותו ללקוח

שאלה: באתר שבו יש משתמשים רשומים, איך לממש רשימת מחוברים?
תשובה: אני הצעתי לממש רשימה על הבסיס נתונים לפי כתובות IP, התשובה שהם חיפשו היא לממש את הרשימה לפי SESSION משום שיכולים להיות מספר מחשבים שמשתמשים ברשת מסויימת ולכולם תהיה אותה כתובת IP למרות שמכל מחשב יתחבר משתמש אחר. אגב תשובה יותר טובה מלממש את הרשימה בבסיס נתונים תהיה לממש אותה בזיכרון של השרת (למשל APPLICATION אם מדובר על קוד ASP.NET), סתם כי חבל על החיבור המיותר לבסיס נתונים.

משימה תכנותית:
הושיבו אותי מול מחשב עם Visual Studio פתוח על פרוייקט עם שני קבצים:
1) קובץ שבונה DATASET של נתונים. הנתונים מייצגים אובייקט של כרטיסייה. זאת אומרת שיש ב-DATASET מספר כרטיסיות.
2) קובץ HTML פשוט שמראה עיצוב כלשהו כדוגמה לפיה הם רוצים להציג את הכרטיסיות.

המשימה: לבנות דף ASP.NET שלוקח את נתוני הכרטיסיות מה-DATASET ומציג אותן במחזוריות לפי העיצוב לדוגמה שבדף ה-HTML.
הפתרון: אני מימשתי את הכל ב-code behind כך שעשיתי לולאה שרצה על הנתונים מה-dataset ובונה אובייקטים של ASP.NET לדף התצוגה. היה צריך לשים לב בפתרון מהסוג שלי, שאחד הדברים שהיה צריך לממש הוא כפתור, ובמחזור החיים של דף html כפתור נוצר בשלב אחר מאשר ב-page load, ולכן כדי לטעון אותו כמו שצריך אם אני זוכר נכון הרצתי את הפונקציה ב-page init (אל תתפסו אותי על המילה).
הפתרון שהם ציפו אגב היה לממש את שליפת הנתונים והצגתם במחזוריות בעזרת פקד repeater.


נערך על-ידי Shahaf בתאריך 29/09/2014 17:47:01

Signature
liorko
Avatar
מנותק\ת

משתמש רגיל
הודעות: 158

 
30/09/2014 20:25:08

שאלה שמורכבת משני חלקים:

1. קיים מערך עם כל המספרים מ 1-100 ורק אחד מהם חסר, צריך לגלות איזה מספר חסר?

2. אותו מערך מהחלק הראשון רק שהפעם חסרים שני מספרים. איזה מספרים חסרים?

RiMiK
Avatar
מנותק\ת

משתמש רגיל
הודעות: 33

 
06/10/2014 18:07:11

באיזה ראיון לתפקיד פיתוח ב.NET שאלו אותי שבמידה אין לי מחשבון במחשב, כלומר אין לי חיבור אין לי כלום, רק אפשר לשמור דברים, איך אני איישם כפל עד מספר ביטים מסוים?

תשובה: לשמור במערך דו מימדי

בנוסף גם ביקשו ממני לכתוב פסאודו על עץ בינארי שלם ומושלם

אם אזכר במשהו נוסף אגיד

eran
Avatar
מנותק\ת

משתמש רגיל
הודעות: 41

 
24/10/2014 10:29:49

דוגמה לבעיה שיכולה להישאל בראיונות היא בעיית המטבעות: אם יש מטבעות של שקל, 5 שקלים, 10 שקלים ו20 שקלים וצריך לשלב סכום מסוים באמצעות מספר מינימלי של מטבעות. כיצד לכתוב אלגוריתם שיעשה זאת? [ראו הסבר מפורט בhttp://www.gadial.net/2014/10/14/change_making_problem/ ]

liorko
Avatar
מנותק\ת

משתמש רגיל
הודעות: 158

 
28/10/2014 23:35:45

הייתי לפני כחודש בראיון בחברת תקשורת למשרת פיתוח בשפת c#. המשרה הייתה לפיתוח בדסקטופ

המבחן שעשיתי כלל בעיקר מושגים כלליים תוך עמידה על הבדלים שלא תמיד זוכרים אותם ביום יום.

שאלה לדוגמא מס' 1: איזה אובייקט יכול להקרא ללא האפשרות ליצור אותו?

תשובה: אובייקט סטטי (הניסוח של השאלה לא היה משהו)

שאלה מס' 2: מה ההבדל בין override ל overload

תשובה: אחד מהם דורס לגמרי את המימוש במחלקת האב.

שאלה מס' 3: מה עושה הפקודה הבאה: Thread.Join()

תשובה: מחכה שכל ה Threads יסיימו

שאלה מס' 4: נתונה לך מחלקה שמממשת שני ממשקים. בכל ממשק שמות השיטות זהות. האם הקוד יעבור קומפילציה?

תשובה: לא. צריך לשנות את השם של השיטות באחד הממשקים

שאלה מס' 5: מה ההבדל בין string ל string builder

תשובה: builder מאפשר לאחסן טקסט גדול יותר בגלל שהוא אובייקט דינמי בניגוד ל string.

אלו השאלות שאני זוכר. המבחן היה עם דף ועט בלבד בחדר בלי מחשב.

GoldMaster
Avatar
מנותק\ת

משתמש רגיל
הודעות: 34

 
30/11/2014 23:30:35

אז ככה, חדש מהתנור!

שלבי בדיקה של כספומט ומעלית + יש צורך להגיד מקרי קיצון למינהם וכל המצבים האפשריים שיכולים לקרות בזמן הפעולות בשני המערכות.

Shahaf
Avatar
מנותק\ת

מנהל ראשי
הודעות: 342

 
27/05/2015 22:30:20

חיפשו אצלי בעבודה לאחרונה עובד חדש ויצא שאני זה שכתבתי את המבחן הטכני עבור המועמדים. עכשיו משקיבלו מישהו לתפקיד אני יכול לשתף מה היה במבחן:

התפקיד הוא פיתוח ווב Full Stack בשפות ASP.NET, jQuery, MS SQL Server.
מטרת המבחן היתה לוודא שהמועמד יודע לעבוד ישירות מול בסיס נתונים, לעבוד עם נתוני בסיס הנתונים דרך הקוד של dotnet framework, לעבוד עם גליון סגנון וקוד JS.

במבחן המועמדים קיבלו:
1) שני Interfaces, האחד עבור מחלקת DbContext (התחברות לבסיס נתונים) והשני עבור מחלקת Crud לטבלה בבסיס הנתונים.
2) בסיס נתונים ריק, ו-ConnectionString עבורו.
3) גליון סגנון -CSS, ודף סקריפט (JS) שמכיל קוד של Modal Window.
4) דף ובו התוצר הסופי שמצופה שיגיעו אליו. המשימה בדף: א- להציג את כל הרשומות בטבלה בבסיס הנתונים. ב- לצייר את לוח הכפל.

במבחן המועמד היה צריך לבנות טבלה בבסיס נתונים במבנה מסויים שביקשנו שתראה (ולמלא אותה בכמה נתונים),
לאחר מכן היה צריך המועמד ליצור חיבור מתאים בין בסיס הנתונים לקוד על-ידי בניית המחלקות המתאימות לממשקים שהוא קיבל,
ולבסוף, היה על המועמד להשתמש במחלקות שהוא בנה כדי לשלוף את כל הרשומות מהטבלה בבסיס הנתונים, ולהציגן בדף.

התצוגה של הרשומות בדף הייתה צריכה לכלול שימוש בגליון הסגנון שסופק למועמד, וכן שימוש ב-Modal Window של jQuery. בנוסף, היה מצופה מהמועמדים להשתמש ב-Repeater כדי להציג את הרשומות על הדף אבל גם שיטות אחרות התקבלו.


Signature
ליאור
Avatar
מנותק\ת

משתמש רגיל
הודעות: 8

 
03/08/2015 22:13:07

 

שאלת היגיון ששאלו אותי היום בראיון למשרת פיתוח של C#:

נתון חניון עם N מקומות חנייה ו-M שערים. כל שער שומר את מספר המכוניות שנכנסו דרכו. בכל פעם שמכונית נכנסת דרך שער, מספר זה עולה ב-1. בכל פעם שמכונית יוצאת מהשער, מספר זה יורד ב -1. ברשותך פונקציה (openGate(i הפותחת את השער ה-i ומאפשרת למכונית 1 לצאת/להיכנס, ו- (check(i שבודקת את מספר המכוניות ששמור בשער ה-i-י. כתוב פונקציה המקבלת את מספר השער ובקשה להיכנס או לצאת מהחניון ומנהלת את שערי החניון.

זאת שאלה שחוזרת על עצמה בהרבה ראיונות עבודה... הפיתרון הוא לעבור על כל השערים ולסכום את כל המונים מכל שער, וזה שווה למספר הרכבים שחונים בחניון.

 

שאלה נוספת ממשרה אחרת לפיתוח ב- C++/C:

לכתוב פונקציה שמקבלת מספר טבעי n ומחזירה את האיבר ה-n בסדרת פיבונצ'י - פעם אחת פונקציה איטראטיבית (עם לולאה) ופעם שנייה פונקציה רקורסיבית.

בסוף להסביר איזו פונקציה/שיטה יותר יעילה.

התשובה במקרה הזה שהפונקציה הרקורסיבית פחות יעילה כי בגלל הנוסחת נסיגה של פיבונצ'י - (Fibo(n) = Fibo(n-1) + Fibo(n-2, אז יש פעמיים קריאה רקורסיבית לכל איבר בסדרה, כלומר בפעם הבאה -

(Fibo(n+1)=Fibo(n)+Fibo(n-1, וקוראים שוב לאיבר ה-n-1 למשל...אז האיטראטיבי כאן יותר יעיל.

עוד שאלות נוספות:

מה השימושים של const ? ולהגדיר מזה union.

 

מקווה שזה עזר, בהצלחה.

Shahaf
Avatar
מנותק\ת

מנהל ראשי
הודעות: 342

 
24/11/2015 21:40:38

התחלתי לעבוד במקום חדש ככה שהייתי בכמה ראיונות לאחרונה והחלטתי לאסוף את השאלות המרכזיות ששאלו אותי.

השאלות מחולקות בקבוצות לפי חברות, אבל הסרתי את שמות החברות כדי לא לפגוע בחברות עצמן ובתהליך הגיוס שלהן.

כל השאלות הן עבור תפקידי פיתוח WEB בשפות מגוונות (dotnet, php, java, ruby, javascript, angular, sql server, mysql).

תהנו .

 

1) בדף אינטרנט של לקוח יש קישור לקובץ Javascript שיושב בשרתי החברה. איך מאפשרים את פעולת העדכון של הקובץ כך שברגע שבשרתי החברה הקובץ משתנה כך כל גולש באתר הלקוח יוריד את הקובץ החדש ולא ימשיך להריץ את הקובץ הישן שיושב בזכרון CHACHE של הדפדפן

2) מבחן מקצועי בשפת Javascript ובו יש לממש מחלקה שתהווה מעטפת עבור localStorage.
מממשים פונקציה push, pop שמהוות הוספת ערכים אל ה-localStorage וצפייה בערכים משם, והקאטצ' הוא שיש להכניס את הערכים עם פרמטר Expiration שבמידה והוא עובר אז הערך נמחק מהמאגר

3) איך לממש ביטוי מתמטי:
יש לציין באיזה מבנה נתונים ישמר הביטוי (מספרים ואופרנדים), ואיך לכתוב פונקציה שתקרא את הביטוי ממבנה הנתונים ותבצע את החישוב שבו. פונקציית החישוב צריכה להכתב בקוד פשוט וקצר ולא עם הרבה תנאי if עבור כל אופרנד (בעזרת פולימורפיזם)

...

4) מה זה Clustered Index בבסיסי נתונים

5) עבור קישור URL המוביל לדף אינטרנט כלשהו יש לקרוא את פלט ה-HTML שלו ולבצע PARSING כך שיוצג רק הטקסט שבו ולא התגים מהם ה-DOM מורכב

6) לפתור במחשב את בעיית Pathfinder שהיא מציאת הדרך הקצרה ביותר לצאת ממבוך

...

7) איך למצוא בסיבוכיות O(1) מינימום מבין מספרים שהוזנו למחסנית

8) עבור מערך עם מספרים חיוביים ושליליים יש להחזיר את תת המערך עם הסכום הגדול ביותר

9) עבור מערך שמורכב מ-0 ו-1 מפוזרים יש לסדר אותו כך שכל האפסים יהיו בצד שמאל וכל האחדות בצד ימין

10) אותו מערך משאלה 5.3 אך כעת יש בו את המספרים 0,1,2 ויש לסדר אותו כאשר 0 בצד שמאל 1 באמצע ו-2 בצד ימין

11) נתונים שני סטים שמורכבים כל אחד משתי נקודות וצלע בניהן (כלומר שני קווים נפרדים). ממש פונקציה שתגיד אם שני הקווים נחתכים או לא

...

12) מה זה Sprite

13) בבקשת HTTP כאשר נוסף ל-HEADER ערך עבור CSRF_TOKEN מה המשמעות של זה

14) מה זה Dependency injection

15) האם נכון לממש רשימת מחוברים של אתר אינטרנט כאשר שומרים אותה בבסיס הנתונים או ב-Application, ומה הסיבה שנרצה כן לשמור אותה בבסיס הנתונים

16) מה זה CSS Framework

...

17) לתאר 3 Directives של Angularjs אשר מובנים בשפה

18) אילו סלקטורים יש ב-CSS

19) בדף שבו אלמנט מסוג כפתור – איך משנים את האלמנט להיות מסוג קישור בעזרת Javascript / JQuery / Angular

20) איך עובד זכרון CACHE של הדפדפן

...

21) להסביר מה זה Object Oriented

22) מה הנקודה המשותפת שבין ASP.NET WEBFORMS לבין ASP.NET MVC

23) כרמז לשאלה 2 – כאשר מגדירים APPLICATION POOL בשרת IIS מה ההבדל בין מצב CLASSIC לבין מצב INTEGRATED

24) איזה סוגים של SESSION יש ב-ASP.NET

25) מה היתרונות בשמירת SESSION על גבי בסיס נתונים

26) לממש אלגוריתם של מחסנית שמבצע PUSH ו-POP. את האלגוריתם יש לממש כשהוא THREAD SAFE ואסור להשתמש במנגנון הנעילה LOCK

27) לכתוב פונקציית Javascript שתמצא את כל ה-web resources בדף (כולל תמונות, קבצי js, css, קישורים אל מחוץ לאתר, ואף כתובות URL הכתובת כטקסט חופשי בדף)

28) איך מתנהג תהליך של ניהול זיכרון בשפת תכנות – מצד אחד איך עובד ה-Garbage Collector ומצד שני איך המכונה הוירטואלית יודעת להחליט שאובייקט מת

...

29) לתאר מבנה נתונים של הסיפור מקרה הבא:
ישנו מרצה שצבר מאגר שאלות. עבור כל שאלה מוגדר תוכן השאלה וכן דרגת הקושי שלה.
המרצה רוצה לבנות מערכת שבה בעמוד אחד יוצגו השאלות לפי סדר הזנתם למערכת, ובעמוד אחר יוצגו השאלות לפי דרגת הקושי שלהם.

...

30) למה שמים סקריפט של Analytics (למשל Statscounter, Google Analytics) בסוף העמוד ומה החיסרון בזה

31) מה זה CDN ומה היתרון בזה

32) מה זה Sprite ומה היתרון בזה

33) איך מממשים תאימות למובייל על גבי CSS לפי רזולוציית מסך

34) מה ההבדל בין Left Join לבין Right Join

35) מה ההבדל בין Join לבין Union

36) איפה עדיף לבצע בדיקת אימות קלט בצד שרת או בצד הלקוח

...

37) ישנה רשימה של צבעים המוגדרים לפי השם שלהם ולפי שלישיית מספרים R,G,B שכל אחד מהם בין 0-255. למשל הצבע Black הוא R=0, G=0, B=0 והצבע White הוא R=255, G=255, B=255.
אמנם ניתן ליצור 256*256*256 צבעים אפשריים אבל רשימת הצבעים מכילה שמות של צבעים קבועים כמו Blue, White, Navy, Indigo והיא מצומצמת הרבה יותר.
יש ליצור פונקציה שבהינתן קלט של 3 מספרים עבור R,G,B תדע למצוא את הצבע הקרוב ביותר.
יש להביא פתרון עם סיבוכיות זיכרון טובה, ופתרון שני עם סיבוכיות זמן טובה

38) איפה נשמר בזיכרון משתנה value type לעומת  reference type. כאשר נוצר רפרנס חדש לאובייקט היכן הוא נשמר (stack/heap)

39) כאשר נעביר בארגומנט לפונקציה אובייקט ונקבע אותו בתוך הפונקציה שיהיה Null מה יקרה כאשר האובייקט יועבר כ-value type לעומת אם הוא יועבר כ-reference type

 


Signature
yoni
Avatar
מנותק\ת

משתמש רגיל
הודעות: 4

 
08/09/2016 08:59:03

שלום לכולם.

לאחרונה הייתי בריאיון עבודה לתפקיד: מפתח תוכנה.

השאלות שזכורות לי משם הן:

1. כתבו לי תוכנית ששולחת משתנה לפונקציה ולבסוף יש פלט. מהו הפלט?

2. מהו HASH TABLE ומה הסיבוכיות שלו.

3. ברשימה מקושרת חד כיוונית, איך ניתן לדעת מהו האיבר האחרון ברשימה?

4. ברשימה מקושרת מעגלית (האיבר האחרון מצביע לאיבר הראשון), כיצד ניתן לדעת שהרשימה הסתיימה?

5. כתוב פונקציה רקורסיבית המקבלת ערך אינדקס של סדרת פיבונאצ'י ומחזירה את הערך שלו. (לדוגמא: אם הפונקציה קיבלה את הערך אינדקס 5, אז התשובה תהיה: 8).

בהצלחה :)

devil_kidE
Avatar
מנותק\ת

מנהל ראשי
הודעות: 129

 
23/10/2017 18:32:27

קומפאי/Compie
נמצאים ברמת החייל. שאלות למפתח Fullstack. ניתן לפתור באיזה טכנולוגיה שאתה רוצה מבין רשימה ארוכה. 
צרך להצטייד בלפטופ.

ליצור אפליקצייה עם מספר של חנויות ספרים (יש ווראציות של כל מני חנויות), מזינים כתובת ולפי חיבור לגוגל API לעשות השלמה אוטומטית ולאחר מכן להחזיר רשימה של החנויות ספרים הכי קרובות\ במרחק של עד 50 ק"מ וכו'..

**********************

ישנו מערך עם N איברים ונדרש לסדר אותו ככה שסכום מכפלות של איברים צמודים הוא הכי נמוך

 

חובה להתחבר כדי לכתוב באתר