पुराना प्रोग्रामर गायब हो गया। एक और प्रोग्रामर को काम पर रखने के बारे में। मैं यह कैसे संपर्क करूं? [बन्द है]


19

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

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

अब मुझे सबसे पहले क्या करना चाहिए? मैं कैसे आगे बढ़ूं?

मुझे लगता है कि पहली बात यह है कि एक और प्रोग्रामर प्राप्त करना होगा, लेकिन मैं दाहिने पैर से शुरू करना चाहता हूं जिसमें सभी वर्तमान कोड दस्तावेज हैं ताकि कोई भी प्रोग्रामर बिना मुद्दों के सभी कार्यों पर काम कर सके।

क्या पहली बात यह है कि मुझे क्या करना चाहिए? यदि हाँ, तो मैं इसके बारे में कैसे जाऊँ?

कुछ इस तरह के लिए आवश्यक मानक प्रकार के प्रलेखन क्या है? क्या मुझे एक प्रोग्रामर मिल सकता है जो सिर्फ सभी कोड्स के लिए डॉक्यूमेंटेशन करेगा और बग्स को ठीक करेगा या डॉक्यूमेंटेशन वास्तव में महत्वपूर्ण नहीं है?

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


29
"और मैंने उसे काम नहीं करने के लिए अग्रिम वेतन भी दिया।" - उस पर मुकदमा करने का एक कारण हो सकता है, आपको एक वकील की पुष्टि करनी चाहिए।
डॉक्टर ब्राउन

क्या आप हमें इस बात के बारे में कुछ जानकारी दे सकते हैं कि आप बाईं ओर स्रोत कोड को समझने में कितने कुशल हैं?
मारू

10
पहला और सबसे महत्वपूर्ण सवाल: क्या आपके पास कोई अनुबंध है?
राडू मुरझिया

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

15
पहली बात यह है कि अपने सर्वर में लॉगिन और पासवर्ड बदलें।
माइकल रिले - एके गनी

जवाबों:


17

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

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

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

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

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

मेरे अपने विचारों में से कुछ: बग ट्रैकिंग एक आवश्यक है (जीरा की लागत 10 डॉलर तक 10 लोगों की टीम के लिए है)। स्रोत नियंत्रण एक होना चाहिए (git free है। लागू करने के लिए अधिकतम 5 या अधिक लोगों की टीम के लिए मूंगफली की लागत होती है)। आपका कोड आपका दस्तावेज है। आपके लिखित शब्द दस्तावेज़ नहीं। उसे कोड की समीक्षा करनी चाहिए और जो कुछ निस्तारण योग्य है उसे रखना चाहिए; बाकी को बाहर फेंक दें और लिखने योग्य और पठनीय कोड पर ध्यान केंद्रित करें। कुछ उच्च-स्तरीय, कुछ-पृष्ठ डिज़ाइन दस्तावेज़ के लिए दस्तावेज़ सहेजें। उसे पता होना चाहिए कि आप जिस तकनीक पर काम कर रहे हैं। सिर्फ अच्छे इरादों के साथ किसी को न रखें; आप उन्हें अपने समय पर सीखने का जोखिम नहीं उठा सकते। उनसे पूछें कि उन्होंने कौन सी अन्य परियोजनाएं की हैं (दुर्भाग्य से आप या आपके द्वारा पाया गया कोई सामान चीजों के तकनीकी पहलू के साथ रखा जा सकता है)। आप किसी ऐसे व्यक्ति की तलाश कर रहे हैं जिसके पास पर्याप्त अनुभव हो लेकिन साथ ही साथ यह भी नहीं कि उत्तेजना की चिंगारी पहले ही जल चुकी हो। किसी ऐसे व्यक्ति को खोजें जो एक प्रभाव बनाने के लिए भूखा हो। वह जिस पद्धति का प्रस्ताव करता है या उसका अनुसरण करता है, उसे आपको नियमित (एक या दो सप्ताह की अवधि) आधार पर काम देखने और त्वरित प्रतिक्रिया प्रदान करने की अनुमति देनी चाहिए। ऐसा कोई भी व्यक्ति नहीं है जो कहता है, यह ठीक 7.4 महीने में तैयार हो जाएगा, मैं आपको बता दूंगा कि यह कब किया गया है।

