मुझे उस परियोजना में एक डेवलपर के रूप में कैसे व्यवहार करना चाहिए जो विफलता के लिए नेतृत्व कर रहा है?


335

मैं 5 सदस्यीय टीम में एक डेवलपर हूं और मेरा मानना ​​है कि हमारी परियोजना आपदा के लिए नेतृत्व कर रही है। मैं बताता हूँ कि एक क्षण में क्यों, लेकिन मेरा सवाल यह है: मुझे कैसे व्यवहार करना चाहिए?

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

इस मामले में मुझे क्या करना चाहिए? क्या मुझे अतिरिक्त प्रयास करना चाहिए, या क्या मुझे इसे आसान बनाना चाहिए? और मुझे प्रबंधक से क्या कहना चाहिए?

इस परियोजना की विफलता के कारण है:

  • समय सीमा समाप्त होने के साथ-साथ कई विशेषताएं समाप्त नहीं होनी चाहिए
  • आवेदन अस्थिर है और उपयोग करने के लिए बहुत मुश्किल है
  • सिस्टम बहुत जटिल है, कोड को समझना बहुत मुश्किल है, बदलने में बहुत मुश्किल है - डेटा मॉडल बहुत जटिल रिलेशनल डेटाबेस (100 टेबल) द्वारा संचालित है
  • अस्पष्ट नेतृत्व; प्रबंधक प्रमुख परिवर्तनों के साथ नई जानकारी का जवाब देता है
  • लगभग कोई स्वचालित परीक्षण या इकाई परीक्षण नहीं
  • भारी अन्य प्रणालियों पर निर्भर करता है, लेकिन अभी तक कोई एकीकरण परीक्षण नहीं है

वास्तव में, हम वास्तव में इस परियोजना को (मेस के साथ) लगभग 1-2 महीने पहले उसी प्रबंधक के तहत एक अन्य देव टीम से विरासत में मिला है, जिसने कुछ महीनों तक इस पर काम किया है।


आंशिक रूप से, आप एक समस्या का हिस्सा हैं। आपने इकाई परीक्षण क्यों लागू नहीं किए? एक डेवलपर के रूप में, यह आपका कर्तव्य होना चाहिए। आप इसे जोड़ सकते हैं जो उस परियोजना को प्रबंधित करने के लिए एक बड़ी असफलता के रूप में है।
19

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

आप किस तरह की सॉफ्टवेयर प्रक्रिया का उपयोग कर रहे हैं? झरना / चंचल? और कौन सा? आरयूपी / स्क्रेम / एक्सपी ...?
Sjuul जानसेन

28
अपना रिज्यूमे अपडेट करें। किसी और की समस्या पर नींद न खोएं। समय सीमा बीत जाने के बाद चीजों को बढ़ाने की अपेक्षा करें।
शॉन मैकसमर्थिंग

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

जवाबों:


317

प्रबंधन की सीढ़ी तक संभव सबसे संक्षिप्त और गैर-टकरावपूर्ण तरीके से अपनी चिंताओं का संचार करें। जोखिमों को संक्षेप में लिखें, लेकिन उन पर अपना निष्कर्ष न थोपें।

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

ऐसा करने के बाद, इस परियोजना पर अच्छे विश्वास के साथ काम करते रहें।

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


51
+ 1. मैं एक बात यह जोड़ना चाहूंगा कि जब प्रबंधन के फैसले आपको बेवकूफ लगते हैं, तो इस बात की थोड़ी सी संभावना होती है कि उनके पास वास्तव में अच्छे कारण हैं कि आपके पास कोई दृश्यता नहीं है, लेकिन अधिकांश समय वे वास्तव में बेवकूफ हैं। बेशक यह अन्यथा आपको समझाने के लिए प्रबंधन के सर्वोत्तम हित में है ;-)
dasblinkenlight

178
+1, लेकिन "अच्छे विश्वास में काम करना" का अर्थ यह नहीं है कि अंतहीन अवैतनिक समय की मृत्यु मार्च में शामिल होने के लिए अपने व्यक्तिगत जीवन का बलिदान करना।
केविन क्लाइन

