क्या "केवल बेस्ट हीलिंग" सामान्य डेस्कटॉप एप्लिकेशन प्रोग्रामिंग के लिए वास्तव में व्यावहारिक सलाह है? [बन्द है]


61

पृष्ठभूमि के लिए, हम डेस्कटॉप इंजीनियरिंग एप्लिकेशन कर रहे हैं, यूआई जैसे ऑटोकैड के साथ, एटा के समान ।

एक चीज जो वास्तव में मुझे परेशान करती है, क्या बहुत अच्छे डेवलपर्स को नियुक्त करने की आवश्यकता है? शुरुआत के लिए, हम भर्ती में बड़ी कठिनाइयों का सामना कर रहे हैं; अधिकांश रिज्यूमे जो हम देखते हैं वे या तो साधारण CRUD एप्स, या SharePoint कस्टमाइज़ेशन कर रहे हैं जो मुझे नहीं लगता कि वास्तव में बहुत अधिक हार्डकोर प्रोग्रामिंग शामिल है। यहां तक ​​कि जिन्हें हम साक्षात्कार के लिए बुलाते हैं, अधिकांश फिबोनाची अनुक्रम और एक सरल द्विआधारी खोज नहीं कर सकते हैं, और हम संकेत देने और समस्याओं को स्पष्ट रूप से समझने के लिए पर्याप्त रूप से अनुग्रहित हैं ताकि उम्मीदवारों को जांचने के लिए एक शब्दकोश देखने की जरूरत न पड़े। "फाइबोनैचि अनुक्रम" का क्या अर्थ है।

यह मुझे सोच रहा है: हाँ, हमें कम्प्यूटेशनल ज्यामिति / रैखिक प्रोग्रामिंग सामान को करते समय प्रोग्रामिंग एप्टीट्यूड के कुछ स्तर की आवश्यकता होती है, और सॉफ़्टवेयर आर्किटेक्चर को डिज़ाइन करते समय या उपयोग करने के लिए कौन से सॉफ़्टवेयर पैटर्न का उपयोग करना है, यह तय करते समय हमें एप्टीट्यूड के कुछ स्तर की आवश्यकता होती है, लेकिन इससे परे हमारे कोड के बहुत सारे प्लंबिंग कोड हैं (मुझे लगता है), जो प्रोग्रामिंग के साथ किसी परिचित व्यक्ति द्वारा किया जा सकता है।

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

तुम क्या सोचते हो?

संपादित करें: आपको संपूर्ण कम्प्यूटेशनल ज्यामिति / रैखिक प्रोग्रामिंग लाइब्रेरी को फिर से लिखने की आवश्यकता नहीं है; आपको बस इतना करना है, जहां तक ​​मेरे आवेदन का संबंध है, यह जानने में सक्षम होना है कि कैसे समस्याओं को उचित कम्प्यूटेशनल ज्यामितीय / रैखिक प्रोग्रामिंग शब्दों में डाला जाए और यह पता किया जाए कि मौजूदा पुस्तकालयों का उपयोग कब / कैसे करना है। इसलिए यह उतना मुश्किल नहीं है जितना लगता है।


53
मानक उत्तर: शायद आप बहुत कम वेतन दे रहे हैं और बेहतर देव आपके लिए काम करने में रुचि नहीं रखते हैं? वैसे भी, अगर आपको द्विआधारी खोज करने में असमर्थ लोगों के साथ समस्या है, तो यह सुपरस्टार की कमी के साथ समस्या नहीं है, एक साधारण रन-ऑफ-द-मिल कोडर करने में सक्षम होना चाहिए।
मात्रा_देव

15
आपका शीर्षक पूंजीकरण मुझे इसे पांडा :)
cthom06

13
वे फिबोनाची अनुक्रम नहीं लिख सकते हैं? यह किसी भी तरह से मुश्किल नहीं है ... ये लोग वास्तव में प्रोग्रामर नहीं हो सकते।
बेन बी।

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

7
@ user1525 क्योंकि इसके कुछ तुच्छ, डेवलपर्स को सामान्य रूप से इसे लागू करने में कोई समस्या नहीं होनी चाहिए (पुनरावृत्ति या पुनरावृत्ति नहीं)
Darknight

जवाबों:


110

मेरा सुझाव है कि आप जोएल को पढ़ना बंद कर दें। उन्होंने अपने ब्लॉग में इस साइट पर अपनी प्रतिक्रियाओं के साथ विरोधाभास लिखा है, इसलिए मैं वास्तव में उनके लिए बहुत कुछ नहीं कहूंगा।