सौभाग्य


1
@pocto: लोग वहां से बाहर हैं, लेकिन आपको ... a) उन्हें वहन करने में सक्षम होने की आवश्यकता है b) उन्हें खोजते हैं (दुर्भाग्य से वहां आपकी मदद नहीं कर सकते क्योंकि मैंने कभी नहीं देखा था)। लेकिन एक बार जब आप सही व्यक्ति को ढूंढ लेते हैं, तो वह मौजूदा वेबसाइट सहित मौजूदा स्थिति का जायजा लेगा और कॉल करेगा। मौजूदा बग्स को ठीक करना और मौजूदा ग्राहकों को रखना निश्चित रूप से महत्वपूर्ण है। सुनिश्चित करें कि आगे बढ़ने वाली उसकी योजना का हिस्सा है। आप पर विचार करने के लिए एक और बात यह है कि आपको वास्तव में अपनी कंपनी के बड़े हिस्से को ले जाने के लिए किसी को खोजने की आवश्यकता है। हो सकता है कि बजाय सिर्फ एक कर्मचारी, के लिए जा रहा है ... की तलाश में
DXM

1
... साथी। मुआवजे के पैकेज के हिस्से के रूप में, अपनी कंपनी के एक हिस्से की पेशकश करें (20-30% हो सकता है?)। यदि आप सफल होते हैं, तो आप 20% कम कर देंगे, लेकिन यदि आप 0 से 20% अधिक असफल होते हैं, तो आप कोई अच्छा नहीं करेंगे। यह आपके नए कर्मचारी / साथी को यह सुनिश्चित करने में मदद कर सकता है कि वह आपके समान हितों को सुनिश्चित करे (यानी वेबसाइट को सफल बनाने के लिए, न केवल साप्ताहिक पेचेक इकट्ठा करें)
DXM

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

@psr: मैं अच्छे नामकरण / संरचना के साथ अच्छी तरह से लिखित कोड ले जाऊंगा और किसी भी दिन महान डिजाइन दस्तावेजों के साथ अपठनीय कोड पर किसी भी दिन उच्च स्तरीय डिजाइन डॉक्स। और मेरा मतलब यह नहीं था कि एगिस्ट (सपा?) है, लेकिन मेरा मानना ​​है कि हमारे पेशे को निरंतर सीखने और विकास की आवश्यकता है और यह बहुत सारे काम पर नहीं किया जा सकता है क्योंकि प्रौद्योगिकी आपके अधीन हो जाएगी। हालाँकि, मैंने कई लोगों को मुझसे छोटा और बूढ़ा दोनों देखा है, जो समय के साथ बस यह कहते दिखते हैं, "मैंने काफी सीखा है, अब मैं सिर्फ काम करूंगा"। मैंने उन लोगों को भी देखा है जो मेरे लिए उस चट्टान से बड़े हैं, लेकिन वे सिर्फ 40 घंटे से ज्यादा काम करते हैं।
DXM

13

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

लेकिन यह समस्या नहीं है। कम से कम अब और नहीं; आपको अपनी गलती से सीख लेनी चाहिए और भविष्य में इसे दोहराने की कोशिश नहीं करनी चाहिए। और हां, मैं दृढ़ता से सुझाव दे रहा हूं कि 50% आपकी / उसके छोड़ने की गलती है।