27
@LouisRhys किसी भी समय आप कुछ संवेदनशील चीजों से निपट रहे हैं जहां भावनाएं इसमें आ सकती हैं, और किसी को यह बताना कि कुछ महत्वपूर्ण विफल हो सकते हैं कि वे मायने रखते हैं, एक पेपर ट्रेल होना वास्तव में महत्वपूर्ण हो सकता है। यह निश्चित रूप से CYA के लिए एक समय है।
जेरेमी प्रेडेमोर

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

4
अपने सारांश में, यदि संभव हो तो तकनीकी विवरण और राय से बचने की कोशिश करें, लेकिन इस तरह से चीजों को वाक्यांशित करें जिन्हें किसी ऐसे व्यक्ति द्वारा पढ़ा और समझा जा सकता है जो आपकी तकनीक का विशेषज्ञ नहीं है, लेकिन चिंता और लेने के लिए आपके कारणों का पालन करने में सक्षम होगा। निर्णय लेते समय ध्यान में रखें।
तोबिवैन

105

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

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

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


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

89

मैं आपको 2 किताबें पढ़ने के लिए थोड़ा समय लेने की सलाह देने जा रहा हूं।

डेथ मार्च एक विवादास्पद पुस्तक है जो एक रोग संबंधी परियोजना प्रबंधन शैली का वर्णन करती है जो सॉफ्टवेयर विकास में व्यापक है। शेड्यूल कम्प्रेशन, फ़ीचर ब्लोट, या मिसमैनेजमेंट के कारण, कई परियोजनाएँ खराब स्थिति में समाप्त हो जाती हैं; यह समझने में मदद करता है कि आप अकेले नहीं हैं और आपकी परियोजना केवल मृत्यु मार्च नहीं है। लेखक एडवर्ड योरडन ने 4-क्वाडंट में मृत-अंत परियोजनाओं को वर्गीकृत किया है, जिनमें से प्रत्येक में अलग-अलग मैथुन रणनीतियों हैं। कभी-कभी केवल मुकाबला करने की रणनीति ही दूर होती है। मुझे लगता है कि यह पुस्तक आपको यह पता लगाने में मदद करेगी कि आपके विकल्पों की सीमा क्या है और आप क्या कर सकते हैं और क्या नहीं कर सकते हैं।

एमएस पेंट के साथ मेरे लेट कौशल ने मुझे इसे बनाने में मदद की!

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


4
सॉफ्टवेयर विकास के साथ कुछ करने के लिए एक जवाब के लिए +1।
psr

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

यह एक बेहतर उत्तर है .. ओपी एक ऐसी स्थिति का वर्णन करता है जिसे मैं खुद में पाता हूं और अक्सर सुनता हूं। कभी-कभी
कयामत

58

कैरियर / पवित्रता बनाए रखने के लिए 3 सरल और निंदक रणनीतियाँ।

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

  2. यदि वह काम नहीं करता है तो अपना सिर नीचे रखें: लोग दोष निकालने के लिए लोगों की तलाश शुरू करने जा रहे हैं - यह उनके लिए आसान नहीं है! प्रबंधन श्रृंखला में चिंताओं को बढ़ाते समय यह करना सही हो सकता है कि यह अप्रभावी और जोखिम भरा दोनों हो। आपके स्वयं के प्रबंधक को आपकी चिंताओं को पारित करने और उसे दरकिनार करने की संभावना नहीं है / न केवल आप दोनों को खराब दिखेंगे, बल्कि आपको एक 'परेशान करने वाला' ब्रांड बना सकते हैं, अर्थात जिस तरह के व्यक्ति को पहली जगह में परियोजना को कम करने के लिए दोषी ठहराया जा सकता है आदि। । बेशक इसका मतलब पेशेवर भी हो, अपने घंटों में लगाया जाए लेकिन कोई नायक नहीं।

  3. टी + 1 पर एक आपातकालीन निकास के लिए योजना बनाएं: अपने आप को कुछ विकल्प दें और संभावित आंतरिक या बाहरी हस्तांतरण के लिए जमीनी कार्य करें। लोगों से बातें करो; दूसरों के लिए यह तय करने का कोई कारण नहीं है कि प्रोजेक्ट फंडिंग में कटौती होने या कुछ महीनों में पलायन करने वाले लोगों के अपरिहार्य 'भगदड़' में बह जाने पर आपके साथ क्या करना है।

