एक अच्छे प्रोग्रामर को कैसे पहचानें? [बन्द है]


131

हमारी कंपनी नए प्रोग्रामर की तलाश कर रही है। और यहाँ समस्या आती है - ऐसे कई डेवलपर हैं जो साक्षात्कार में वास्तव में बहुत अच्छे लगते हैं, लगता है कि आपको जिस तकनीक की ज़रूरत है वह है और एक अच्छी नौकरी की पृष्ठभूमि है, लेकिन दो महीने के काम के बाद, आपको पता चलता है कि वे काम करने में सक्षम नहीं हैं एक टीम, कुछ कोड लिखने से उन्हें बहुत लंबा समय लगता है, और इसके अलावा, परिणाम उतना अच्छा नहीं है जितना होना चाहिए।

तो, क्या आप किसी भी औपचारिक परीक्षण का उपयोग करते हैं (क्या कोई है?) आप एक अच्छे प्रोग्रामर - और एक अच्छे व्यक्ति को कैसे पहचान सकते हैं? क्या कोई सरल 'अच्छे' प्रश्न हैं जो भविष्य की समस्याओं को प्रकट कर सकते हैं? ... या यह सिर्फ उस व्यक्ति (यानी, मुख्य रूप से आपके अनुभव) के बारे में आपकी 'भावना' के बारे में है, और उसे बाहर करने की कोशिश कर रहा है?

संपादित करें: मनोज के उत्तर के अनुसार, यहां नौकरी के साक्षात्कार में कोडिंग कार्य से संबंधित प्रश्न है।


3
<मजाक> एक अच्छे प्रोग्रामर को पहचानने के लिए, मैं हमेशा एक यार्ड स्टिक के रूप में प्रोग्रामर ड्रेस कोड का उपयोग करता हूं । ;-) </ मजाक>
गैल्वेन

7
मैं लगभग 6 ', 185 पाउंड।, मुंडा हुआ सिर और एक बकरा हूं। मैं चक तायलोर्स और एक सफेद थर्मल पर एक नीली टी-शर्ट पहन रहा हूं। कृपया मुझे धीरे से वोट दें - मैंने सवाल का जवाब दिया। :)
मुसिएनेसिस

6
संबंधित या डुप्लिकेट: programmers.stackexchange.com/questions/4614/…
Maniero

1
यहाँ विषय का एक और दृश्य है - एक प्रोग्रामर का साक्षात्कार कैसे करें

2
2008 में पूछे जाने पर यह सवाल इस साइट के लिए अच्छा था। पांच साल। बाद में पांच साल बाद, प्रोग। एसई डुप्लिकेट में SO2 में बदल गया।
वॉरेन पी

जवाबों:


157

उन्हें उस चीज़ के बारे में बात करने के लिए प्राप्त करें जिसमें वे रुचि रखते हैं। मुझे अभी भी एक डेवलपर से मिलना है जो प्रोग्रामिंग के बारे में बात करते समय वास्तव में भावुक है, लेकिन वास्तव में कोड नहीं कर सकता है। वे अच्छी तरह से मौजूद हो सकते हैं, निश्चित रूप से - और आपके साक्षात्कार में योग्यता के लिए भी जांच होनी चाहिए - लेकिन जुनून मेरे अनुभव में एक अच्छा संकेतक है। (ध्यान दें कि यह buzzwords के संदर्भ में "बात करने में सक्षम" होने के समान नहीं है।)

उनसे पूछें कि उन्हें अपनी पसंदीदा भाषा या मंच के बारे में क्या पसंद नहीं है। वे चीजों को कैसे ठीक करेंगे? वे अगले संस्करण में क्या देखना चाहेंगे? क्या उनके पास शौक परियोजनाएं हैं? अगर उन्हें कोई ब्लॉग मिला है, तो उसे पढ़ें। उनकी सामान्य ऑनलाइन उपस्थिति की जाँच करें।