एक सुपरस्टार क्या बनाता है और क्यों जरूरी है कि एक को खोलना एक लंबी और कहीं नहीं जाने वाली चर्चा है। यह अभिजात्य है और यह व्यावहारिक नहीं है।

आपको एक व्यक्ति की आवश्यकता है जो:

  1. आप जो कर रहे हैं वह करना पसंद करेंगे
  2. एक उत्साही उत्साही प्रोग्रामर होगा
  3. आपके काम को सही तरीके से करने के लिए सीखने की क्षमता होगी

बाकी कोई महत्व नहीं है।

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

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


अधिकांश रिज्यूमे जो हम देखते हैं, वे या तो साधारण CRUD एप्स, या SharePoint अनुकूलन कर रहे हैं

अगर सबसे ज्यादा नौकरियों की आवश्यकता है तो क्या उम्मीद की जाए? लोगों ने सीएस को यूनी में अध्ययन किया होगा और यहां तक ​​कि वास्तव में यह बहुत अच्छा रहा होगा, लेकिन आप उनसे यह याद रखने की उम्मीद नहीं कर सकते हैं कि अगर उन्होंने 10 वर्षों में व्यावहारिक प्रोग्रामिंग में इसका उपयोग नहीं किया है। जाहिर है कि पुरानी सीएस किताबों को हर साल कोई भी पढ़ता नहीं है, बस इसे ताजा रखने के लिए अगर इस ज्ञान का उपयोग कहीं नहीं किया जाता है।


11
अद्भुत जवाब!

33
हाँ ठीक है, लेकिन मैंने उत्साही उत्साही लोगों के साथ काम किया है, जिन्हें कोई सुराग नहीं मिला है। वे एक मृत वजन हैं, और आप उन्हें अपने संगठन में नहीं चाहते हैं। तो वास्तव में गूंगा schmucks खरपतवार के लिए कुछ बुनियादी योग्यता परीक्षण करने के लिए एक बहुत अच्छी बात है।
जल्दी_अगले

3
अंतिम पैराग्राफ मुझे एक टी के लिए वर्णन करता है।
ओज

20
बहुत सारे "एप्टीट्यूड टेस्ट" देखे जो बिल्कुल बेकार थे, यहाँ तक कि इसमें त्रुटियां भी थीं (और उन्हें इंगित करना कि आपने परीक्षण को विफल कर दिया है, जब त्रुटियों को ढूंढना और इंगित करना डेवलपर्स के रूप में हमारी नौकरी का हिस्सा है ...)।
jwenting

2
@Developer Art, शायद यह आपके लिए भाग्यशाली था? यदि आप उन्हें एक साक्षात्कार प्रश्न की गलती के बारे में नहीं बता सकते हैं, तो कल्पना कीजिए कि आपके काम में क्या परेशानी होगी।
मार्क रैनसम

41

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

एक दूसरा बिंदु जो आपको ध्यान में रखना चाहिए कि जब प्रोजेक्ट थ्रूपुट पर मापा जाता है, तो 5-8 लोगों की टीमों के लिए एक उत्पादकता शिखर होता है। जब तक आपके पास 20 से अधिक लोगों की टीम न हो, तब तक आप उसी उत्पादकता में वापस नहीं आते। बहुत ही सतर्क रहें, एक टीम के आकार के अतीत को बढ़ने के बारे में सतर्क रहें जहां छोटी टीम की गतिशीलता काम करती है। और अगर आप उस सीमा से नीचे रहने जा रहे हैं, तो आप वास्तव में उन 5-8 लोगों को अच्छा करना चाहते हैं।

दोनों बिंदु सही किराए पर रखने के लिए दृढ़ता से बोलते हैं।


2
उस बोली के लिए +1। यह पूरी तरह से प्रतिबिंबित करता है कि मुझे पिछले कुछ वर्षों में क्या एहसास हुआ है।
क्रिश

5-8 चोटी के साथ क्या दिलचस्प है, यह है कि जैसे ही आप 10 लोगों को प्राप्त करते हैं, आप बस विभाजित कर सकते हैं :) बेशक, काम की ज़रूरतों को भी विभाजित किया जाना चाहिए, और अधिमानतः यादृच्छिक रूप से नहीं ...
मैथ्यू एम।

@ मैटियू-एम: बहुत से लोगों के पास यह सिद्धांत है। यदि दो समूहों को वास्तव में भारी बातचीत करने की आवश्यकता है, तो यह काम नहीं करता है। अगर उन्हें सही मायने में अलग चिंता दी जा सकती है, तो यह अच्छी तरह से काम करता है।
btilly

