प्रौद्योगिकी निर्णय लेना (और उबाऊ प्रौद्योगिकी)

मुझे अपने एक कम्युनिटी स्लैक चैनल के माध्यम से डैन मैककिनले द्वारा बोरिंग टेक्नोलॉजी को चुनने के लिए एक लिंक मिला । इसने मुझे परस्पर संबद्धता के बारे में सोचने पर मजबूर कर दिया: जटिलता और तकनीकी ऋण, डेवलपर उत्पादकता और वेग, इंजीनियरिंग संस्कृति और निर्णय लेने की क्षमता। अंततः, मैं इस निष्कर्ष पर पहुंचा कि निर्णय लेने की संस्कृति - निर्णय कैसे किए जाते हैं - का इंजीनियरिंग संगठन की दीर्घकालिक उत्पादकता पर बहुत बड़ा प्रभाव पड़ता है।
सबसे पहले, बोरिंग टेक्नोलॉजी से कुछ हाइलाइट्स। मेरे साथ प्रतिध्वनित होने वाली तीन प्रमुख वस्तुएँ:
1. एक प्रौद्योगिकी की दीर्घकालिक रखरखाव लागत कुल लागत पर हावी होती है और अल्पकालिक वेग लाभ से कहीं अधिक होती है।
हम चल रही रखरखाव लागतों को हमेशा पूरी तरह से स्वीकार किए बिना एक नई तकनीक के लाभों पर ध्यान केंद्रित करते हैं - जो अक्सर लंबे समय तक हावी रहती हैं।
जिस तरह से हम व्यवहार करते हैं वह वास्तव में इस बात पर निर्भर करता है कि आप क्या मानते हैं कि वास्तविक दुनिया में कौन सा शब्द इस समीकरण पर हावी है।
यदि प्रौद्योगिकी संचालित करने के लिए वास्तव में महंगी है, तो लागत हावी हो जाती है। यदि प्रौद्योगिकी वास्तव में आपके काम को कितना आसान बनाती है, तो लाभ हावी हो जाते हैं।
#48

2. लोग (अक्सर) डेटाबेस पसंद पर बहुत राय रखते हैं ...
मैं उन लोगों की सूची में शामिल हूं जो बहुत ही स्वच्छंद हैं, लेकिन इस तथ्य से संबंधित कारणों के लिए अधिक है कि मैं अच्छी तरह से समझता हूं कि किसी विशेष आरडीबीएमएस या डेटा स्टोरेज तकनीक को वास्तव में समझने के लिए आवश्यक विशेष ज्ञान का निर्माण करने में कितना समय और प्रयास लगता है।
मेरे अनुभव में यह यहीं के बारे में है जहां पहिए उतरते हैं। लोग अपनी गंदगी खो देते हैं और अपने बहुभाषाविद प्रोग्रामर ड्रम को पीटना शुरू कर देते हैं। एक नया डेटाबेस जोड़ने के विचार के बारे में कुछ ऐसा है जिसमें लोगों ने बैस्टिल को तूफान कर दिया है, "आप हमें नौकरी के लिए सबसे अच्छे उपकरण का उपयोग करने से नहीं रोक सकते हैं।"
और जब लोग इस वृत्ति के शिकार हो जाते हैं तो वे खुद से कहते हैं कि वे डेवलपर्स को आजादी दे रहे हैं। और निश्चित रूप से, यह स्वतंत्रता है, लेकिन यह स्वतंत्रता क्या है इसकी एक बहुत ही संकीर्ण परिभाषा है। #36
यहाँ मुद्दा यह है कि यदि निर्णय लेने के लिए कोई ठोस प्रक्रिया नहीं है तो राय और स्वतंत्रता और/या संतुष्टि की धारणा प्रौद्योगिकी पसंद की कथा पर हावी हो सकती है।
3. अंततः, उत्पादों (सिस्टम) के निर्माण और रखरखाव में हमारा लक्ष्य एक सफल व्यावसायिक परिणाम का समर्थन करना है। फैंसी तकनीक बनाने के लिए नहीं।
मेरे पहले सास स्टार्ट-अप अनुभव पर वापस जा रहे हैं - हमने बोरिंग तकनीक पर एलोक्वा का निर्माण किया - विजुअल बेसिक (मजाक नहीं, यह वर्ष 2000 था), एसक्यूएल सर्वर, आईआईएस।
उन पहले कुछ वर्षों में, मैंने तैनाती को स्वचालित करने और बुनियादी समापन बिंदु निगरानी करने के लिए कुछ उबाऊ उपकरण बनाए (आपने अनुमान लगाया - विज़ुअल बेसिक में भी)। (यह प्री-पब्लिक-क्लाउड था, लोग!) मेरा मुख्य लक्ष्य खुद का समय बचाना और तैनाती में त्रुटियों को कम करना था - हमारे पास बहुत दुबली टीम थी, और इन उपकरणों ने हमारी दक्षता में भौतिक रूप से सुधार किया।
2008 में, कंपनी के जीवनचक्र में आठ साल, मेरी नौ व्यक्ति "प्रोडक्शन ऑपरेशंस" टीम ने डेटा सेंटर, सभी हार्डवेयर और इन्फ्रा, नेटवर्क और डेटाबेस विशेषज्ञता का समर्थन किया। प्रतिदिन, हमने लाखों-करोड़ों का लेन-देन देखा। Q4 2008 में, हमने 99.998% अपटाइम को बनाए रखा, और हमने इस वास्तव में उबाऊ प्रौद्योगिकी स्टैक पर लागत कम करते हुए ऐसा किया।
जाहिर है कि एलोक्वा में यह बोरिंग स्टैक बहुत अलग दिखता अगर हम इसे पिछले पांच से दस वर्षों में उपलब्ध तकनीकों के साथ बनाते। और, कुछ विशिष्ट तकनीकों के साथ हम महत्वपूर्ण लाभ देख सकते थे। लेकिन मौजूदा तकनीकों के साथ, एक नई प्रबंधित सेवा को स्पिन करने में आसानी को स्वामित्व की लंबी अवधि की कुल लागत के मुकाबले तौला जाना चाहिए।
इसलिए:
आपके पास अपने ढेर में प्रौद्योगिकी जोड़ने की एक प्रक्रिया होनी चाहिए जिसमें अन्य मनुष्यों से बात करना शामिल हो। #86