क्षमा याचना अगर यह अत्यधिक सनकी लगता है, लेकिन अगर आपने इसे सही ढंग से बुलाया है तो आपके रास्ते में आने वाली अप्रियता को पीड़ित करने के लिए कोई उल्टा नहीं है। पेशेवर बनें, आशावादी बनें लेकिन हमेशा यथार्थवादी रहें।


11
+1: नंबर 2 इतना सच है ... कोई भी अच्छा काम नहीं किया जाता है।
पाउलो स्कर्दिन

3
जीवन में मेरा नियम है अगर (2 :) तो गोटो (3 :) के संदर्भ में) (1 :)
जॉन निकोलस

1
मैं # 1 से पूरी तरह सहमत हूं। परियोजना के पहले 100 दिनों के भीतर सफलता का अनुमान लगाया जा सकता है। यदि आपका पेट आपको बताता है कि कुछ सही नहीं है ... इसे सुनें।
श्री जावास्क्रिप्ट

35

यह जल्द ही विफल होने वाली परियोजना का आपके फर्म पर, और उसके बाद के कैरियर पर क्या प्रभाव पड़ेगा? मेरे अनुभव में, केवल सफल परियोजनाओं से जुड़ा होना आपकी अपनी व्यक्तिगत उत्कृष्टता का संकेतक नहीं है।

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

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

अक्सर, एक ही अराजकता और अव्यवस्था जो एक असफल परियोजना के साथ आती है, आपको चमकने का अवसर देती है।

तो इस तरह से परियोजना को देखें: मेरी असफलता और सर्वोत्तम गुणों पर प्रकाश डालने के लिए यह असफल परियोजना क्या अवसर देती है? इस अनुभव से मैं क्या सबक सीख रहा हूं, जो मुझे एक बेहतर पेशेवर और बेहतर इंसान बना देगा?

अनिवार्य रूप से, असफलताओं से प्राप्त अनुभवों का योग ही सच्ची सफलता है।

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

1) व्यक्तिगत उत्कृष्टता पर ध्यान केंद्रित करें - कभी बेहतर कोड लिखने का प्रयास करें, कभी गुणवत्ता और कार्यक्षमता के उच्च मानकों को पूरा करें।

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

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


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

2
@FrancescoFeltrinelli: आपके पास शायद एक बिंदु है। लेकिन मेरा एक हिस्सा सोचता है कि मैं संकट के समय व्यक्तिगत सुधार के अवसर खोजने पर ध्यान केंद्रित नहीं करना चाहता। यह आश्चर्यजनक है कि एक संकट का सामना करने पर हम क्या सीख सकते हैं, और यह कैसे हमें जीवन में और अधिक चुनौतियों में सफल होने के लिए प्रेरित करता है।
कोड

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

23

इस तरह की स्थिति में, सीढ़ी के सबसे निचले पायदान के रूप में, केवल इतना ही है कि आप परियोजना की मदद कर सकते हैं।

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

इसके अलावा, आपको वास्तव में नंबर 1 की देखभाल करनी होगी।

  • दस्तावेज़ सब कुछ
  • सभी ईमेल, IM वार्तालाप रखें
  • यदि संभव हो तो परियोजना से बाहर निकलने का प्रयास करें