3
महान विचार - विशेष रूप से शौक परियोजनाओं और उनकी पसंदीदा भाषा के साथ समस्याएं मुझे वास्तव में अच्छी लगती हैं। यह प्रोग्रामिंग के बारे में उनके संबंध के बारे में अधिक बताएगा। एक ब्लॉग भी एक अच्छा विचार है। दुर्भाग्य से, आमतौर पर उनके पास कोई ब्लॉग नहीं है :-( धन्यवाद। ...

25
जुनून जरूरी नहीं कि व्यावसायिकता या टीम वर्क में तब्दील हो। वे सिर्फ यह जानना चाहते हैं कि क्या अच्छा है, क्या कोडिंग की जरूरत है।

22
@Preston: हालांकि यह निश्चित रूप से सच है, मैं किसी भी भावुक व्यक्ति से नहीं मिला हूं जो ग्रन्टवर्क से भी खुश नहीं है। मैंने प्राइमा डोना कोडर्स से मुलाकात की है जो सोचते हैं कि वे उस तरह की चीज से ऊपर हैं, लेकिन वे आम तौर पर भावुक नहीं होते हैं। व्यावसायिकता के लिए परीक्षण करना वैसे भी बहुत कठिन है ...
जॉन स्कीट

36
चेक उनके

83

अच्छे लोगों को किराए पर लेना कठिन है

इस पर कुछ बेहतर करने के लिए इसने कुछ वास्तविक गलतियां की हैं। आप अपने आंत्र पथ पर भरोसा करना शुरू कर देते हैं जब आप पहले दो बार भरोसा करते हैं और उस पर पछतावा नहीं करते हैं।

मेरे पास स्टीव येजे के फोन स्क्रीन प्रश्नों के लिए बहुत सम्मान है और इसका उपयोग कुछ सफलता के साथ लोगों के साक्षात्कार के लिए आधार के रूप में किया है।
मुझे यह भी लगता है कि मैं जोएल के मार्गदर्शक को गुरिल्ला साक्षात्कार (अब संस्करण 3.0 पर, जो कि वेब और सब कुछ के लिए संस्करण से आगे है, यह सिर्फ अच्छा होना है) को पढ़ने के बाद लोगों का साक्षात्कार करना बेहतर हो गया ।

वहाँ भी पर (20/11/2008) के रूप में 57 अन्य सवाल कर रहे हैं सॉफ्टवेयर इंजीनियरिंग Stackexchange साक्षात्कार के साथ टैग और कुछ उनमें से बहुत ही प्रासंगिक हैं, इसलिए उन पर गौर करें।


2
अच्छे लोगों को किराए पर लेना एनपी-कठिन है। :)
अंतिम कारण

7
फोन स्क्रीन प्रश्न सामान अच्छा शुरू होता है, लेकिन फिर अधिक से अधिक प्रश्न हास्यास्पद हो जाते हैं। मुझे नहीं लगता कि एक अच्छे प्रोग्रामर को 2^16दिल से जानना चाहिए । और सबसे निचले हिस्से में फास्ट ट्रैक संस्करण सिर्फ घटिया पैरोडी है।
पीटर

एसओ लिंक टूटे हुए लगते हैं (कोई परिणाम नहीं या 404)।
स्टिजेन ज्यूकेन्स

@StijnGeukens, लगता है कि टैग सॉफ्टवेयर इंजीनियरिंग में स्थानांतरित कर दिया गया है। मैंने लिंक अपडेट कर दिया है।
हमीश स्मिथ

47

कुछ विचार:

  • कई अलग-अलग कोणों से कई खुले प्रश्न पूछें:

    • कुछ कोड की समीक्षा करें। क्या है पहचान? तकनीकी त्रुटियों, शैली विसंगतियों, टिप्पणियों, एल्गोरिदम, रखरखाव, आदि ...
    • कुछ कोड लिखें। प्रक्रिया, बुलेट-प्रूफिंग, पठनीयता, आदि की तलाश करें।
    • एक छोटे सिस्टम के लिए एक उच्च-स्तरीय डिज़ाइन बनाएं। समस्या, दृष्टिकोण, संचार, पूर्णता, विस्तार की समझ के लिए देखें।
    • सॉफ्टवेयर विकास प्रक्रिया का वर्णन करें। डिजाइन, सहयोग, समीक्षा, परीक्षण, अच्छी / बुरी आदतों और समग्र अनुभव के लिए देखें।
  • कुछ भी चुनें - उम्मीदवार अच्छी तरह से जानने का दावा करता है। एक साधारण प्रश्न पूछें और फिर, उत्तर के आधार पर, दूसरे से पूछें, थोड़ा और विस्तृत, और "खुदाई" जारी रखें, जब तक आप उम्मीदवार के ज्ञान की सीमा तक नहीं पहुंच जाते। इससे आपको पता चलता है:

    • ईमानदारी: क्या वह उतना ही जानता है जितना कि दावा किया गया है?
    • ज्ञान की गहराई: कितनी अच्छी तरह से वह चीजों को सीखता है?
    • संचार: कितनी अच्छी तरह से वह आपको अपरिचित कुछ समझाता है? क्या विचार प्रक्रिया तार्किक है?
    • तनावपूर्ण स्थितियों के लिए प्रतिक्रिया: जवाब देने के लिए वह कितनी मेहनत करता है? क्या वह नकली है? क्या अपरिहार्य "मुझे नहीं पता" आसान या मुश्किल है?
  • पूछें कि उम्मीदवार पिछली स्थितियों में विभिन्न नौकरियों से कैसे निपटे: टीमवर्क, अतिदेय परियोजनाएं, डिबगिंग, आदि । क्या उत्तर सकारात्मक या नकारात्मक हैं? उत्साही के? बुद्धिमान? अभिमानी?