26

हर कोई "केवल शीर्ष 1 प्रतिशत किराया" का दावा करता है। अगर यह सच होता तो 100% नौकरीपेशा लोग सभी लोगों के "टॉप 1 पर्सेंटाइल" में होते, इसलिए सभी 99% लोग बेरोजगार (किसी भी क्षेत्र में) होते। जैसा कि यह स्पष्ट रूप से मामला नहीं है, और हम सभी अनुभवी लोग हैं जो स्पष्ट रूप से उस समूह में नहीं हैं (आप इस सवाल को और क्यों पूछते हैं ...) हम जानते हैं कि यह सच नहीं है।

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


13
यह परेशानी सिर्फ इसलिए है क्योंकि आप केवल 1% उम्मीदवारों को ही नियुक्त करते हैं, जो आपके लिए आवेदन करते हैं इसका मतलब यह नहीं है कि आप शीर्ष 1% डेवलपर्स को काम पर रख रहे हैं। 8 ') जहां तक ​​* सुपरहीरो के जाने का सवाल है, वे अक्सर टीम के बाकी सदस्यों के लिए एक समस्या मानी जाती है। एक व्यक्ति 200% पर काम कर रहा है, लेकिन 5 लोगों को 50% तक कम करना एक शुद्ध लाभ नहीं है।
मार्क बूथ

2
+1: सांख्यिकीय रूप से, अधिकांश लोग माध्य के कुछ प्रतिशत अंकों के भीतर हैं। जो कोई भी सराहना नहीं करता है वह एक सपने की दुनिया में रह रहा है। और आप बिलकुल सही कह रहे हैं: जो लोग इस मतलब से बहुत दूर हैं वे विघटनकारी हैं, चाहे वे क्षमता में औसत से ऊपर या नीचे हों ।
शैतानिकप्‍पी

5
@Satanicpuppy: सांख्यिकीय रूप से, दो-तिहाई लोगों के बारे में एक सामान्य वितरण मतलब से एक मानक विचलन के भीतर है, और 98% की तरह कुछ दो मानक विचलन के भीतर हैं। यह मानक विचलन क्या है, या वास्तव में यदि कोई मनमाना वितरण सामान्य है, तो इसके बारे में कुछ नहीं कहता है। प्रोग्रामर के बीच प्रोग्रामिंग क्षमता निश्चित रूप से तिरछी है, और यहां तक ​​कि एक सामान्य वितरण की सही पूंछ भी हो सकती है।
डेविड थॉर्नले

11
एक मुख्य कारण के बीच प्रोग्रामिंग प्रतिभा प्रोग्रामर विषम हो सकता है और / या अगर में प्रोग्रामिंग प्रतिभा एक सामान्य वितरण के अधिकार पूंछ होगा मनुष्य सामान्य रूप से वितरित किए गए। मानव के उप-नमूना जो प्रोग्रामर बनते हैं, उस वितरण का एक पक्षपाती नमूना है; यही है, जो लोग प्रोग्रामिंग में औसत या बदतर हैं, वे शायद ही कभी प्रोग्रामर बन जाते हैं। यह एक "औसत" प्रोग्रामर बना सकता है जो सामान्य रूप से आबादी के सापेक्ष औसत प्रतिभा से ऊपर है, और यह प्रोग्रामर वितरण प्रतिभा को सामान्य वितरण की सही पूंछ की तरह भी बना सकता है।
माइकल मैकगोवन

2
@ दाविद: "औसत से बहुत नीचे कोई नहीं हो सकता"? काश मैंने काम किया जहाँ आप काम करते।
शैतानिकपुपी 21

25

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

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

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


7
क्योंकि एचआर विभाग सॉफ्टवेयर उम्मीदवारों की स्क्रीनिंग में बहुत अक्षम हैं। आवश्यकताएँ: कॉफी स्क्रिप्ट में 10 साल, प्रोग्रामिंग PHP के 40 साल, शिक्षा: बी एस / बीए
गुप्त

1
@ user1525: यह एचआर अक्षमता बहुत अच्छी तरह से हो सकता है, लेकिन महत्वपूर्ण बिंदु यह पता लगाना है कि इसे क्यों और कैसे ठीक किया जाए (या यह पता लगाएं कि यह सही नहीं है, इसलिए यह स्पष्ट है कि यह जहाज कूदने का समय है)। मैं निष्कर्ष पर नहीं जाऊंगा। आपका जवाब एक और दृष्टिकोण का सुझाव देता है: अच्छे लोगों को फिर से शुरू करें और देखें कि एचआर उनके साथ क्या करता है।
डेविड थॉर्नले