12
अच्छा प्रबंधन समझता है कि परियोजनाएं कभी-कभी विफल होती हैं; खराब प्रबंधन परियोजनाओं के विफल होने पर बलि का बकरा खोजने की कोशिश करता है। दोनों स्थितियों में होने के कारण, अच्छा कोड विशेष रूप से महत्वपूर्ण है यदि आपको दूसरी नौकरी प्राप्त करने की आवश्यकता है। अनिवार्य रूप से साक्षात्कार में वे पूछते हैं कि आप क्या काम कर रहे हैं, कम से कम आप ईमानदारी से अपने कोड पर गर्व कर सकते हैं।
माइकल शॉप्सिन

22

असफल परियोजनाएं आत्मा के लिए विषाक्त हो सकती हैं, अवसाद का कारण बन सकती हैं, काम पर और कम आत्म-सम्मान।

यह सभी परिप्रेक्ष्य के सापेक्ष है।

मैंने एक और आदमी से बैठे हुए भयानक परियोजनाओं पर काम किया है जो हर दिन उसके चेहरे पर एक मुस्कान थी। ओह, मैं कैसे उसके चेहरे पर मुस्कुराहट लाना चाहता था।

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

जबकि आप कुछ ऐसे काम कर रहे होंगे जिनका आप आनंद लेते हैं। आपके द्वारा नापसंद वर्तमान परियोजना में स्पष्ट रूप से तत्व हैं।

आपको उन समस्या तत्वों की पहचान करने और उन्हें संबोधित करने की आवश्यकता है।

  • समय सीमा का दबाव
  • गुणवत्ता नियंत्रण
  • व्यावसायिकता
  • प्रबंधन द्वारा मार्गदर्शन

ऐसी कई टीमें और कंपनियां हैं जो विकास के उपरोक्त पहलुओं को महत्वपूर्ण नहीं समझती हैं। मैंने पाया है कि वे अक्सर निम्नलिखित सोचते हैं।

  • डेडलाइन दबाव को लोगों को प्रेरित करने के तरीके के रूप में माना जाता है।
  • गुणवत्ता की लागत अधिक है और रिटर्न सीमा है।
  • व्यवसाय के अन्य क्षेत्रों में व्यावसायिकता लागू होती है।
  • एक प्रबंधक एक टाइमकीपर है और वह व्यक्ति नहीं है जो विकास में योगदान देता है।

ये समस्याएँ आपकी नहीं हैं। यह उनका है, और आपको उनके व्यवहार पर कोई ऊर्जा बर्बाद नहीं करनी चाहिए। यदि आप उन लोगों में से नहीं हैं जो मुस्कुराते हैं और अपनी नौकरी का आनंद लेते हैं, भले ही यह एक चट्टान के लिए सिर हो, तो आपको like mindedडेवलपर्स की जगह खोजने के बारे में सोचना चाहिए ।

आप ज्यादा खुश रहेंगे।


12

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

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

यदि ये प्रयास सफल होते हैं, तो आपने दिखाया होगा कि आप एक टीम के सदस्य हैं, जो सफल होने का एक रास्ता खोज सकते हैं, यदि नहीं, तो आपने अभी भी यह प्रदर्शित किया होगा कि आप हार नहीं मानते हैं और समाधान खोजने के लिए काम करेंगे।


+1; यह वही है जो अच्छा प्रबंधन करना चाहिए, लेकिन यदि वे कर सकते हैं या नहीं कर सकते हैं, तो पहल दिखाने से दिन बच सकता है। बस यह समझें कि आमतौर पर इन बातों पर पहले ही विचार किया जा चुका है।

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

12

मेरे द्वारा की गई अधिकांश परियोजनाओं की तरह लगता है। यह शायद उतना बुरा नहीं होगा जितना आप सोचते हैं, हालाँकि:

1) अपना काम करो। जब तक आप अपनी जिम्मेदारियों को पूरा नहीं करते, समग्र परियोजना के बारे में इतनी चिंता न करें।

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

3) सुधार के लिए कुछ विनम्र सुझाव दें। चेतावनी की घंटी न बजें, कयामत और उदासी न हो, बस विनम्र और सूक्ष्म रहें।

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

यदि आप ठोस परिणामों वाले सकारात्मक कदमों पर परिवर्तन फोकस को प्रभावित करना चाहते हैं, तो यह समाप्त हो रहा है। यह परियोजना कभी भी विजेता नहीं बन सकती है, लेकिन शायद टीम अगले एक के लिए सीख सकती है।