मुझे सबसे अच्छे उम्मीदवार उत्साही, अनुभवी, आत्मविश्वास से भरे लेकिन विनम्र और सबसे महत्वपूर्ण, वर्तमान में मिलते हैं । आपको पता होना चाहिए कि कोई व्यक्ति अंदर है। :-)


4
मुझे याद है कि मेरा पहला प्रोग्रामिंग साक्षात्कार मुझे कुछ मुद्रित कोड की समीक्षा करने के लिए कहा गया था। शीर्ष पर कुछ टिप्पणियां थीं जो बताती थीं कि कोड ने क्या किया। मैंने इसे कोड पढ़कर सत्यापित किया फिर मैंने मूल रूप से टिप्पणियों को शब्दशः पढ़ा और उन्होंने कहा "बहुत अच्छा!" मैंने कहा, "हाँ, यह बहुत कुछ कहता है कि यहीं टिप्पणी ब्लॉक में करें।" वे बहुत शर्मिंदा थे।
डस्टिन

@ डस्टिन IMO अपने कोड में उन टिप्पणियों को छोड़ने के लिए उनकी ओर से बहुत लापरवाह (?) था, जिन्हें उम्मीदवार समीक्षा करना चाहते हैं। यह मूल रूप से उन्हें एक मुफ्त उत्तर या भ्रम देता है, जो इस टिप्पणी के आधार पर होता है।
cst1992

39

एक अच्छे प्रोग्रामर को पहचानने के लिए, आपको एक अच्छा प्रोग्रामर बनना होगा । इसका मतलब है कि आपको इंटरव्यू में बताई और की गई सामग्री के माध्यम से देखने के लिए प्रोग्रामिंग को अच्छी तरह से जानना होगा, और आपको यह जानना होगा कि क्या प्रश्न पूछना है।

मैंने उम्मीदवारों को साक्षात्कार में गलत उत्तर दिए हुए देखा है, लेकिन उनके स्पष्टीकरण से पता चला है कि वे विषय को जानते थे (और इसलिए आसानी से नेट खोजकर सही उत्तर प्राप्त कर सकते हैं)। यह देखने के लिए, आपको उस विषय को जानना होगा जिसे आप बहुत अच्छी तरह से पूछ रहे हैं।

एक और बात यह है कि विवरणों के बारे में सवालों से बचना चाहिए जो आसानी से गुगली कर सकते हैं। उन सवालों से ही पता चलता है कि उम्मीदवार को चीजों को याद रखना कितना अच्छा है, न कि अगर उसे वास्तव में वह ज्ञान और समझ है जिसकी आपको तलाश है।

मेरी सिफारिश किसी ऐसे व्यक्ति की मदद लेना है जो प्रोग्रामिंग का एक बड़ा हिस्सा जानता है, और अच्छे लोग कौशल रखते हैं, ताकि साक्षात्कार में मदद मिल सके।

संपादित करें: मैंने यहां साक्षात्कार के बारे में एक टिप्पणी भी लिखी है


3
गुग्लिंग के बारे में आप पूरी तरह से सही हैं - एक अच्छे प्रोग्रामर को सबकुछ जानने की ज़रूरत नहीं है, लेकिन उसे जल्दी पता लगाने में सक्षम होना चाहिए।