आप 20+ टीमों के पैमाने पर ये निर्णय कैसे लेते हैं?
FreshBooks में, हमने इन प्रश्नों के माध्यम से काम करने में बहुत समय बिताया, और अंततः निर्णय लेने की प्रक्रिया में स्पष्टता और पदार्थ लाने की दिशा में काम किया:
- महत्वपूर्ण, धीरे-धीरे बदलती जानकारी और प्रक्रियाओं को स्पष्ट रूप से दस्तावेज़ करने के लिए इंजीनियरिंग दस्तावेज़ीकरण जो संगठन के लिए महत्वपूर्ण हैं
- टीमों को यह समझने में मदद करने के लिए एक निर्णय लेने की रूपरेखा कि टीम स्तर बनाम संगठनात्मक स्तर पर क्या निर्णय लिए जा सकते हैं और प्रलेखन के लिए कहाँ जाना है
- एक आंतरिक तकनीकी राडार जो उन उपकरणों, तकनीकों का वर्णन करता है जिन्हें अपनाया जाना चाहिए और नहीं
- नए दृष्टिकोणों या प्रौद्योगिकियों के मूल्यांकन और सिफारिश के लिए एक रूपरेखा के लिए टिप्पणियों के लिए अनुरोध (आरएफसी) प्रक्रिया
- आर्किटेक्चर डिसीजन रिकॉर्ड्स (ADRs) दस्तावेज़ निर्णयों के लिए
मैंने हाल ही में FreshBooks से आगे बढ़ने का निर्णय लिया है, लेकिन मुझे आशा है कि इन सामूहिक दृष्टिकोणों से टिकाऊ निर्णय, कम जटिलता और उत्पादकता में वृद्धि होगी। ( फ्रेशबुक के लोग - मुझे ईमानदार रखें और मुझे बताएं कि यह कैसे निकलता है ... )
एलोक्वा को लौटें। हमने कंपनी के इतिहास के बड़े हिस्से के लिए अपने उबाऊ प्रौद्योगिकी विकल्पों को आवश्यकता से बाहर कर दिया। हमने एक नई श्रेणी बनाई - मार्केटिंग ऑटोमेशन - लेकिन एक ऐसी संस्कृति थी जिसे तकनीकी नवाचार में कम माना जाता था (और शायद था)। हमारे पास एक मजबूत निर्णय लेने की प्रक्रिया नहीं थी, लेकिन हमारे निर्णय उद्यम बी2बी राजस्व स्ट्रीम का समर्थन करने की आवश्यकता से काफी प्रभावित थे।
अंततः, हमने एलोक्वा और इसके बोरिंग-टेक-स्टैक को ओरेकल को लगभग $900M में बेच दिया। मुझे पूरा यकीन है कि आवर्ती राजस्व और राजस्व वृद्धि दर इस सौदे में उनकी प्रमुख रुचि थी ... और हमारे उबाऊ प्रौद्योगिकी विकल्पों ने उचित परिश्रम को आसानी से पार कर लिया।