अब वर्तमान समस्या को हल करने के बारे में:

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

    नोट: आप उस व्यक्ति को वापस नहीं चाहते हैं, आपको बस तैयार प्रलेखन की आवश्यकता है

  2. तैयार रहें कि आपका एक साल का काम शून्य हो जाएगा। जब आप परिणाम मांगते हैं तो वह भाग सकता है और वह जानता है कि वह वितरित नहीं कर सकता है। यह संभव है कि कोड हैक, गंदा कार्यान्वयन और समग्र खराब गुणवत्ता से भरा हो। यहां तक ​​कि अगर वह वापस आता है - तो शायद उसके पास कौशल या यहां तक ​​कि इसे सही करने का समय भी नहीं होगा।

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

    नोट: यह सामने वाले को पैसे देने के लिए मूर्खतापूर्ण है। वेतन का पूरा विचार नौकरी करने के लिए भुगतान करना है। नहीं किए गए एक वादे के लिए :)

  4. सूची बनायें। योजना बनाना आपके हित में है। एक तकनीकी विनिर्देश जो एक बार पढ़ा है वह नए प्रोग्रामर को नौकरी और मील के पत्थर को समझने की अनुमति देगा। कम से कम तीन महत्वपूर्ण दस्तावेज हों:

    • परियोजना का समग्र विवरण - एक दस्तावेज जो गैर-प्रोग्रामर को यह जानने की अनुमति देगा कि परियोजना किस बारे में है।

    • समयरेखा - आप किस हिस्से और कब तैयार होने की उम्मीद करते हैं? पहले से क्या किया है?

    • तकनीकी विनिर्देश - यह एक लंबा है। यह वह दस्तावेज है जिसे एक प्रोग्रामर पढ़ना चाहता है। इसे तार्किक भागों में अलग करें और उस विशिष्ट भाग की विशेषताओं और वर्कफ़्लो को अधिक से अधिक विवरण में वर्णित करें।

कंपनियों के साथ काम करना वास्तव में उतना अच्छा नहीं है; आपके मौके बेहतर नहीं होंगे। और यदि आप केवल एक प्रोग्रामर को किराए पर लेते हैं तो आप 10 बार ओवरपे करेंगे। यदि आपके पास एक छोटी टीम है, तो हम 3-5 लोगों को कहते हैं, बस एक टीम लीडर बनने के लिए तैयार प्रोग्रामर को किराए पर लें। वह टीम का प्रबंधन करने के लिए बहुत बेहतर काम करेंगे।


15
मैं उनकी नई कंपनी से संपर्क करने और उनके बारे में उनसे बात करने की सलाह नहीं देता। अमेरिका में सत्य या नहीं, कम से कम एक मानहानि के मुकदमे की संभावनाएं पैदा करने वाले।
ग्रैंडमास्टरबीऑक्ट

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

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

नई कंपनी से संपर्क करने के लिए मेरे पास -1 है जहां यह व्यक्ति काम करता है। यदि वे अपनी नौकरी खो देते हैं, तो वे आप पर मुकदमा कर सकते हैं। इससे भी महत्वपूर्ण बात यह है कि किसी भी कड़वे व्यक्ति से आने वाले किसी भी दस्तावेज या कोड को इतनी खराब गुणवत्ता का होगा कि आप उन्हें पहली जगह में नहीं चाहते हैं।
MrFox

8

एक और प्रोग्रामर द्वारा बाद में दस्तावेजीकरण कोड? यह मेरा अपना अनुभव और राय है कि आपको यह रास्ता नहीं अपनाना चाहिए।

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

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

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

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

जब आपके पास वह दस्तावेज़ लिखा जाता है (आवश्यकता के रूप में- या कार्यात्मक विनिर्देश के रूप में), तो आपको नए प्रोग्रामर को काम पर रखने से बेहतर परिणाम मिलेंगे क्योंकि आप दस्तावेज़ सौंप सकते हैं और वहां से काम करना शुरू कर सकते हैं।

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

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


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

@Raybarg के बारे में "बग को ठीक करने के बाद, सामान पर टिप्पणी करें": मैं आपसे आग्रह करता हूं कि आप कीड़े को ठीक करते हुए टिप्पणी कैसे करें। वह चरण है, आखिरकार, जहां आप सभी ज्ञान को दस्तावेज़ में इकट्ठा करते हैं। इस प्रकार, इसे तुरंत क्यों नहीं लिखा जाए? यह केवल अधिक बग्स को तेजी से खोजने और ठीक करने में मदद करेगा।
मार्सेल