इसके अलावा:

४) अवसरवादी रिफैक्टिंग आपका मित्र है।


3
CYA किस लिए खड़ा है?
रादु मर्ज़िया

3
"अपनी गांड को ढक लो"। यकीन नहीं होता कि मैं यहां कह सकता हूं, लेकिन इसका यही मतलब है।
माइकल कुक

आइटम 4, एक स्वचालित परीक्षण सूट के बिना, चीजों को तोड़ देगा। सावधान रहने की जरूरत।
स्टीवन ए। लोव

11
  1. कड़ी मेहनत; लेकिन अपने परिवार या अपने स्वास्थ्य की कीमत पर नहीं।
  2. सभी महत्वपूर्ण डिजाइन निर्णयों का रिकॉर्ड रखें; विशेष रूप से वे आपके काम से संबंधित हैं।
  3. नेटवर्किंग करते रहें, और अगर स्थिति बहुत कठिन हो जाती है या आप एक बड़े पैमाने पर छंटनी का शिकार हो जाते हैं, तो अपने विकल्पों को खुला रखें।
  4. प्रयास करें नहीं एक "विफल परियोजना" के रूप में अपनी परियोजना के बारे में सोचना। हर कोई ऐसे लोगों को पसंद करता है जो सकारात्मक रहें और विपत्ति के सामने कड़ी मेहनत करें। इसलिए जब तक संभव हो, उस व्यक्ति बनने की कोशिश करें । एक सकारात्मक दृष्टिकोण, धैर्य और दृढ़ संकल्प हमेशा कार्यस्थल के लिए अच्छे होते हैं ।
  5. यदि आप एक असफल परियोजना का अनुमान लगा रहे हैं, तो आप एक पोस्टमार्टम बैठक की आशा कर रहे हैं। पोस्टमार्टम बैठक में, सभी को ध्यान में रखा जाएगा। अपने सभी कोड का बचाव करने के लिए तैयार रहें। [नोट: एक सामान्य नियम के रूप में, आपको हमेशा साफ कोड लिखना चाहिए ताकि बाद में इसका बचाव करना आसान हो।] यदि आपके पास ईमेल या डिज़ाइन दस्तावेज़ है जो आपके निर्णयों को प्रेरित करता है, तो यह और भी बेहतर है।
  6. उस पोस्टमार्टम बैठक में, सकारात्मक रहने की कोशिश करें; और यदि आपके निर्णय, प्रयास, या कारीगरी को प्रश्न में कहा जाता है, तो केवल अपने ईमेल और डिज़ाइन दस्तावेज़ साक्ष्य प्रस्तुत करें।

7

मैंने जो सबसे प्रभावी पाया है, वह है रॉबर्ट एल । शेड्यूल के दबाव से लड़ने की सिफारिश पर पढ़ें । यहां पढ़ें क्या लिखते हैं:

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

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

जब आप कहते हैं कि परियोजना "असफलता की ओर अग्रसर है", तो यह आपके आकलन पर आधारित है कि किन कार्यों को करने की आवश्यकता है और उनमें से प्रत्येक को कितना प्रयास करने की आवश्यकता है। उस मूल्यांकन को स्पष्ट , समझने योग्य और विस्तृत करें । उनके घटक भागों में अलग-अलग कार्य; जितना हो सके उतना विस्तार से बताएं कि विकास का समय कैसे व्यतीत होगा।

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

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

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


4

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

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


4

मैंने तीन परियोजनाओं में भाग लिया जो स्पष्ट विफलता थी। ये काफी दर्दनाक थे, लेकिन पीछे मुड़कर देखें, तो तीन में से दो का मेरे करियर पर नकारात्मक प्रभाव नहीं पड़ा और तीसरा भी दुनिया का अंत नहीं था।

यहाँ कुछ अवलोकन हैं जो मुझे याद हैं।