18

"अधिकांश फिबोनाची अनुक्रम और एक साधारण बाइनरी खोज नहीं कर सकते हैं"

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

यह बहुत अधिक महत्व का है, यदि उम्मीदवार स्मार्ट है और समूह में फिट बैठता है। यदि आप उसकी प्रोग्रामिंग प्रतिभा की जांच करना चाहते हैं, तो उसे घर पर काम करने के लिए उसे नौकरी दें। ध्यान दें कि यह उसे कब तक ले गया / गई या नहीं, यह जानने के लिए परिणामों पर चर्चा करें कि क्या यह उम्मीदवारों का वास्तविक काम है।


3
यह उम्मीद नहीं की जा सकती है कि आवेदक को बाइनरी खोज बिल्कुल सही मिले, लेकिन यदि आप आवेदक को कुछ संकेत दे सकते हैं, तो उसे पास होने में सक्षम होना चाहिए। IMO, यह देखना अधिक दिलचस्प है कि लोग उनके सामने प्रस्तुत की गई चुनौतियों को हल करने की कोशिश करते हैं कि उनके लिए उनके सिर में एक विश्वकोश है।
dpk

11
मैं प्रशिक्षण से एक भौतिक विज्ञानी हूं और मैं बाइनरी खोज आंखों पर पट्टी बांध कर कर सकता हूं और एक हाथ मेरी पीठ के पीछे बंधा हुआ है। क्षमा करें, लेकिन यह जानना नहीं है कि एक सरल द्विआधारी खोज कार्यान्वयन कैसे लिखा जाता है ... गरीब। इसका वर्णन करने के लिए कोई और शब्द नहीं, बस गरीब।
मात्रा_देव

हाँ आप सही है। बाइनरी खोज, कम से कम मूल विचार, वास्तव में किया जा सकता है। मैं भी कर सकता हूं।
माइकल

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

2
उनके सिर के ऊपर से फाइबोनैचि अनुक्रम की परिभाषा नहीं जानना चिंताजनक नहीं है। लेकिन, यह समझाए जाने के बाद इसे गणना करने के लिए एक कार्यक्रम लिखने में असमर्थ होने के कारण यह चिंताजनक है (भले ही आप सभी उन्हें करने की उम्मीद करते हैं एक सरल CRUD ऐप में सबटोटल्स की गणना करें!)।
स्टीफन सी। स्टील

13

मुझे लगता है कि "सबसे अच्छा काम पर रखने" एक पंथ का बहुत अधिक हो रहा है।

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

अधिकांश आधुनिक प्रणालियों को भी लिखने के लिए इतने सारे लोगों की आवश्यकता होती है, कि स्वाभाविक रूप से, वे सभी सर्वश्रेष्ठ नहीं हो सकते। अधिकांश लोग औसत हैं, भले ही वे नहीं हैं, फिर भी उन्हें बहुत सारे "औसत" व्यक्ति के कार्यों को करना होगा।

कहा जा रहा है, बुनियादी योग्यता और न्यूनतम समझदार आवश्यकताओं की मांग करना अनुचित नहीं है और न ही ऐसा कुछ है जिस पर आपको समझौता करना चाहिए।

रूटीन सर्जरी के बारे में सोचें: आपकी जोखिम सहिष्णुता के आधार पर, आप शायद एक औसत चिकित्सक को प्रदर्शन करना पसंद करेंगे बजाय इसके कि मेडिकल स्कूल के डीन के लिए 10 साल इंतजार करने के बजाय इसे करने का समय हो। इसका मतलब यह नहीं है कि आपको शल्य क्रिया करने की आज्ञा देना चाहिए।


वक्रोक्ति करने के लिए नहीं ... लेकिन "औसत" डॉक्टर, जिसने सैकड़ों या हजारों प्रकार की सर्जरी की है, वह मेडिकल स्कूल के डीन के लिए बेहतर हो सकता है, जिसे अधिक ज्ञान हो सकता है, लेकिन लगभग अनुभव नहीं है
जोएलफैन

8

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

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

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


1
उह, यहां तक ​​कि शब्द "रॉकस्टार प्रोग्रामर" मुझे पुक करना चाहता है।
ozz

6

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

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