2
"कोई है जो प्रोग्रामिंग का एक बड़ा सौदा जानता है, और अच्छे लोगों के पास कौशल है" ... और यह समस्या है - इसे ढूंढना आसान नहीं है। आमतौर पर उनके पास इनमें से केवल एक कौशल होता है। इसलिए मैं दोनों शाखाओं को सुधारने की पूरी कोशिश कर रहा हूं :-)।

7
महान लोगों के कौशल होने से आम तौर पर एक अमूर्त विचारक होने के साथ संघर्ष होता है। अमूर्त विचारक नहीं होना आमतौर पर एक अच्छा प्रोग्रामर होने के साथ संघर्ष करता है।
तोमलक

7
Gius: यदि आप भाग्यशाली हैं, तो आपको ऐसे प्रोग्रामर मिलते हैं जो समझते हैं कि मनुष्य जैविक कंप्यूटर हैं, और इसलिए हम कैसे काम करते हैं / सोचते हैं, उसमें रुचि रखते हैं। उन लोगों ने अक्सर अच्छे लोगों के कौशल भी विकसित किए हैं, क्योंकि वे उस क्षेत्र में खुद को बेहतर बनाने में रुचि रखते हैं।

Eigir: मैं सहमत हूँ। लेकिन जैसा कि यहां किसी ने पहले ही उल्लेख किया है - यदि आप किसी को ढूंढते हैं, तो आप जैकपॉट मारते हैं; ;-) मुझे उम्मीद है कि हम भाग्यशाली होंगे।

23

याद रखें कि प्रोग्रामिंग क्षमता सब कुछ नहीं है। आपके लिए काम करने वाले दुनिया में सबसे अच्छा प्रोग्रामर हो सकता है, लेकिन अगर वे अन्य लोगों के साथ काम करने से नफरत करते हैं तो आप उन्हें बहुत उपयोगी नहीं पाएंगे।

एक प्रोग्रामर का व्यक्तित्व सूची में उच्च होना चाहिए, क्योंकि अधिकांश नियोक्ता इसे रैंक करना चाहते हैं। मेरे वर्तमान कार्यस्थल में वे सही प्रकार के व्यक्ति को काम पर रखने के बारे में बहुत सावधान हैं।

लोग आमतौर पर बेहतर प्रोग्रामर बनना सीख सकते हैं, लोग आमतौर पर बेहतर इंसान बनना नहीं सीख सकते।


1
यदि वे अन्य लोगों के साथ काम करने का तिरस्कार करते हैं, तो आप उन्हें "दुनिया का सबसे अच्छा प्रोग्रामर" कैसे कह सकते हैं? प्रोग्रामिंग निश्चित रूप से केवल कंपाइलर से बात करने और कोड को चैंकाने के बारे में नहीं है, प्रोग्रामर / सॉफ्टवेयर डेवलपर के अधिकांश कार्यों के लिए एक निश्चित राशि के सहयोग की आवश्यकता होती है।
क्रिस्टोफर Creutzig

मैं आपकी बात देख रहा हूं, लेकिन इस संदर्भ में "प्रोग्रामिंग" कोडिंग के बारे में है अन्यथा मैंने "सॉफ़्टवेयर डेवलपर" शब्द का उपयोग किया है। "प्रोग्रामर" और "सॉफ़्टवेयर डेवलपर" शब्द समानार्थक नहीं हैं।
डॉक्टर जोन्स

6
नहीं, वास्तव में, बहुत से लोग बेहतर प्रोग्रामर बनना नहीं सीख सकते। और सच कहूँ, अगर उनके पास 5-10 साल का अनुभव है, तो मैं उनसे उम्मीद करूंगा कि वे पहले से ही जानते हैं कि आप कैसे जानते हैं, अपना काम करें । यह सवाल का जवाब नहीं है; आप सिर्फ यह कह रहे हैं कि "आप अच्छे प्रोग्रामर की पहचान करें न कि वे अच्छे प्रोग्रामर हैं या नहीं"
बेनुबर्ड

1
@ बेनुबर्ड मेरी बात यह थी कि पारस्परिक कौशल अधिक महत्वपूर्ण हो सकता है कि कच्ची प्रोग्रामिंग प्रतिभा, खासकर जब यह एक टीम में काम करने की बात आती है। मैं ऐसे लोगों को काम पर रखने की वकालत नहीं कर रहा हूँ जो अपना काम नहीं कर सकते। यह "रॉकस्टार" प्रोग्रामर को काम पर रखने के लायक नहीं है यदि वे आपकी टीम में अच्छा काम नहीं करने जा रहे हैं। यह घर्षण और परेशानी के लायक नहीं है।
डॉक्टर