जूनियर पदों पर डेवलपर्स ("कोड प्रति कल्पना", "बग को ठीक करें", उस तरह का सामान) बहुत प्रभावित नहीं होते हैं, जब तक कि वे टीम में कम मनोबल के कारण सुस्त न हों। इन जैसे पदों पर, एक समझदार और यहां तक ​​कि कभी-कभी सफल उत्तरजीविता रणनीति सिर्फ वही कर सकती है जो आप कर सकते थे।

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

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

वरिष्ठ पद पर, किसी को असफलता से "अप्रत्यक्ष" लाभ प्राप्त करने के लिए तैयार किया जाएगा, यह विश्लेषण करके कि क्या गलत हुआ और क्या बेहतर किया जा सकता था।

ज्ञान के ये अंश, पोस्टमार्टम पाठ अमूल्य हो सकते हैं यदि सही सीखा जाए, तो वरिष्ठ पदों पर बहुत ही सफल करियर निर्भर करता है कि ये कितने अच्छे से सीखे जाते हैं, जैसा कि WP में इस शानदार जवाब में बताया गया है :

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


अधिक व्यावहारिक नोट पर, कोई "अगला / अद्यतन रिलीज़" दृष्टिकोण पर विचार कर सकता है विफलता के संभावित तरीके के रूप में। संयोग से या नहीं (मुझे नहीं लगता ), लेकिन दोनों असफलताएं जो मेरे करियर को नुकसान नहीं पहुंचाती हैं, बहुत समान परिदृश्यों से चली गईं: रिलीज Nकुल आपदा थी, रिलीज N+1सहनीय थी, रिलीज N+2और बाद में सादे सफलता थी।

आपके जूते में चलना, मुझे "अगली रिलीज़" के विचार को तैयार करने / बढ़ावा देने में सबसे अधिक संभावना होगी। ज्ञात समस्याओं की एक अस्थायी सूची की तरह कुछ बनाएं और संप्रेषित करें ! जिसे आप नियोजित रिलीज़ के बाद ठीक करना चाहेंगे । अगली रिलीज (ओं) के लिए एक अनौपचारिक, किसी न किसी रोड मैप को ड्राफ़्ट करें।

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

यदि उच्च विचार इस विचार के लिए बहरे दिखाई देंगे तो बैकअप योजना के बारे में सोचें। "सौ से अधिक ज्ञात बगों को ठीक करना" के बारे में उपरोक्त कहानी याद है? चीजों को बदलने का मौका है, वास्तव में।

प्रबंधन अब अगले विचारों को जारी करने के लिए बहरा हो सकता है, लेकिन परियोजना गुणवत्ता प्रगति के मजबूत ठोस सबूतों के सामने उन पर पुनर्विचार करने का एक अच्छा मौका है।

  • यह काफी संभावना है कि पूरी तरह से इसे छोड़ने के लिए योजनाबद्ध रिलीज और प्रबंधन के निर्णय के लिए ठंड कोड के बीच लंबे समय तक रहेगा। वह समय आपका मौका है: यदि आप ज्ञात मुद्दों को ठीक करने के प्रयास पर ध्यान केंद्रित करते हैं और प्रगति को अच्छी तरह से "प्रचारित" करते हैं, तो इससे अंतर हो सकता है (जैसा कि यह एक बार मेरे लिए बनाया गया था)।

4

यहां पहले से ही व्यावहारिक (और अन्यथा) सलाह के स्थान हैं, लेकिन मेरे लिए इस रहस्य की कुंजी निम्नलिखित दो आइटम हैं (जोर मेरा):

1.5 महीने में है समय सीमा

तथा

... हम वास्तव में सिर्फ एक ही प्रबंधक के तहत एक और देव टीम से लगभग 1-2 महीने पहले (गड़बड़ के साथ) इस परियोजना को विरासत में मिला है ...

इसलिए....

टीम पाटीर्स द एवेंजर्स में आपका स्वागत है