इसके अलावा, अधिक "लंबी अवधि" - एक आंतरिक कार्यक्रम में भारी निवेश करें। यदि आपकी प्रोग्रामिंग टीम 20 लोग हैं, तो एक वर्ष में 5 इंटर्न प्राप्त करें और उन्हें वास्तविक काम दें। प्रत्येक वर्ष की तरह एक या दो वापस लाएं और 5 और यादृच्छिक चर लाएं। यह शायद आपकी टीम को अच्छे प्रोग्रामर से भरे रखने का सबसे अच्छा तरीका है। फिर आप अवसरवादी रूप से बाहर किराए पर ले सकते हैं, और उन उम्मीदवारों के लिए बार बढ़ा सकते हैं।

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


6

मेरे अनुभव में पारेतो सिद्धांत प्रोग्रामिंग पर भी लागू होता है: 80% काम 20% डेवलपर्स द्वारा पूरा किया जाता है और इसके विपरीत। ठीक है संख्या अतिरंजित हो सकती है। वास्तव में आपके पास 50% काम करने वाले कर्मचारियों का 20% (काम से मेरा मतलब अच्छे काम से होगा, न कि केवल कोड की पंक्तियों से)। यह वास्तव में घंटी की तरह अधिक है। तो 10 की टीम में, आपके पास 1 नायक, 2 महान लोग, 4 औसत और 2-3 दयनीय लोग होंगे।

बहुत सी कंपनियाँ बेल वक्र का उपयोग मूल्यांकन करने के लिए करती हैं। बहुत ज्यादा कोई फर्क नहीं पड़ता कि आपके उम्मीदवार कितने उज्ज्वल हैं, वे अपने स्तरों में गिर जाएंगे। आपके पास एक टीम नहीं हो सकती है जहाँ हर कोई समान स्तर पर हो। नहीं होता है


2
+1, मैं सहमत हूं। लेकिन मुझे लगता है कि सवाल यह है: क्या आपको "दयनीय लोगों" (जैसे टीम मनोबल या जो भी हो) की आवश्यकता है या क्या टीम उनके बिना अच्छा करेगी? और क्या आप उन्हें नौकरी के लिए साक्षात्कार में पहचान सकते हैं?
निक्की

10
दयनीय परिभाषित करें। यदि वे अच्छे प्लोडर्स हैं जो बोरिंग ग्रंट काम करते हैं, लेकिन छलांग नहीं लगा सकते हैं, तो आप अभी भी उन्हें। लेकिन अगर वे सिर्फ निराशाजनक हैं और कुछ भी नहीं कर सकते हैं, तो वे अंतरिक्ष की बर्बादी हैं।
जल्‍दी से जल्‍दी से जल्‍दी

दयनीय लोगों को रखने का एकमात्र कारण यह है कि आप उन्हें बदलने के लिए किसी को बेहतर नहीं कर सकते। वे वही करते हैं जिसे हम "गधा का काम" कहते हैं: मामूली या बड़े पैमाने पर बदलाव जिन्हें बहुत सोचने की ज़रूरत नहीं है।
DPD

1
क्या उन्हें साक्षात्कार में ढूंढना संभव है। हाँ साक्षात्कारकर्ता के कौशल पर निर्भर करता है। मैंने उन्हें कुछ टेक्सबुक कार्यक्रमों और समस्याओं को हल करने दिया। यदि वे इस स्तर से गुजरते हैं, तो मैं उन्हें सोचने के लिए कुछ और जटिल समस्याएं दे सकता हूं। वाक्यविन्यास में रोगी अच्छे हो सकते हैं, लेकिन यह केवल यह है कि वे इसे वास्तव में समझे बिना रटे द्वारा सीखते हैं। वे समस्या समाधान पर फ्लॉप होंगे। कुछ आपको बहुत कुछ बताएंगे कि वे अपने दम पर नहीं सोच सकते हैं और केवल Ctrl + C, Ctrl + V भाषा में काम कर सकते हैं
DPD

4
गधा काम करने वाले ड्रोन कम से कम काम करते हैं। जब वे हस्केल में 10 वर्षों के विकसित सामान को OCaml के लिंक के एक जोड़े के साथ फिर से लिखना चाहते हैं, तो 3 सप्ताह में, और बाकी सभी चीजें वे cr * p में बदल जाती हैं। फिर आप वास्तव में उन्हें चाहते हैं!
जल्दी_अगले

4

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

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

आपका सॉफ़्टवेयर हो जाएगा, इसमें संदेह न करें, लेकिन एक उत्कृष्ट टीम से बहुत अलग परिणामों की अपेक्षा करें ताकि एक तथाकथित टीम से। आपके पास अधिक बग, अधिक प्रदर्शन समस्याएं, अधिक रखरखाव और मापनीयता की समस्याएं और इतने पर होंगे। आपको अधिक जटिल समस्याओं के माध्यम से अपने इतने सारे लोगों को बचाना होगा। आपको उचित वास्तुकला निर्णयों के बावजूद इतने सारे लोगों को बचाना होगा।