@DoctorJones और मैं आपसे सहमत हूँ; तुम बिल्कुल गलत नहीं हो। यह सिर्फ इतना है कि आपने जो उत्तर दिया है, वह प्रश्न का उत्तर नहीं है "एक अच्छे प्रोग्रामर को कैसे पहचाना जाए?"
बेनुबर्ड

16

उन्हें कोड बनाओ। एक समस्या दें जिसे 4 या 5 घंटे में हल किया जा सकता है और कोडिंग का दस्तावेज़ीकरण, कोडिंग की शैली, कैसे उसने वास्तव में कोड शुरू करने से पहले समाधान की योजना बनाई है आदि का निरीक्षण किया। उसे समस्या को हल करने की आवश्यकता नहीं है। और जैसा कि जॉन स्कीट ने उल्लेख किया है, उन्हें प्रोग्रामिंग, उनकी पसंद की भाषा और उस तरह की चीजों के बारे में बात करें। आप एक अच्छे प्रोग्रामर में जुनून को पुन: प्राप्त कर सकते हैं। पूछें कि वे कितने प्रोग्रामिंग से संबंधित साइटों का अनुसरण करते हैं- जैसे स्टैकओवरफ्लो। वे जिन ब्लॉगों का अनुसरण करते हैं, वे एक अच्छे संकेतक हो सकते हैं।


मुझे वास्तव में उन्हें एक कोडिंग कार्य देने का विचार पसंद है (साक्षात्कार से पहले किया जा सकता है) और फिर साक्षात्कार में एक विषय के रूप में कोड का उपयोग करें। उन्हें समझाएं कि वे अलग-अलग समाधान और इतने पर क्यों चुनते हैं ...

आमतौर पर, कोडिंग कार्य के बारे में विचार बहुत अच्छा है। लेकिन मुझे डर है कि एक ऐसा कार्य बनाना जो वास्तव में दिखाएगा कि उनमें क्या बहुत कठिन है - और एक और सुंदर लंबे (लेकिन बहुत inetersting!) चर्चा के लिए एक अच्छा विषय। ... क्या हमें यहां इसके बारे में एक प्रश्न पूछना चाहिए? ;-)

उनके पसंदीदा ब्लॉगों की सूची एक महान संकेतक होगी!

6
मेरा एक कोडिंग साक्षात्कार है। साक्षात्कारकर्ता ने जोर देकर कहा कि मैं उसके साथ अपने समाधान के माध्यम से बात करता हूं। मैं एक विचार रखूंगा, वह उन तरीकों का सुझाव देगा जिसमें यह विफल हो सकता है। इस तरह, उन्होंने सीखा कि मैं एक समस्या के माध्यम से कैसे काम करता हूं। यह सबसे कठिन और सबसे अच्छा साक्षात्कार था जो मैंने कभी किया है।

@gius - मुझे लगता है कि आपको यह सवाल पूछना चाहिए।
मनोज

16

मुझे जुनून का जवाब पसंद है। मेरा मानना ​​है कि आपको इस बात के लिए भावुक होना होगा कि आप वास्तव में इसके साथ क्या काम करते हैं।

काम के अलावा तरफ एक अच्छा प्रोग्रामर कार्यक्रम (एक बार कम से कम एक बार)। वह प्रोग्रामिंग समस्याओं को हल करना पसंद करता है। और जब वह घर पर एक विशेष ज़रूरत को हल करता है, तो वह आमतौर पर खुद को हल करने की कोशिश करेगा एक कार्यक्रम नहीं मिल सकता है।