पहले की टीम के पास ... असफल होने की तुलना में बेहतर चीजें थीं। और किसी तरह मैनेजर साथ गया। टीमों को इस समय सीमा के करीब बदलना सबसे अच्छा परियोजना-प्रबंधन कदम नहीं है, इसलिए ... क्या हो रहा है?

सुधार: पूर्व टीम को समय सीमा से 3 महीने पहले बदल दिया गया था।

-> पता करें कि पूर्व देव टीम कैसे भागने में कामयाब रही, और वह ऐसा करती है। <-

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

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

कठोर? हाँ। लेकिन पूर्व टीमों / प्रबंधकों द्वारा खराब योजना (कम से कम!) में आपकी गलती नहीं है, 'देने में विफलता' होगी

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

5-व्यक्ति टीम, और जाने के लिए 1.5 महीने। नई टीम के पास केवल 1-2 महीने के लिए परियोजना है, इसलिए नई टीम सीखने की अवस्था में भी नहीं है । इस परियोजना के आकार पर एक मोटा अनुमान लगाते हुए, यह मुझे ऐसा लगता है कि नई टीम के सीखने की अवस्था पर कोई रास्ता नहीं है, भले ही परियोजना में कोई समस्या न हो।

तो, मुझे (अभी भी) लगता है कि आप शाफ़्ट हो चुके हैं।

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

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

लेकिन हमेशा याद रखें : इंटरनेट पर अजनबियों से कैरियर सलाह न लें।


स्पष्ट करने के लिए, पिछली टीम ने उस अर्थ में "जमानत" नहीं की थी। प्रबंधक वास्तव में अपने काम से असंतुष्ट थे और उन्होंने सोचा कि हमारी टीम बेहतर करेगी
लुईस आरएस

@LouisRhys: बहुत दिलचस्प। प्रबंधक ने सोचा कि आपकी टीम एक असफल परियोजना को चुन सकती है, इसके बारे में सब कुछ सीख सकती है, इसे बदल सकती है और इसे ~ 3 महीने में वितरित कर सकती है? निहितार्थ यह है कि आपकी टीम सभी प्रकार की भयानक है ... और आपके प्रबंधक की गिनती हीरोइक पर होती है। यह स्थिति की व्याख्या को बदल देता है ... लेकिन आपके विवरण से मुझे नहीं लगता कि यह परिणाम बदलता है। यदि आप इतने झुके हुए हैं, तो प्रबंधक को ठीक-ठीक बताएं कि आपको सफल होने के लिए क्या चाहिए (बहुत अधिक समय सहित), और इसके लिए जाएं। सौभाग्य!
स्टीवन ए। लोव

@LouisRhys: गलत धारणा को ठीक करने के लिए संपादित उत्तर, धन्यवाद!
स्टीवन ए। लोवे

हमने इस से पहले कुछ सफल प्रोजेक्ट दिए, इसलिए शायद उन्हें उम्मीद थी कि हम इस एक के साथ भी ऐसा कर सकते हैं। लेकिन, मुझे लगता है कि वह वास्तव में हमारे overestimated और कम करके आंका क्या आवश्यक है इस परियोजना के "ठीक" करने के लिए
लुइस रिज़

@LouisRhys: अपनी गलतियों के लिए खुद को मत मारो; चमत्कार में समय लगता है और पैसे खर्च होते हैं!
स्टीवन ए। लोव

3

यह आपके लिए एक अविश्वसनीय अवसर है! चलो इस पर एक उद्यमी दृष्टिकोण लेते हैं।

यह मानते हुए कि प्रबंधन चाहता है कि यह परियोजना सफल हो और आप ऐसा करने में उनकी मदद करें। यह बोध इतना महत्वपूर्ण है क्योंकि आपको विश्वास और विश्वास विकसित करना है कि आप जो चेतावनी संकेत देख रहे हैं वह वास्तव में इस परियोजना की विफलता का कारण बनने वाला है [1]।

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

अपने कौशल को बेहतर बनाने के लिए यहां अपने अवसर को पहचानें।

[१] परियोजना को रद्द करना वास्तव में सफलता होगी। असफलता बुरे के बाद अच्छा पैसा खर्च कर रही होगी।