यदि आप इसे स्वीकार करते हैं, और इसे प्रबंधित करने के लिए तैयार हैं, तो यह ठीक है। बस प्रक्रिया के लिए और परिणामों के लिए तैयार रहें।


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

3

मुझे लगता है कि यह वास्तव में महान डेवलपर को काम पर रखने की समस्या नहीं है। असली चुनौती यह है कि वे आपके लिए काम करना चाहते हैं।

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

ठीक है, तो आप अपने मानकों को कम करने जा रहे हैं। यह अच्छा है, शायद आप अपने मन को बदल देंगे जब आप कुछ वास्तव में घटिया व्यक्ति को किराए पर लेंगे। वह जो आपके सभी CS प्रश्नों का उत्तर त्रुटिपूर्ण रूप से देगा लेकिन जो वास्तव में उत्पादन कोड की एक भी पंक्ति नहीं लिख सकता है। उसके साथ अच्छा भाग्य :)


3

आओ हम एक कदम पीछे हटें।

हम क्या करने की कोशिश कर रहे हैं? सॉफ्टवेयर लिखें।

हमें क्यों लगता है कि हमें सबसे अच्छा किराया चाहिए? क्योंकि उस अजीब 'अर्नोल्ड बच्चा एक गीले पेपर बैग से अपना रास्ता हैक नहीं कर सका और अब SQL सब खराब हो गया है और मैं इसमें प्रवेश कर सकता हूं।

ठीक है, तो सबसे अच्छा क्या है ? मुझे नहीं पता, वह शायद कोई है जो बहुत सारे पैसे चाहता है और एक महान पोर्टफोलियो के साथ छह फीट लंबा फिर से शुरू होता है और Google या कुछ पर काम करता है। उसके पास एक डिग्री होनी चाहिए, और शायद उसके नाम के अंत में कुछ अक्षर हों। हाँ, यह मेरे लिए सबसे अच्छा लगता है, और सबसे अच्छे से, मेरा मतलब है कि कोई है जो उस अजीब 'अर्नोल्ड बच्चे नहीं है। ओह, और उसे पता होना चाहिए कि मैंने वास्तव में कुछ कठिन बकवास कैसे की, जिसके बारे में मैंने स्कूल में सुना था जैसे "एक बुलबुला लिखें" या जो भी वे इसे कहते हैं। मैं अन्य लोगों में से एक को कुछ पेचीदा चीजों का नाम देने के लिए कहूँगा जो उन्हें स्कूल में करना था, हाँ।

आप की तरह लगता है कि freakin 'अर्नोल्ड बच्चे नहीं चाहते हैं? क्या तुम? मैं छोटी गाड़ी का कोड होने से थक गया हूँ, सामान हमेशा के लिए हो जाता है, और ये नए लोग जिनका मैं साक्षात्कार लेता हूं, मुझे बताते हैं कि मुझे सब कुछ फिर से लिखना होगा!

ठीक है, तो आप क्या पूछते हैं कि फ्रीकिन अर्नोल्ड बच्चे को क्या करना है? एक PHP वेबसाइट बनाएँ, कुछ jQuery लिखें, PHP में MSSQL के साथ कुछ बुनियादी CRUD करें, और पृष्ठभूमि के रंगों को बदल दें।

क्या यह ध्वनि किसी कार्य की तरह है जो विशेष रूप से बहुत अच्छे के अनुकूल है? मुझे यकीन है कि सबसे अच्छा यह कर सकता है, लेकिन शायद किसी को भी जो सही स्किलसेट मिला है जो यह मैच कर सकता है।

तो, आप सबसे अच्छा की जरूरत नहीं है? ठीक है, मुझे बस किसी ऐसे व्यक्ति की आवश्यकता है जो अपने लक्ष्यों को पूरा करे।

ओह। हाँ।


@ user1525, यह एक CRUD ऐप नहीं है। यह इंजीनियरिंग सॉफ्टवेयर है।
ग्रेविटॉन

हर बार नहीं। बहुत सी नौकरियों में डेटा संरचनाओं, एल्गोरिदम या कम्प्यूटेशनल जटिलता के किसी भी ज्ञान की आवश्यकता नहीं होती है। यकीन है, वे Google खोज में काम नहीं कर रहे हैं, लेकिन इसके लिए एक बड़ी मांग है। नौकरी बोर्डों पर अधिकांश पोस्टिंग को देखें, "मुझे एक jquery प्लगइन की आवश्यकता है" या "मुझे एक iphone ऐप दें जो इन psd की तरह दिखता है"। लोग या तो सबसे अच्छा या सबसे सस्ता चाहते हैं।
गुप्त

