प्रतिनिधि इंटरव्यू विषय

प्रोडक्ट मैनेजर इंटरव्यू: क्या हमें किसी इंटरनल डेवलपर टूल को ओपन-सोर्स करना चाहिए?

प्रोडक्टकठिन
Offer.cc संपादकीय टीमप्रकाशित अपडेट किया गया

प्रश्न

आपकी कंपनी के पास एक इंटरनल डेवलपर टूल है जिसका उपयोग कई टीमें करती हैं। इंजीनियरिंग टीम योगदानकर्ताओं (contributors) और संभावित ग्राहकों को आकर्षित करने के लिए इसे ओपन-सोर्स करने का प्रस्ताव रखती है। आप यह कैसे तय करेंगे कि इसे ओपन-सोर्स किया जाए या नहीं, रिलीज़ पाथ कैसे चुनेंगे, और सफलता तथा स्टॉप-लॉस मेट्रिक्स कैसे परिभाषित करेंगे?

प्रॉम्प्ट और संदर्भ

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

इंटरव्यूअर क्या मूल्यांकन कर रहा है

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

शुरुआत में पूछे जाने वाले स्पष्टीकरण प्रश्न

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

30-सेकंड का उत्तर फ़्रेमवर्क

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

चरण-दर-चरण गहन विश्लेषण

1. इंटरनल सफलता को बाहरी समस्या परिकल्पनाओं में बदलें

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

2. प्रोडक्ट सीमाओं और रिलीज़ मॉडलों की तुलना करें

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

3. पहले लाइसेंस, डिपेंडेंसी और जोखिम समीक्षा पूरी करें

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

4. न्यूनतम व्यवहार्य पब्लिक रिलीज़ (MVP) डिज़ाइन करें

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

5. कम्युनिटी और मेंटेनेंस संचालन स्थापित करें

मेंटेनर्स, प्रतिक्रिया समय लक्ष्य, रिलीज़ की आवृत्ति, सुरक्षा प्रकटीकरण (disclosure) चैनल, आचार संहिता (code of conduct) और पारदर्शी निर्णय प्रक्रिया तय करें। योगदान दिशानिर्देशों में यह स्पष्ट होना चाहिए कि इशू, टेस्ट, डॉक्यूमेंटेशन और कोड कैसे सबमिट करें; समीक्षकों को बाहरी योगदानों पर भी समान मानक लागू करने चाहिए। उपयोगी चर्चाओं, मर्ज करने योग्य योगदानों, इशू बंद होने के समय और मेंटेनर लोड को ट्रैक करके केवल डाउनलोड्स और एक स्वस्थ कम्युनिटी के बीच अंतर करें।

6. विस्तार करने या रोकने के लिए चरणबद्ध मेट्रिक्स का उपयोग करें

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

मॉडल उच्च-गुणवत्ता वाला उत्तर

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

सामान्य गलतियाँ

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

फॉलो-अप प्रश्न और उत्तर

क्या इसे ओपन-सोर्स करना उचित है यदि केवल एक इंटरनल टीम इसका उपयोग करती है?

अपर्याप्त सबूत होने पर, इंटरनल पैमाने को निर्णय नियम के रूप में उपयोग करने के बजाय बाहरी समस्या को वैलिडेट करें और एक छोटा प्रोटोटाइप बनाएं। यदि बाहरी यूज़र्स इसे स्वतंत्र रूप से इंस्टॉल नहीं कर सकते हैं या इसका मूल्य कंपनी के वर्कफ़्लो पर निर्भर करता है, तो इसे इंटरनल रखें या केवल एक अमूर्त (abstracted) घटक को उजागर करें।

हमें कौन सा लाइसेंस चुनना चाहिए?

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

क्या योगदानकर्ताओं (contributors) की कमी का मतलब है कि प्रोजेक्ट विफल हो गया?

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

सार्वजनिक मेंटेनेंस कब बंद कर दिया जाना चाहिए?

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

सार्वजनिक स्रोत

संबंधित प्रश्न