3

तुम क्या कर सकते हो

  • इसे अपनी स्वयं की उत्कृष्टता की शर्तों के अनुसार समझें, यह "उनका" प्रोजेक्ट है, लेकिन आपका भी, स्वामित्व ले लें, भले ही आपको पता हो कि यह विफल हो जाएगा। क्यों? क्योंकि a) आप इसे कम करने में मदद कर सकते हैं, बी) चालान के समय में, यह वह जगह है जहाँ आप सबसे अधिक सीखते हैं c) आपको अपने आप को उत्कृष्टता के अपने मैट्रिक्स के माध्यम से मापना चाहिए, अपना सर्वश्रेष्ठ करने से परियोजना को बचाया नहीं जा सकता है, लेकिन आप अंत में अभी भी अपने आप पर गर्व हो सकता है

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

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

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

आप क्या नहीं कर सकते, लेकिन आपके प्रबंधन को शायद करना चाहिए

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

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

  • अपने स्वयं के उच्च प्रबंधन को अपडेट करें, इससे उन्हें अपना काम रखने में मदद मिलेगी ...

आपको क्या नहीं करना चाहिए

  • परियोजना के लिए और अधिक लोगों को जोड़ने के लिए कहें (देखें इस )

  • किसी अन्य नौकरी के लिए छोड़ें / देखें (कम से कम अभी तक नहीं), यह एक ऐसी चीज है जिसे आप सीख सकते हैं, और जो आपको एक दिन बेहतर डेवलपर या बेहतर प्रबंधक बना देगा। आप बेहतर, बेहतर समय प्रबंधन, डिजाइन बेहतर, कोड लिखना बेहतर, और साथियों और प्रबंधन के साथ बेहतर काम करना चाहते हैं। इन 2 महीनों के बाद एक नौकरी की तलाश करें यदि आप वहां काम करना पसंद नहीं करते हैं, तो किसी अन्य कारण से नहीं।

  • Whine, शिकायत करें, या प्रोजेक्ट, प्रबंधन, आपके द्वारा विरासत में मिली खराब डिजाइन, आपके द्वारा प्राप्त किए गए नौसिखिया डेवलपर्स के बारे में नकारात्मक रहें कि उन्हें आपको कुछ करने के लिए समझाने में 3 घंटे लगते हैं जो आपको 1 घंटे लगते हैं, जितना हो सके सकारात्मक रहें कर सकते हैं।

  • प्रबंधन की आलोचना करें और एक मुसीबत निर्माता के रूप में एक लक्ष्य बनें, वे एक ही नाव में हैं, और वे उन चीजों को जान सकते हैं जो आप नहीं करते हैं, आप केवल उन्हें अपडेट कर सकते हैं (हमेशा अपने स्वयं के प्रत्यक्ष प्रबंधक को अपडेट करें, उसे कभी भी बायपास न करें)

  • लोगों को दोष, (या अपने आप को), यह मदद नहीं करता है, कभी नहीं

  • इसे बहुत गंभीरता से लें, जब तक कि यह चिकित्सा उपकरण न हो, किसी की मृत्यु होने की संभावना नहीं है यदि आप समय सीमा को याद करते हैं, तो यह सॉफ्टवेयर है, हम एक जीवित, आराम के लिए समय सीमा को याद करते हैं।

यह सिर्फ मेरे दो सेंट, YMMV है


1

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

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

0

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

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

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


+1: एक डूम्ड प्रोजेक्ट त्वरित की तरह है: जितना अधिक आप चलते हैं, उतना ही आप डूबते हैं।
पाउलो स्कर्दिन

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

0

मैं केवल वही दोहरा सकता हूं जो दूसरों ने कहा है, लेकिन मैं सशक्त रूप से जोर देता हूं: हमेशा अपने सर्वश्रेष्ठ काम के लिए प्रयास करें और एक पेपर ट्रेल रखें। CYA और तकनीकी कारणों दोनों के लिए।

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

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


0

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

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


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