3

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

एक खराब किराया

  • समस्याओं के इन वर्गों के बारे में भी नहीं सुना हो सकता है,
  • आम समाधानों से परिचित नहीं हो सकते हैं,
  • शायद वहाँ से बाहर है कि बेहतर सामान के बारे में पता नहीं होगा (संकेत: सबसे undergrads फैंसी सामान के बारे में कभी नहीं सुना है, अगर वे समस्याओं के बारे में सुनते हैं), और
  • लगभग निश्चित रूप से ऐसी चीजों को लागू करने में उम्र लग जाएगी (यह विचार करते हुए कि मैंने उनमें से कुछ को डेटा संरचनाओं में फिट होने के लिए पूरी स्नातक संगोष्ठी दी है, प्रोफेसर शामिल हैं)।

दूसरे शब्दों में, इस बारे में सोचें कि क्या आप वास्तव में किसी पैदल यात्री पर काम कर रहे हैं। यदि आप महान हैं, तो काम पर रखना बहुत आसान होना चाहिए। यदि आप नहीं हैं, तो किसी ऐसे व्यक्ति को पकड़ें जो आपकी जरूरत के अनुसार काम कर सके।


आपको संपूर्ण कम्प्यूटेशनल ज्यामिति / रैखिक प्रोग्रामिंग पुस्तकालयों को फिर से लिखने की आवश्यकता नहीं है; आपको बस इतना करना है, जहां तक ​​मेरे आवेदन का संबंध है, यह जानने में सक्षम होना है कि कैसे समस्याओं को उचित कम्प्यूटेशनल ज्यामितीय / रैखिक प्रोग्रामिंग शब्दों में डाला जाए और यह पता किया जाए कि मौजूदा पुस्तकालयों का उपयोग कब / कैसे करना है।
ग्रेविटॉन

2

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

लेकिन अगर आप कम अनुभवी लोगों को नियुक्त करने का निर्णय लेते हैं, तो आपको उन तकनीकों का उपयोग करने पर विचार करना चाहिए जिन्हें संभालना आसान है। उदाहरण के लिए यदि आपने पूरी परियोजना के लिए C ++ का उपयोग करने की योजना बनाई है, तो अपने सर्वश्रेष्ठ लोगों द्वारा लिखित पुस्तकालयों में C ++ भाग को सीमित करें और दूसरों को Visual Basic में उपयोगकर्ता इंटरफ़ेस लागू करने दें।


2

उन मूल्यों को लिखें जो आप एक कर्मचारी में खोजते हैं जो आपके रैंक में शामिल होंगे।

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

हालांकि, यह अधिक संभावना है कि आप अभिनव, रचनात्मक, भरोसेमंद, युगानुकूल, जिज्ञासु, आत्म-अध्ययनशील, मिलनसार, सक्षम और समर्पित लोगों को खोज रहे हैं। दिखाएँ कि आपकी कंपनी इन मूल्यों को समझती है और उनका सम्मान करती है और अपने कर्मचारियों को उन्हें और विकसित करने में मदद करने को तैयार है।

अपने वर्तमान कर्मचारियों के मूल्यों को समझें और उन्हें गले लगाएं और उन्हें अपने नौकरी के अनुप्रयोगों में संचार करें। अच्छी कंपनियां, एक स्थायी मूल्य-प्रणाली के साथ, अच्छे कर्मचारियों को आकर्षित करती हैं।


-1: यदि आपने कहा (और ओपी ने बात की) तो निश्चित रूप से इसका अर्थ होगा। मुझे समझ नहीं आता कि यह उत्तर उसे कैसे मदद करेगा। आप मूल रूप से कह रहे हैं कि अगर उसने सही समझा तो उसने अपने आवेदन में पर्याप्त मार्केटिंग नहीं की? ठीक है, शायद यह एक छोटी सी मदद करेगा, लेकिन मैं आमतौर पर बहुत अधिक सक्षम लोगों को कम से कम मूल्य की एक उचित राशि नहीं डाल रहा हूँ .. duh .. क्षमता? .. जैसे मैंने कहा, "प्रोग्रामिंग क्षमता" को पैसे से बदलें और आपका जवाब बहुत मायने रखता है लेकिन माफ करना मुझे नहीं मिल रहा है।
n1ckp

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

