चलो सामना करते हैं। डेवलपर अनुभव एक मूलमंत्र है। इसका मतलब है कि बहुत कम सार या परिभाषा के साथ सामान्य शब्दों में इसके बारे में बहुत कुछ कहा जाता है।
इसलिए मैं देव-एक्स प्रोजेक्ट शुरू करने के लिए प्रेरित हुआ - डेवलपर अनुभव चर्चा में अधिक बनावट और परिभाषा लाने के लिए एक पहल। प्रत्येक "एपिसोड" में मैं एक उद्योग के नेता से इन विशिष्ट विषयों पर उनकी अंतर्दृष्टि और राय एकत्र करने के लिए डेवलपर के अनुभव के बारे में 10 प्रश्न पूछता हूं। मैं फिर इन चर्चाओं को प्रकाशित करता हूं और उन्हें समुदाय के साथ साझा करता हूं।
मेरे बेल्ट के तहत लगभग 20 साक्षात्कारों के साथ, अब इसे उपयोगी तरीकों से एकत्र करना शुरू करने के लिए पर्याप्त सामग्री है, और कुछ रोचक प्रवृत्तियों और दोहराए जाने वाले विषयों को उजागर करें।
यह एक महान इंजीनियरिंग संस्कृति बनाने का अंतिम मार्गदर्शक है। DevX प्रोजेक्ट के साक्षात्कारों में मैंने जो प्रश्न पूछे हैं उनमें से एक है "एक महान इंजीनियरिंग संस्कृति के प्रमुख तत्व क्या हैं"।
यह एक महत्वपूर्ण प्रश्न है क्योंकि दिन के अंत में आपकी कंपनी में सब कुछ प्रभावित होगा - आपके द्वारा बनाई गई संस्कृति से - बेहतर के लिए बदतर के लिए। जैसा कि लिरन हैमोविच ने कहा: "संस्कृति नाश्ते के लिए रणनीति खाती है, क्योंकि संस्कृति आपकी टीमों को अप्रत्याशित परिस्थितियों में पूर्वानुमेय तरीके से कार्य करने की अनुमति देती है।"
तो संस्कृति वास्तव में क्या है? अच्छा प्रश्न। मैंने जानबूझकर उस हिस्से को व्याख्या के लिए खुला छोड़ दिया, और प्रतिक्रियाएँ समान रूप से व्यापक थीं। कुछ साक्षात्कारकर्ताओं ने स्वयं डेवलपर्स पर ध्यान केंद्रित किया। दूसरों ने कंपनियों और कंपनी की नीति पर ध्यान केंद्रित किया। कुछ ने तकनीकी या पेशेवर सलाह दी जबकि अन्य ने पारस्परिक संबंध और संचार सुझाव दिए।
और यह सबसे पहला और शायद सबसे महत्वपूर्ण बिंदु है। वास्तव में एक महान इंजीनियरिंग संस्कृति को कई वस्तुओं को समानांतर में संतुलित करने की आवश्यकता होती है।
विशिष्टता प्रति संगठन और प्रति स्थिति में भिन्न हो सकती है, लेकिन सामान्य भाजक को त्रि-आयामी संस्कृति-निर्माण दृष्टिकोण की आवश्यकता है।
इसलिए मुझे उम्मीद है कि आप एक महान इंजीनियरिंग संस्कृति के निर्माण के लिए इस डेवलपर अनुभव गाइड का आनंद लेंगे, जिसे देवएक्स प्रोजेक्ट साक्षात्कार से एकत्र और अनुकूलित किया गया है।
कई DevX प्रोजेक्ट की विशेषताएं डेवलपर्स के लिए स्वतंत्रता और स्वायत्तता की संस्कृति बनाने के महत्व को प्रतिध्वनित करती हैं।
जैसा कि एक्सिओम के सेफ लोट्फी ने कहा: "मुझे लगता है कि यह वास्तव में उस पर निर्भर करता है जिसके बारे में डैन पिंक ने अपनी पुस्तक" ड्राइव - द सरप्राइज ट्रुथ अबाउट व्हाट मोटिवेट अस" में बात की है। वह प्रमुख प्रेरणा कारकों के रूप में स्वायत्तता, महारत और उद्देश्य का परिचय देता है। इसलिए जब आप डेवलपर्स को अपने शिल्प में महारत हासिल करने की स्वायत्तता देते हैं, तो वे एक ऐसा उद्देश्य भी विकसित करते हैं जो एक महान संस्कृति बनाता है ... और इंजीनियरों पर टूल को मजबूर न करें। मुझे लगता है कि आपको अपने इंजीनियरों को अपने टूल्स चुनने देना चाहिए। उन्हें स्वायत्तता और स्वामित्व के साथ सशक्त बनाएं।
विक्टर फ़ार्सिक ने कहा: "मेरे लिए सबसे महत्वपूर्ण बात निर्णय लेने की स्वतंत्रता है। मेरा मानना है कि कई कंपनियां इंजीनियरों के साथ ऐसा व्यवहार कर रही हैं जैसे कि वे बच्चे हों - उनका हाथ पकड़कर उन्हें बता रही हैं कि क्या करना है। अब आप सड़क पार कर सकते हैं, अब आपको रुकने की जरूरत है। अब तुम बाएँ चलते हो अब तुम दाएँ चलते हो। मेरे लिए, यह वास्तव में किसी भी रचनात्मकता और डेवलपर्स के बीच सीखने की क्षमता को कुचलने वाला हो सकता है। यह विनाशकारी है क्योंकि मेरा मानना है कि डेवलपर्स के रूप में हमारा अधिकांश काम सोच रहा है और चीजों को समझ रहा है। कोड लिखना आसान है। एक बार जब आप जान जाते हैं कि क्या लिखना है और यह मानते हुए कि आपको सिंटैक्स और इस तरह की चीजों की कम से कम बुनियादी समझ है, तो कोड लिखना प्रक्रिया का सबसे आसान हिस्सा है। यह पता लगाना कि क्या लिखना है और कैसे लिखना है - यह जटिल हिस्सा है। और अगर हम लोगों को इस सामान को निकालने के लिए पर्याप्त स्वतंत्रता नहीं देते हैं, तो हम उन परिणामों के साथ समाप्त हो जाते हैं जो हम नहीं चाहते थे - सामान काम नहीं करता क्योंकि डेवलपर्स सिर्फ रोबोट थे जिन्होंने ठीक वही किया जो आपने उन्हें बिना किसी के बताया था उनकी अपनी सोच या रचनात्मकता।
डेवलपर स्वायत्तता के लाभ तकनीकी निर्णयों तक ही सीमित नहीं हैं। यह टीम के सदस्यों के बीच बेहतर पारस्परिक संबंधों को बढ़ावा देने में भी मदद कर सकता है। सेफ लोट्फी ने प्रामाणिक संबंध बनाने के लाभों पर जोर दिया और उन्होंने समझाया कि "सुपर-प्रोफेशनल रिश्ते से परे, टीम को चारों ओर घूमने और स्वयं होने की स्वतंत्रता दें और एक दूसरे की सराहना करें कि वे कौन हैं।"
स्वायत्तता का अर्थ है लोगों को स्वयं का सर्वश्रेष्ठ, प्रामाणिक संस्करण बनने देना। और जब ऐसा होता है, तो यह अक्सर टीम और कंपनी के लिए सकारात्मक परिणाम देता है।
यह भी मदद करता है, जैसा कि बराक शोस्टर ने कहा, यदि आप "स्मार्ट लोगों को किराए पर ले सकते हैं जो काम करने में मज़ेदार हैं"।
डेवलपर्स को स्वायत्तता देने से डेवलपर्स को अपने काम के लिए सक्रिय स्वामित्व और उत्तरदायित्व लेने की आवश्यकता होती है।
लिरन हैमोविच के अनुसार, किसी भी महान संस्कृति में स्वामित्व और उत्तरदायित्व दो सबसे महत्वपूर्ण तत्व हैं।
शॉन "स्वाइक्स" वांग ने इस बात पर जोर दिया कि यह स्वामित्व "सक्रिय स्वामित्व" होना चाहिए: "अमेजन के 16 नेतृत्व सिद्धांतों की सूची में आइटम #9 -" कार्रवाई के लिए एक पूर्वाग्रह "। मुझे ऐसा लगता है कि इस संदर्भ में यह महत्वपूर्ण है, क्योंकि यदि आप उन पर सक्रिय स्वामित्व नहीं लेते हैं तो बहुत सी चीजें पूरी नहीं होती हैं। तो यह वास्तव में एक स्वस्थ, इंजीनियरिंग संस्कृति के लिए महत्वपूर्ण है।"
Seif Lotfy ने प्रतिबिंबित किया कि डेवलपर्स के लिए संवाद करना और क्यों पूछना महत्वपूर्ण है: “सुनिश्चित करें कि आप उस विचार को समझते हैं जो अन्य लोगों के दृष्टिकोण और निर्णयों में जाता है। इस तरह, भले ही आप असहमत हों, आप सब कुछ ध्यान में रख सकते हैं और आगे बढ़ने के लिए सर्वोत्तम संभव मार्ग खोजने का प्रयास कर सकते हैं।
अमीर शेवत ने कहा कि यह स्पष्टीकरण मांगने वाले किसी पर निर्भर नहीं होना चाहिए। आपको एक ऐसी संस्कृति का निर्माण करना चाहिए जो सामने "क्यों" पेश करे:
"अपना ज्ञान साझा करें और समझाएं कि आप एक्स के साथ क्यों गए और वाई नहीं। इस तरह लोग आपसे सीख सकते हैं और अपने दैनिक जीवन में भी आपकी सर्वोत्तम प्रथाओं और आपकी अनूठी सोच को अपना सकते हैं।
समान और कोई कम महत्वपूर्ण मूल्य पारदर्शिता नहीं है।
अमीर शेवत ने समझाया: "पारदर्शिता बहुत महत्वपूर्ण है। इसका अर्थ है एक ऐसा वातावरण बनाना जिसमें इंजीनियर बड़ी तस्वीर देख सकें - हम कहाँ जा रहे हैं, हम वह क्यों कर रहे हैं जो हम कर रहे हैं। डेवलपर्स के लिए इस प्रकार का वातावरण बनाने से वे बेहतर कोड बनाने में सक्षम होंगे।"
जब संचार और पारदर्शिता को ठीक से बनाए रखा जाता है, तो आप "ईमानदारी" में एक और महत्वपूर्ण सांस्कृतिक घटक भी प्राप्त करते हैं। जैसा कि आमिर ने कहा: "अगर आपको लगता है कि कुछ सही नहीं है - बोलें। प्रक्रियाएं बेहतर के लिए बदल सकती हैं और विकसित होनी चाहिए।"
विल्को से शेम मैग्नेज़ी ने एक समान परिप्रेक्ष्य की पेशकश की: "कुंजी हमेशा यह सोचने की है कि हम क्या सुधार कर सकते हैं: हमारे सिस्टम, प्रक्रियाओं, उत्पाद, कोड शैली, निगरानी उपकरण और क्या नहीं। एक प्रणाली के निर्माण के अनगिनत पहलू हैं और यह कभी भी पूर्ण नहीं होगा - लेकिन हमें हमेशा सुधार के तरीकों की तलाश करनी चाहिए।" यह एक ऐसा तरीका है जिससे संचार, पारदर्शिता और अखंडता एक अच्छी इंजीनियरिंग संस्कृति में प्रकट होती है।
स्विक्स और जेसन बोस्को दोनों ने सुझाव दिया कि एक दोषरहित प्रतिक्रिया और पोस्ट-मॉर्टम संस्कृति महत्वपूर्ण है।
स्विक्स के शब्दों में: "जब आप सामान भेजते हैं और आप उत्पादन में चीजों को बनाए रखते हैं, तो याद रखें कि चीजें हमेशा टूट जाएंगी। इसलिए दोषरहित पोस्ट-मॉर्टम संस्कृति का होना भी महत्वपूर्ण है।"
यह आमिर शेवत द्वारा भी प्रतिध्वनित किया गया था, जिन्होंने कहा कि टीम में सभी को प्रतिक्रिया प्राप्त करने के लिए खुला होना चाहिए: "एक सामान्य नियम के रूप में, जो इंजीनियर एक-दूसरे से प्रतिक्रिया के लिए खुले हैं, वे अपना काम करने में बहुत बेहतर हैं।
और आप शून्य-दोष संस्कृति कैसे प्राप्त कर सकते हैं? Seif Lotfy के अनुसार, यह आपकी अंतर्निहित धारणाओं पर काम करके शुरू होता है: “एक अंतर्निहित धारणा विकसित करना महत्वपूर्ण है कि हर कोई अच्छी तरह से मतलब रखता है। यह वितरित टीमों के साथ विशेष रूप से महत्वपूर्ण है जो अलग-अलग समय क्षेत्रों और शेड्यूल पर हैं।"
यदि हर कोई मानता है कि बाकी सभी का मतलब अच्छा है, और टीम का प्रत्येक सदस्य बिना दोष के प्रतिक्रिया के लिए खुला है - तो टीम प्रभावी ढंग से काम करने के लिए अच्छी स्थिति में होगी।
सांसारिक देव से एडम गॉर्डन बेल ने इसे इस तरह रखा: "एक महान संस्कृति विश्वास और समझ पर आधारित है। वे दोनों साझा अनुभवों के आधार पर समय के साथ निर्माण करते हैं। ”
आश्चर्य की बात नहीं है, इंजीनियरिंग संस्कृति के लिए एक महत्वपूर्ण घटक के रूप में सहयोग एक संदेश था जो हमारे कई साक्षात्कारों में प्रतिध्वनित हुआ।
जैसा कि विक्स की हिला फिश ने कहा: "सर्वश्रेष्ठ समाधानों को सामने लाने के लिए, और यह सुनिश्चित करने के लिए कि अंतिम लक्ष्य प्राप्त हो गया है, आपको दूसरों के साथ सहयोग करने की आवश्यकता है।"
और अमीर शेवत ने समझाया: "मुझे लगता है कि सहयोगी लोगों की एक टीम हमेशा एक कम सहयोगी टीम से बेहतर प्रदर्शन करेगी, भले ही वह कम सहयोगी टीम" अद्भुत "व्यक्तिगत इंजीनियरों से भरी हो। मैं व्यक्तिगत रूप से इंजीनियरिंग टीमों का हिस्सा रहा हूं जो इतने सहयोगी नहीं थे। उनके पास अद्भुत, अद्भुत इंजीनियर थे, लेकिन वे वास्तव में साझा नहीं करते थे कि वे क्या कर रहे थे। जब लोग सहयोग करना, साझा करना, फीडबैक प्रदान करना और प्रत्येक व्यक्ति जिस पर काम कर रहा है, उसके बीच इंटरफेस के बारे में बात करना शुरू करते हैं तो यह कहीं अधिक फायदेमंद होता है।
शिल्प और उत्पाद के लिए एक जुनून
नोरफ़्लैंक के टॉम स्नेलिंग ने कहा: "मुझे लगता है कि एक टीम के पास जो सबसे अच्छी चीज़ हो सकती है वह है उस उत्पाद के लिए वास्तविक जुनून जो वे बना रहे हैं। उन परियोजनाओं पर काम करने के बाद जो मेरे पास हैं और जिनमें निवेश नहीं किया गया है, मनोबल (और इस प्रकार आउटपुट) में अंतर आश्चर्यजनक है। जब इंजीनियर वास्तव में इस बात की परवाह करते हैं कि वे किस पर काम कर रहे हैं, तो मुझे लगता है कि संस्कृति दस गुना बेहतर हो जाती है। स्मार्ट लोगों को किराए पर लें जो आपके प्रोजेक्ट पर काम करना चाहते हैं ।
अमीर शेवत ने एक महान इंजीनियरिंग संस्कृति बनाने में व्यावसायिकता के महत्व पर जोर दिया: “हमेशा कंपनी की जरूरतों के बारे में सोचें। यह आपके काम के हर पहलू पर लागू होना चाहिए... और जबकि तकनीकी होना महान और आवश्यक भी है, अपनी व्यावसायिक मानसिकता को प्रशिक्षित करने से वास्तव में एक ऐसी संस्कृति बनाने में मदद मिलेगी जहां केवल सबसे तकनीकी समाधानों को ही प्राथमिकता नहीं दी जाती है, बल्कि उन समाधानों को प्राथमिकता दी जाती है जो हासिल करने में मदद करते हैं। कंपनी के लिए सबसे अच्छा परिणाम। ”
राउंडफॉरेस्ट के गिल तयार ने सहमति व्यक्त की: "मेरे लिए, एक महान इंजीनियरिंग संस्कृति के प्रमुख तत्व हैं: अच्छे लोग। बहुत अहंकार नहीं। शिल्प में व्यावसायिकता और गर्व। ये तत्व एक रचनात्मक वातावरण स्थापित करते हैं और इन सामग्रियों के बिना सकारात्मक, उत्पादक संस्कृति बनाना कठिन है।
अधिक तकनीकी दृष्टिकोण से, Swyx ने सलाह दी कि टीमें अपने प्रलेखन पर जोर देती हैं: “एक अच्छा दस्तावेज़ीकरण या डिज़ाइन डॉक्टर संस्कृति भी बहुत महत्वपूर्ण है। दूसरे शब्दों में, इससे पहले कि आप कुछ लागू करें, आपको स्पष्ट रूप से इसे डिजाइन करने का प्रयास करना चाहिए और प्रस्तावों के माध्यम से सोचना चाहिए और सभी के साथ उच्च स्तरीय सामान पर सहमत होना चाहिए। लेकिन एक अच्छी संस्कृति इसे एक कदम आगे ले जाती है। इसका मतलब यह है कि हर कोई वास्तव में दस्तावेज़ प्राप्त होने पर उसे पढ़ता है। और यह काफी दुर्लभ है। इसलिए एक अच्छी प्रलेखन संस्कृति का अर्थ है अच्छा लेखन और अच्छा पठन ताकि आप डिजाइन के मुद्दों और बेमेल अपेक्षाओं को जल्द से जल्द पकड़ सकें।
अमीर शेवत ने एक स्वस्थ डिलीवरी ताल के मूल्य पर प्रकाश डाला: "इंजीनियरिंग संस्कृति के लिए डिलीवरी का एक स्वस्थ ताल होना भी बहुत महत्वपूर्ण है क्योंकि जब एक टीम डिलीवरी करना जारी रखती है, तो वे नियमित रूप से अपने काम से खुशी और संतुष्टि का लाभ उठा पाती हैं।"
बराक शूस्टर ने इसी तरह टीमों को "पुनरावृत्ति गति के लिए अनुकूलित" करने के लिए प्रोत्साहित किया।
और जेसन बॉस्को ने कहा: "मेरे लिए कुछ महत्वपूर्ण सामग्री हैं: एक इंजीनियर कोड लिखने और इसका उपयोग करने वाले उपयोगकर्ताओं के बीच लगने वाले समय को कम करना, सहज रोलबैक के साथ जोड़ा गया ..."
जबकि यह हमारे कई साक्षात्कारों में किसी न किसी रूप में सामने आया, सर्कट और इन प्लेन इंग्लिश के सुनील संधू ने इसे अच्छी तरह से रखा: "विनम्रता मेरे लिए उच्च स्थान रखती है और यह केवल इंजीनियरिंग के लिए नहीं है, बल्कि सामान्य रूप से कार्य संस्कृति के लिए है। टीम के सदस्यों को दूसरों की मदद करने के लिए इच्छुक और तैयार होना चाहिए, एक ऐसे माहौल का पोषण करना चाहिए जहां कोई भी यह महसूस न करे कि एक सवाल पूछने के लिए बहुत बेवकूफी है।
मुझे लगता है कि यहां बहुत सारे क्लिच उत्तर हैं जो मैं यहां दे सकता हूं और कुछ हद तक, मुझे लगता है कि कई और अनुभवी डेवलपर हैं जो इसका बेहतर उत्तर दे सकते हैं। तो एक अंतिम बात जो मैं आगे रखूंगा वह यह है कि जब एक टीम मिशन-उन्मुख है, और वह टीम सभी एक ही भजन शीट से गा रही हैं, आश्चर्यजनक चीजें हो सकती हैं।
और गिल टायर के शब्दों में: "मेरे लिए, एक महान इंजीनियरिंग संस्कृति के प्रमुख तत्व हैं: अच्छे लोग। बहुत अहंकार नहीं। शिल्प में व्यावसायिकता और गर्व।”
जाहिर है, एक अच्छे इंजीनियर के पास तकनीकी क्षमता की एक निश्चित आधार रेखा होनी चाहिए। लेकिन एक टीम का निर्माण और प्रबंधन करते समय, ये अतिरिक्त कारक हैं जो यह सुनिश्चित करेंगे कि वे एक-दूसरे को उच्च मानकों पर रखें, जिज्ञासु बने रहें, सकारात्मक बने रहें और लगातार सुधार करने का प्रयास करें।
और यही एक महान इंजीनियरिंग संस्कृति है।
जैसा कि आप यहां क्या ढूंढ़ते हो? विशेष रुप से प्रदर्शित होना चाहते हैं? अन्य बेहतरीन सुविधाओं के लिए और अपने स्वयं के डेवलपर अनुभव ज्ञान को साझा करने के लिए आवेदन करने के लिए हमारे DevX प्रोजेक्ट को देखें।
यहाँ भी प्रकाशित हुआ।