@Raybarg, क्या आप यहाँ बता सकते हैं कि आपने "प्रोग्राम्स के बारे में क्या कहा था जो स्रोत कोड से बाहर दस्तावेज़ बनाते हैं"। वास्तव में? ये कौन से कार्यक्रम हैं और ये कैसे काम करते हैं?
पोक्टो

3

यहां बताया गया है कि मैं इस समस्या से कैसे निपटूंगा:

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

  • कोड का यह ढेर वहाँ बैठा है, एक कोने में खुद को छोड़ दिया है। यह छोटी गाड़ी हो सकती है, लेकिन यह अभी भी मूल्य बचाता है क्योंकि साइट में सक्रिय उपयोगकर्ता हैं। एक पूर्ण पुनर्लेखन इस प्रकार एक गलती IMO होगा।

प्रोग्रामर के चले जाने पर आपके डोमेन विशेषज्ञता और कोड के बीच का पुल टूट गया था। आपको इसे फिर से बनाने की आवश्यकता है ताकि कोड आधार को फिर से आपकी आवश्यकताओं के साथ सिंक्रनाइज़ किया जा सके और भविष्य के अपडेट को विकसित किया जा सके।

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

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

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

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

1

सभी ने जो कहा है, उसे जोड़ते हुए,

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

  1. बग डेटाबेस प्राप्त करें, और आपके द्वारा इसमें पाए गए सभी बग दर्ज करना शुरू करें। यह प्रोग्रामर की प्राथमिकता टू-डू लिस्ट है। इसे अच्छी तरह से प्रलेखित करें और यथासंभव विस्तार में रखें (स्रोत फ़ाइल / मूल कारण, यह क्या करता है, और इसे क्या करना चाहिए)। Bugzilla , Redmine और JIRA जैसे बहुत सारे मुफ्त बग ट्रैकिंग सॉफ्टवेयर हैं । जो भी आपको पसंद हो उसका बेझिझक इस्तेमाल करें।
  2. अपने प्रोजेक्ट के लिए एक स्पेसिफिकेशन शीट बनाएं। बग्स को साफ करने के बाद यह नए प्रोग्रामर को कुछ दिशा देगा। आप लेखन विनिर्देशों पर जोएल के गाइड की जांच कर सकते हैं ।
  3. अपने प्रोजेक्ट के लिए शेड्यूल या टाइम लाइन बनाएं। उनके पास समय सीमा और मील के पत्थर होने चाहिए, जिसमें उन्हें पहले से भुगतान करने के बजाय उनके द्वारा प्रदान किए गए काम के लिए भुगतान किया जाता है।

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

इस बार, प्रोग्रामर को काम पर रखने के दौरान बस कारक के लिए ठीक से योजना बनाना शुरू करें । लोग आते हैं और जाते हैं और आप इसके बारे में कुछ भी नहीं कर सकते हैं, इसलिए दो प्रोग्रामर प्राप्त करके इस बार सबसे खराब तैयारी करें, या जैसा कि यूओओ ने कहा, एक प्रोग्रामर और एक परीक्षक प्राप्त करें।

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

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


0

तो, आपका एकमात्र प्रोग्रामर एक बस से टकरा गया था , और आपको अब प्रतिस्थापन की आवश्यकता है।

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

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

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


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

@pocto अपने सॉफ्टवेयर को बनाए रखना और विकसित करना। जैसा लिखा है: मैं आपके प्रोग्रामर को यह बताने पर ध्यान नहीं दूंगा कि किस क्रम में क्या करना है । जब बग को ठीक करने की आवश्यकता होती है, तो यह किया जाना चाहिए। जब एक नई सुविधा और इकाई परीक्षणों को लागू करने की आवश्यकता होती है, तो दस्तावेज को लिखने की आवश्यकता होती है, यह किया जाना चाहिए। आप "Bugfixer" या "दस्तावेज़ीकरण लेखक" या "फ़ीचर कार्यान्वयनकर्ता" को किराए पर नहीं लेते हैं, आप एक सॉफ़्टवेयर डेवलपर को नियुक्त करते हैं। और उसका काम यह सब करना है।
ऊऊओ
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.