@Dibbeke: अच्छी तरह से मैंने इसे आंशिक रूप से भी कम किया है क्योंकि मैं नहीं देखता कि यह प्रश्न से कैसे संबंधित है। अच्छा शेख़ी हालांकि और मैं आपकी पिछली टिप्पणी (हालांकि आपका जवाब कुछ और है) से असहमत नहीं है, लेकिन मैं अभी भी यह देखने में विफल हूं कि यह ओपी की मदद कैसे करेगा या वास्तविक प्रश्न का उत्तर देगा।
n1ckp

@ n1ck जब आपने मार्केटिंग की बात कही, तो मुझे आश्चर्य हुआ कि क्या मूल मूल्यों पर हायरिंग की प्रक्रिया को आधार बनाना वास्तव में एक ही है। मुझे नहीं पता, लेकिन मैं मानता हूं कि विश्वास और सम्मान का एक सामाजिक नेटवर्क बनाना इससे बहुत प्रभावित होता है। यह बदले में आपकी कंपनी की प्रतिष्ठा को प्रभावित करता है और आपको उन शीर्ष पायदान सॉफ्टवेयर डेवलपर्स को आकर्षित करने में मदद करता है।
डिब्बी

@Dibbeke: यकीन नहीं होता अगर मुझे आपकी आखिरी टिप्पणी मिली लेकिन मुझे लगता है कि मैं कम से कम आपके साथ सहमत हूं। लेकिन फिर, मुझे यकीन नहीं है कि यह ओपी के लिए सहायक है (हालांकि मैं अधिक यह देखता हूं कि यह अब कैसे संबंधित है)। मुझे क्या लगता है कि वह अपनी कंपनी के बारे में कभी भी बात नहीं करता है, इसलिए हाँ शायद यह एक कारण हो सकता है कि उसकी कंपनी की प्रतिष्ठा खराब हो, लेकिन मुझे लगता है कि आप निष्कर्ष पर जा रहे हैं ..
n1ckp

1

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

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


1

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

शुरू करने से पहले हारना सबसे आसान तरीका है।


1

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


1

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

अपने आप से यह प्रश्न पूछें (आप थोड़े पहले ही कर चुके हैं ..): यदि आपके पास उसी स्थिति में 5 साल के लिए एक और इंजीनियर है, तो क्या आप उसे फाइबोनैचि श्रृंखला और द्विआधारी खोजों को याद रखने की उम्मीद करेंगे?

यदि उत्तर नहीं है, तो अपना साक्षात्कार पैटर्न बदलें। यदि आपको Google या bing जैसे खोज एप्लिकेशन पर काम करना है, तो आपको एक दर्जन से अधिक खोज एल्गोरिदम जानने की आवश्यकता हो सकती है। बाकी सभी लोग बस map.get ("") का उपयोग करते हैं;

अपने साक्षात्कारों को लक्षित करें कि स्थिति को क्या चाहिए, पाठ्यपुस्तक-सामान्य अच्छे प्रोग्रामर की नहीं।


1

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

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


0

मैं ऊपर दिए गए अधिकांश टिप्पणियों से पूरी तरह सहमत हूं जो किसी व्यक्ति को किसी समस्या के लिए फिट करने का संदर्भ देते हैं। यह आमतौर पर एक सुपरस्टार को काम पर रखने के बजाय एक दीर्घकालिक संबंध के परिणामस्वरूप होता है, जो एक नियमित समस्या पर काम करता है - जो उसे जल्दी से छोड़ने के लिए निराश करेगा।
यह कहने के बाद, आपको हमेशा अपनी कंपनी के लिए एक विशेष स्थिति के बजाय किराए पर लेने की कोशिश करनी चाहिए। क्योंकि यह वही आदमी टीमों के बीच जल्दी या बाद में व्यक्तिगत संपर्कों आदि के साथ स्विच करने जा रहा है और वह कहीं और डेडवेट हो सकता है। सुनिश्चित करें कि आपकी कंपनी के पास बहुत सख्त आंतरिक स्थानांतरण दिशानिर्देश हैं और आपके पास एक स्पष्ट चित्र है कि आप अपनी टीम में अगले कुछ वर्षों के लिए किसी व्यक्ति को नियुक्त करने से पहले क्या करेंगे जो आपको लगता है कि कंपनी बार से नहीं मिल सकता है (लेकिन वर्तमान समस्या का समाधान होगा) )। मैंने बहुत से ऐसे मामले देखे हैं जहाँ डेवलपर्स में सामान्यता ने टीम को उनके चारों ओर फिट करने के लिए अतिरिक्त मेहनत की है।

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