लेकिन कई प्रकार के प्रोग्रामर हैं।

  • आपके पास डॉक्यूमेंटिंग का शौक है। व्यक्तिगत रूप से मुझे दस्तावेजीकरण से नफरत है। लेकिन जो किया जाता है उसका दस्तावेजीकरण महत्वपूर्ण हो सकता है।
  • आपके पास "हैकर्स" है। जो एक जटिल पहेली को सुलझाने में जहन्नुम हैं जहाँ अगर आप इसके लिए गूगल करेंगे, तो शायद समाधान नहीं मिलेगा। वे "किसी भी" समस्या को हल कर सकते हैं जब तक कि उन्हें वे उपकरण मिलें जिनकी उन्हें आवश्यकता है।
  • आपके पास वे हैं जो खुद को प्रोग्रामर बनने के लिए शिक्षित करते हैं क्योंकि प्रोग्रामिंग के लिए काम पर रखने के लिए बाजार अच्छा था। वे आमतौर पर औसत दर्जे के होते हैं क्योंकि उनमें जुनून की कमी होती है।
  • आपके पास वे हैं जो संवाद करने में शानदार हैं और वे "कुछ भी हल कर सकते हैं" लेकिन एक बार जब वे नौकरी प्राप्त करते हैं तो वे जिस समस्या को हल कर रहे हैं, उसके लिए सहायता प्राप्त करने के लिए बाकी सभी को लटका देते हैं।

यदि आप "हैकर" को ढूंढ सकते हैं, जो बहुत अच्छी तरह से दस्तावेज बनाता है और शानदार संचार कौशल है, तो मेरा मानना ​​है कि आपने जैकपॉट मारा है।

और हाँ, एक अंतिम बात। आप शायद एक प्रोग्रामर नहीं चाहते हैं जिसकी नेता महत्वाकांक्षा है, क्योंकि वह केवल लॉन्च करने के लिए प्रोग्रामिंग का उपयोग करेगा। इसका मतलब है कि आप उस संसाधन को जल्द या बाद में ढीला कर देंगे।

एक सवाल जो मैं पूछता हूँ जब एक प्रोग्रामर को काम पर रखा जाएगा: "आपने खुद को एक प्रोग्रामर के रूप में शिक्षित क्यों किया?"। अगर वे वहां हिचकिचाते हैं तो यह एक मृत जीव होगा।

ऐसी मेरी राय है।


2
प्रेरक प्रश्न - "आपने खुद को एक प्रोग्रामर के रूप में शिक्षित क्यों किया?"

5
हम जल्दी या बाद में सभी संसाधनों को खो देते हैं । केवल चट्टानें हमेशा के लिए हैं।
कार्ल मैनस्टर

1
थोडा कम नजर आया। "श्लुब्लाडेनकेन"

6
मैं इसे वोट देता अगर यह "आप शायद एक प्रोग्रामर नहीं चाहते जो नेता की महत्वाकांक्षा हो"। कर्मचारी जो जिम्मेदारियां लेना चाहते हैं वे महत्वपूर्ण हैं और आपको अपने संगठन में उन्हें आगे बढ़ाने के तरीके खोजने चाहिए।
डैनी व्रोड

5
आपके पास एक "हैकर" के लिए मेरे द्वारा की जाने वाली परिभाषा है। मेरे लिए एक "हैकर" कोई है जो चीजों को "हैक" करता है, जब तक कि वे परिणाम प्राप्त नहीं करते हैं, जब तक कि उन्हें एक परिणाम (प्रकार) नहीं मिल जाता है, लेकिन वे विनाश और आतंक के निशान को पीछे छोड़ चुके हैं क्योंकि उन्होंने एक भी सर्वोत्तम अभ्यास का पालन नहीं किया है। एक "हैकर" अनप्रोफेशनल है।
डेविड मास्टर्स

7

मेरा एक दोस्त एक कंपनी में काम कर रहा है, जहां उनके पास भर्ती प्रक्रिया में एक अतिरिक्त कदम है: प्रारंभिक स्क्रीनिंग और साक्षात्कार के बाद, एक आवेदक को कुछ दिनों के लिए "परीक्षण कार्य" करना पड़ता है। उसने मुझसे कहा, भले ही एक उम्मीदवार हर कौशल और प्रतिभा की जरूरत थी कि, वे उसे किराया नहीं था क्योंकि वह एक एक नहीं एक अच्छे इंसान के साथ काम करने के लिए।


यह एक महान विचार है, और मैं इसे मानक अभ्यास के रूप में देखना चाहूंगा। जैसा कि कंपनी की संस्कृति को फिट नहीं करने, या कौशल के स्तर की गलत व्याख्या के लिए कई नौकरियों से निकाल दिया गया है, मैं पहले पानी का परीक्षण करना पसंद करूंगा।
डैरनवे सेप

