मेरे अनुभव से पहले कि आप एक कंपनी के लिए काम करना शुरू करते हैं, आपके पास कोड-बेस को देखने का कोई अवसर नहीं है (मैंने पूछा है और गोपनीयता के कारणों के लिए हर किसी ने हमेशा कहा है कि नहीं, मुझे लगता है कि यह उचित है), इसलिए साक्षात्कार प्रक्रिया के दौरान क्या क्या आपको लगता है कि यह जानने के लिए सबसे महत्वपूर्ण प्रश्न हैं कि कोड किस तरह का है (आखिरकार, अगर यह एक कुत्ता है, तो आप उन गरीब अभागों पर जा रहे हैं जिन्हें हर दिन चलना पड़ता है)?
अद्यतन करें:
एक चेक-लिस्ट: पूछें;
- वे कोडबेस के बारे में क्या सोचते हैं। और जब आप ऐसा करते हैं, तो चेहरे के भावों पर ध्यान दें और उनके जवाब देने में समय लगता है। [Anon]
- कंपनी का सीएमएम स्तर [डीपीडी] क्या है (और यदि आप सुनते हैं कि स्तर 5 दूसरे तरीके से चलता है [डग टी])
- वे किस जीवनचक्र का उपयोग करते हैं [DPD] (और यदि आप "फुर्तीली" सुनते हैं, तो जब आप "Agile" द्वारा यह पता लगाने की कोशिश करने के लिए कुछ मर्मज्ञ प्रश्न पूछना शुरू करते हैं कि उनका अर्थ "Agile" या "चरवाहा कोडिंग" [CarsB63000] है)
- कोड गुणवत्ता के लिए वे किस उपकरण का उपयोग करते हैं? [डीपीडी]
- वे विकास के लिए किन उपकरणों का उपयोग करते हैं? [DPD] (उपकरण और निरंतर निर्माण सर्वरों को फिर से देखने के लिए देखें)
- वे कौन से स्रोत कोड (संस्करण नियंत्रण) प्रणाली का उपयोग करते हैं, और एक अच्छा अनुवर्ती यह पूछना है कि वे इसका उपयोग क्यों करते हैं। [ज़चारी का]।
- उनकी परीक्षण प्रक्रियाएँ क्या हैं? [कार्ल Bielefeldt] (विशेष रूप से उन टीमों के लिए देखें जो मॉकिंग फ़्रेमवर्क का उपयोग करती हैं और NUnit / JUnit जैसे स्थापित फ्रेमवर्क के माध्यम से पूरी तरह से स्वचालित इकाई परीक्षण पर जोर देती हैं; उन टीमों द्वारा बंद नहीं किया जाना चाहिए जो परीक्षण संचालित विकास जेडडी का उपयोग नहीं करते हैं, लेकिन हो; अगर वे परीक्षण को अभिन्न और ठोस सॉफ्टवेयर विकास की आधारशिला नहीं मानते हैं, तो समर्पित परीक्षणकर्ताओं वाली टीमों की तलाश करें।)
- नए डेवलपर्स को किस प्रकार के असाइनमेंट दिए जाते हैं? अनुभवी डेवलपर्स के लिए? [कार्ल बेवफेल्ड]
- एक परियोजना पर कितने लोग काम करते हैं? [कार्ल बेवफेल्ड]
- क्या रीफैक्टरिंग की अनुमति है? प्रोत्साहित? [कार्ल बेवफेल्ड]
- गुणवत्ता-संबंधी प्रक्रिया या वास्तुकला में बदलाव पर विचार चल रहा है या हाल ही में किया गया है? [कार्ल बेवफेल्ड]
- व्यक्तियों को अपने मॉड्यूल पर कितना स्वायत्तता है? [कार्ल बेवफेल्ड]
- क्या आप नए प्रोजेक्ट्स (ग्रीनफील्ड डेवलपमेंट) या लीगेसी प्रोजेक्ट्स (ब्राउनफील्ड डेवलपमेंट) विकसित कर रहे हैं? (ग्रीनफ़ील्ड विकास आम तौर पर अधिक मज़ेदार होता है और इसमें समस्याएं कम होती हैं क्योंकि आप किसी और की गलतियों से साफ नहीं होते हैं)।
- क्या संगठन या टीम में कर्मचारी की टर्नओवर दर अधिक है? (यह अक्सर कोड की निम्न गुणवत्ता को इंगित करता है) [M.Sameer]
- अपनी खुद की कुछ प्रोग्रामिंग समस्याएं; लेकिन एक झटके की तरह लगने से बचें। [स्पार्की]
- डेवलपर्स कैसे सहयोग करते हैं और टीम के बीच ज्ञान कैसे साझा किया जाता है? (यह आपके व्यक्तित्व से मेल खाना चाहिए; मैं कहूंगा कि एकल और जोड़ी के काम का मिश्रण संभवतः सबसे अच्छा है, आपकी सामाजिक आवश्यकताओं के अनुरूप अनुपात के साथ)
- उनका डेटाबेस 3 नॉर्मल फॉर्म (3NF) के कितना करीब है, और अगर यह कहां और क्यों विचलित होता है? (यदि वे कहते हैं "3NF ???", छोड़ दें। यदि नहीं, और इसके अच्छे कारण नहीं हो सकते हैं, तो पता करें कि वे क्या हैं)।
नोट: मैंने एनॉन के उत्तर को स्वीकार कर लिया है क्योंकि लगभग एक सप्ताह के बाद समुदाय को लगता है कि यह सबसे अच्छा है - मुझे लगता है कि यह सुझाव देता है कि यह सिर्फ एक चीज है जिसके लिए आपको किसी तरह से छठी इंद्री विकसित करने की आवश्यकता है। लेकिन, मुझे लगता है कि हर किसी को कहने के लिए कुछ मूल्यवान था।