20
इसके साथ समस्या यह है, अगर किसी के पास पहले से ही एक नौकरी है, तो उन्हें दूसरी कंपनी के लिए काम करने में मुश्किल से एक सप्ताह का समय लग सकता है।
Cercerilla

@Cererilla सही! यह कठिन है कि साक्षात्कार के लिए भी समय निकालें अकेले एक सप्ताह के लिए उनके लिए काम करने का अभ्यास रन करें।
ईगलीन 22

6

अकेले जॉब-इंटरव्यू के आधार पर प्रोग्रामर को पहचानना बहुत मुश्किल है।

कुछ चीजें जो तय करती हैं कि कोई अच्छा प्रोग्रामर है:

  • एक टीम में काम करने में सक्षम
  • अच्छा कोड लिखता है जो समझने योग्य और मुख्य है
  • नई तकनीकों के बारे में जानने में सक्षम है

तो आपके पास कुछ छोटे संकेत हैं जिनके बारे में आप एक साक्षात्कार में जान सकते हैं:

  • क्या उम्मीदवार एक तकनीक / प्रोग्रामिंग भाषा जानता है या वह कई जानता है? यदि वह विभिन्न भाषाओं को जानता है तो वह नई चीजों को सीखने में सक्षम हो जाता है और संभवतः वह अपनी वर्तमान पसंदीदा प्रौद्योगिकी / भाषा पर डाउनसाइड के बारे में जानता है। इसलिए अपनी कंपनी में आपके द्वारा उपयोग की जाने वाली तकनीक के अलावा ज्ञान के लिए पूछें।
  • उन परियोजनाओं के लिए पूछें, जिनमें उन्होंने पहले से ही काम किया है, विशेष रूप से शौक-परियोजनाओं और ओपन-सोर्स। हॉबी प्रोजेक्ट आपको दिखाते हैं, कि वह प्रोग्रामिंग पसंद करता है और इसे खाली समय में भी करता है (और इस तरह से उसके कौशल में सुधार होता है)। एक ओपन-सोर्स प्रोजेक्ट में आप ऊपर लिखे कोड को देख सकते हैं। यदि परियोजना में एक से अधिक व्यक्ति शामिल हैं, तो आपको उनकी टीम-कौशल के बारे में संकेत मिल सकते हैं। OS-प्रोजेक्ट में आप अधिक जानने के लिए मेलिंग-सूची-अभिलेखागार देख सकते हैं।

3

आप साक्षात्कार में कुछ परीक्षण कर सकते हैं।

लेकिन कई बार काम के माहौल के साथ खुद भी एक समस्या होती है। निश्चित रूप से आपके संगठन में ऐसा नहीं हो सकता है, लेकिन सॉफ्टवेयर उद्योग के क्षेत्र में यह बहुत आम है कि तकनीकी ऋण बहुत बड़ा हो जाता है। फिर जब आप नए लोगों को नियुक्त करते हैं, तो यह बहुत मदद नहीं करता है अगर वे कर्ज के कारण अच्छे हैं या नहीं। अपने प्रोग्राम कोड की पठनीयता और समझ को अधिकतम करने से नए लोगों को काम में आने में मदद मिलती है।

साथ ही बहुत से लोग ऐसे हैं जो सह-संचालन कर सकते हैं, लेकिन कभी-कभी सह-संचालन का कोई तरीका नहीं होता है। उदाहरण के लिए यदि सभी लोग डेवलपर हैं, तो उन्हें अपना काम करना चाहिए। खैर, वे करते हैं। लेकिन क्या आपके पास एक वास्तुकार है, जो विकास परियोजना को आगे बढ़ाता है और बैठकें करता रहता है और ऐसे? सामान्य डेवलपर्स को लग सकता है कि उनके पास बैठकें शुरू करने के लिए आवश्यक आदेश नहीं हैं और वे सोच सकते हैं कि अब दूसरों को बाधित करना और फिर रास्ता नहीं है।

एक दूसरे के साथ संवाद करना अंतिम लक्ष्य नहीं होना चाहिए। कम संचार की आवश्यकता है, बेहतर है, लेकिन केवल अगर कम संभव है। यदि आपके पास एक वास्तुकार है तो कम संभव हो जाता है। संचार की कुल मात्रा अच्छे स्तर पर रह सकती है, लेकिन संचार की समान मात्रा के लिए आपको अधिक परिणाम मिलते हैं।


मुझे न केवल कर्मचारी बल्कि अपने संगठन और अंदर की प्रक्रियाओं को देखना पसंद है।

3

पहले मैं सामान्य साक्षात्कार सामग्री के साथ शुरू करता हूं, मैं यह देखना बहुत महत्वपूर्ण मानता हूं कि क्या मेरे सामने वाला व्यक्ति किसी चीज के लायक है, और अपने कौशल और ज्ञान का निर्धारण करने के लिए।

उसके बाद मैं जावा के क्षेत्र में कुछ टेकनीक का उपयोग करता हूं, जैसे कि कुछ सिद्धांतों पर चर्चा करना, मुख्य रूप से प्रभावी जावा से लिया गया।

इस स्तर पर, जब मुझे लगता है कि मेरे सामने कोई अच्छा प्रोग्रामर हो सकता है, तो मैं उसे कोड-रिव्यू करने के लिए उसे एक कोड देता हूं। जो मैं देखना चाहता हूं वह यह है कि वह कोड के खतरनाक हिस्सों को इंगित कर सकता है, सुधार पर कुछ संकेत दे सकता है, प्रदर्शन पर एक बहु सूत्रण के नुकसान को पा सकता है और वह महत्वपूर्ण टिप्पणियों और "स्वाद-टिप्पणियों" के बीच अंतर कर सकता है। यह सब मुझे एक अधिक कुशल कर्मचारी खोजने में मदद करता है।

लेकिन अंत में मुझे हमेशा याद आता है कि काम पर रखना एक तरह का जुआ है ... प्रत्याशा के लिए बहुत कठिन ...


2

मुझे पता है कि यह जवाब नहीं है कि आप क्या पूछ रहे हैं, लेकिन मैं सलाह देता हूं, कानून की अनुमति, हमेशा पहले (दो सप्ताह या एक महीने, नौकरी के आधार पर) अस्थायी आधार पर किराया करते हैं। यदि व्यक्ति अपने नमक के लायक है, तो वह आपत्ति नहीं करेगा, इसके अलावा यह आप दोनों के लिए एक सुरक्षित उपाय है (आप उसे जाने दे सकते हैं और वह शायद नौकरी छोड़ना और छोड़ना पसंद न करे)।


1
आप पूरी तरह से सही हैं, लेकिन अगर वह आपके लिए अच्छा नहीं है, तो आप अभी भी एक या दो पतंगे, उसकी तनख्वाह, और लोगों के काम उसे आपके प्रोजेक्ट में खो देते हैं। इसलिए इस स्थिति से बचना अच्छा होगा।

3
समस्या यह है कि अच्छे प्रोग्रामर के पास शायद अन्य नौकरी के प्रस्ताव हैं और यदि आप उन्हें शुरुआत में एक अस्थायी नौकरी की पेशकश करते हैं, तो वे किसी और को चुन सकते हैं ...

@Rexxar: अगर वे इसे पसंद नहीं करते हैं तो भी वे छोड़ देंगे। यह इस तरह की पेशकश करने के लिए सिर्फ अधिक ईमानदार और अग्रिम है, आईएमओ। कम से कम मेरे लिए यह एक प्लस होगा, माइनस नहीं (यह एक छोटा अस्थायी अनुबंध है और इसके अंत में यह या तो स्थायी हो जाता है या यह एक अलविदा है)।
विंकियो व्रसालोविक

3
मुझे अपने बिलों का भुगतान करने की आवश्यकता है, मैं उल्लू को केवल एक नौकरी के लिए नौकरी लेने पर विचार नहीं करता और इसके लिए एक स्थायी नौकरी छोड़ देता हूं। यदि आप बेरोजगार हैं या आपके पास एक समृद्ध जीवनसाथी है तो यह काम कर सकता है। अन्य बुद्धिमान, आप बहुत से अच्छे कैंडिडेट खो देते हैं क्योंकि वे मौका नहीं ले सकते हैं कि आप उन्हें स्थायी बनाने के बारे में झूठ नहीं बोल रहे हैं।
HLGEM

4
"यदि व्यक्ति अपने नमक के लायक है, तो वह आपत्ति नहीं करेगा" - ठीक है, यह डेवलपर यहां "बकवास" कहेंगे और एक बेहतर नौकरी पाएंगे।
gnasher729
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.