लोगों की बात सुनने के काम से इंजीनियरिंग के जरिए बचने की कोशिश न करें
(ashley.rolfmore.com)- सॉफ़्टवेयर के कामकाजी माहौल की मुख्य कठिनाई बातचीत की कमी से ज़्यादा सुनने की कमी है, और इसे framework या system जैसे शब्दों में बदलकर हल करने की कोशिश वास्तव में ज़रूरी सुनने से बच निकलती है
- किसी के अनुरोध को जस का तस पूरा करना, उसकी वास्तविक ज़रूरत समझने से अलग है, और विशेषज्ञता प्रभाव तथा technical/non-technical द्विभाजन सामने वाले के ज्ञान और संदर्भ को नज़रअंदाज़ कर देते हैं
- अगर यह मान लिया जाए कि सभी के पास समान ऊर्जा, कौशल और धन है, या किसी एक व्यक्ति की विशेषता को पूरे समूह पर लागू कर दिया जाए, तो हर व्यक्ति की अलग बाधाओं और निर्णय मानदंडों को ठीक से पकड़ा नहीं जा सकता
- लोग और संगठन समय, भूमिका, तनाव और समूह गतिशीलता के साथ बदलते रहते हैं, और जो कहा जाता है वह हमेशा असली सोच से मेल नहीं खाता, इसलिए स्थिर requirements अक्सर सॉफ़्टवेयर निर्माण से आसानी से असंगत हो जाते हैं
- सुनने में विफलता सबसे मूल्यवान insights को खो देती है, और इससे राजस्व अवसर तथा प्रतिस्पर्धी बढ़त का नुकसान होता है, साथ ही गलतफहमियों के जमा होने से tech debt भी बढ़ता है
मुख्य तर्क
- सॉफ़्टवेयर के कामकाजी माहौल में लोगों के बीच बातचीत की कमी से भी बड़ा मुद्दा सुनने की कमी है, और इसे framework या system जैसे शब्दों में बदलकर हल करने की कोशिश वास्तव में आवश्यक काम से बचने का तरीका है
- डिज़ाइनर और product से जुड़े लोग अक्सर लोगों के साथ बातचीत को engineering के लिए अधिक स्वीकार्य अभिव्यक्ति में बदलने की कोशिश करते हैं, लेकिन बेहतर व्यवस्था से ज़्यादा ज़रूरी है लोगों की बात सही तरह से सुनना
- इस आधार पर कि लोगों से बात करने की तुलना में लोगों की बात सुनना अधिक कठिन है, वास्तव में सुनने में बाधा बनने वाले प्रमुख जालों को व्यवस्थित किया गया है
सुनने में बाधा डालने वाले प्रमुख जाल
-
जो कहा गया है वही कर देना और सुनना अलग बातें हैं
- किसी ने जो चाहा है उसे वैसा ही कर देना और वास्तविक ज़रूरत को सुनना एक ही बात नहीं है
- इस विषय से जुड़े पुराने तरीकों के रूप में Jobs To Be Done, Outcome Driven Innovation, और UX क्षेत्र की empathy mapping का उल्लेख है
-
विशेषज्ञता प्रभाव के कारण अपनी दृष्टि को कम आंकना
- किसी क्षेत्र में लंबे समय तक सीखने पर आसानी से यह मान लिया जाता है कि "इतना तो सभी जानते होंगे"
- सामने वाला उस क्षेत्र का विशेषज्ञ हो तब भी यह ज़रूरी नहीं कि वह वही ज्ञान जानता हो, बल्कि वह अलग तरह का ज्ञान जान सकता है
- सही तरह से सुनने के लिए यह अधिक समझना ज़रूरी है कि सामने वाला क्या जानता है
-
technical को एक ही श्रेणी मान लेना
- यह सॉफ़्टवेयर डेवलपर्स में खास तौर पर आम जाल है; technical कोई एक गुण नहीं बल्कि अलग-अलग ज्ञान क्षेत्रों का बहुत व्यापक स्पेक्ट्रम है
- अगर लोगों को "technical / non-technical" द्विभाजन में देखा जाए, तो insights छूट जाते हैं और सही तरह से सुन न पाने की संभावना बढ़ती है
-
यह मान लेना कि सभी के पास समान संसाधन हैं
- अगर यह मान लिया जाए कि सभी के पास समान ऊर्जा, समान कौशल और समान अतिरिक्त धन है, तो गलत निर्णय होते हैं
- समान स्वास्थ्य वाले लोग भी उसे संभालने के तरीके या वास्तव में कर सकने वाले कामों में अलग हो सकते हैं
- कोई गणित में मजबूत हो सकता है, कोई दूसरी क्षमताओं में, और किसी के पास धन या अतिरिक्त गुंजाइश कम होने के कारण वह अधिक risk-averse तरीके से व्यवहार कर सकता है
-
एक व्यक्ति की विशेषता को पूरे समूह पर लागू कर देना
- किसी एक विशेषता वाले व्यक्ति से मिलने का मतलब यह नहीं कि बाकी सब भी वैसे ही होंगे
- उदाहरण के तौर पर यह रवैया कि बुज़ुर्ग लोग कंप्यूटर नहीं समझते
- पूरे महिला समुदाय को व्यक्तिगत पारिवारिक संबंधों की छवि में समेट देना भी इसी तरह की गलती है
-
यह मान लेना कि लोग और संगठन स्थिर हैं
- व्यापक स्तर पर व्यक्तित्व समय के साथ बदलता है
- सूक्ष्म स्तर पर कार्यस्थल की persona और घर की छवि अलग हो सकती है, और तनाव या कुछ विशेष स्थितियों में निर्णय भी बदल जाते हैं
-
यह मान लेना कि कही गई बात और सोच एक ही है
- कुछ लोग वही मतलब रखते हैं जो वे कहते हैं, लेकिन कुछ नहीं रखते
- बहुत से लोग खुद को ईमानदार मानते हैं, जबकि वास्तव में ऐसा नहीं होता
-
लोगों का निर्णय करना
- खराब तरीके से documented चीज़ को गलत समझने वाले व्यक्ति से नफ़रत करना या उसे dismiss कर देना, सही तरह से सुनने की संभावना को बहुत कम कर देता है
- यह मान लेना कि सामने वाला अपना काम नहीं जानता या जीवन गलत तरीके से जी रहा है, सुनने में बाधा बनता है
-
80 लोगों को 80 अलग इंसानों की जगह एक ही समूह मानना
- B2B, B2C की तुलना में अक्सर और भी ज़्यादा मानवीय पहलू रखता है, जहाँ संबंध, dynamics, और org chart के बाहर की soft power जैसी चीज़ें काम करती हैं
- समूह गतिशीलता जुड़ने पर व्यक्तिगत स्तर से भी अधिक जटिल चर सामने आते हैं
स्थिर requirements और सॉफ़्टवेयर के बीच असंगति
- लोग और संगठन बदलते हैं, इसी वजह से fixed project management सॉफ़्टवेयर निर्माण के लिए उपयुक्त नहीं है
- शुरुआत में requirements तय कर देने पर भी इस बीच लोग बदल जाते हैं, और जब परिणाम आता है तो वह अधिकतम शुरुआत के समय किए गए अनुरोध से ही मेल खाता है
- रिलीज़ के समय तक संभव है कि वही चीज़ अब वांछित न हो, और इंतज़ार के दौरान लोग अपनी-अपनी अपेक्षाएँ जोड़ लेते हैं, इसलिए वास्तविकता उन सब अपेक्षाओं से मेल नहीं खाती
परिणाम और प्रभाव
- लोगों की बात सही तरह से न सुन पाने पर सबसे मूल्यवान insights छूट जाते हैं, और इससे राजस्व अवसर तथा प्रतिस्पर्धी बढ़त खो जाती है
- गलतफहमियाँ जितनी जमा होती जाती हैं, उतना ही बाद में साथ काम किए जाने वाले कोड में नए तत्व जुड़ते जाते हैं, और कुछ tech debt के कारणों को कम करने का संबंध भी सुनने से है
- जितना अधिक हम उन क्षणों को पहचानते हैं जब हम सुन नहीं पा रहे होते, उतनी अधिक संभावना होती है कि हम बेहतर सुन पाएँ
1 टिप्पणियां
Hacker News की राय
मैं शब्दों को काफ़ी सटीकता से चुनता हूँ, और अगर मैंने कोई खास अभिव्यक्ति इस्तेमाल की है तो मेरा सचमुच वही मतलब होता है। लेकिन बहुत से लोग, मेरी नज़र में, tone poem की तरह बोलते हैं—हाथ लगने वाले शब्दों के आसपास मंडराते हुए, और उम्मीद करते हैं कि कोई साझा nuance समझ ली जाएगी, इसलिए उनकी बात की व्याख्या करना अपने आप में थकाऊ होता है। जब मैं लिखता हूँ, तो हर शब्द जानबूझकर चुनता हूँ, लेकिन नौकरी में भी मेरी बात का ऐसे अर्थ निकाल लिया जाता है मानो मेरी अभिव्यक्ति ही ग़लत या अस्पष्ट थी, और यह लगभग हमेशा दोहराया जाता है, जो काफ़ी पीड़ादायक है। शायद मैं spectrum पर हो सकता हूँ, लेकिन कभी diagnosis नहीं हुआ। करीब छह महीने पहले मैंने एक छोटा RPC बनाया और उसका documentation लिखा ताकि दूसरा विभाग एक लंबा काम शुरू कर सके। वह एक पेज से भी छोटा था, लेकिन पूरा, सटीक और संक्षिप्त था। फिर मेरे manager ने बिना कोई वजह बताए उस document को AI से गुज़ारकर आगे भेज दिया, और मुझे इसकी ख़बर भी नहीं थी। एक दिन के भीतर बेहूदा feedback आने लगा, और जब मैंने असली request examples देखे तो endpoint manipulation हुआ था। वह typo नहीं था; पूरा address गढ़ लिया गया था। document में endpoint और required parameters सब ग़लत थे, और जो feature था ही नहीं वह भी invent कर दिया गया था। मैं आम तौर पर शांत रहता हूँ, लेकिन जितना गुस्सा मुझे तब आया, उतना शायद कभी नहीं आया, और अब भी गुस्सा है। अगर job market ऐसी न होती, तो शायद मैं तुरंत resign कर देता। लोगों के लिए बनी भाषा—जिसे उन्हें खुद पढ़कर समझना चाहिए—उसे AI पर छोड़ देना मुझे कठोर भाषा की मृत्यु जैसा लगता है, और मैं कई महीनों से गंभीरता से सोच रहा हूँ कि क्या generative AI सभ्यता को नष्ट करने वाला कोई Great Filter हो सकता है
मुझे तो सिर्फ़ इस comment thread को देखकर ही विडंबना महसूस होती है, क्योंकि यहाँ भी लोग वही समस्या दोहरा रहे हैं जिसकी ओर लेख इशारा करता है। मैं इसमें कुछ और जोड़ना चाहता हूँ। पहला, चाहे कितना भी knowledge और discussion जमा कर लो, अगर सामने वाला कुछ स्वीकार ही नहीं करना चाहता, तो वह आसानी से उसे स्वीकार नहीं करेगा। दूसरा, सचमुच सुनना मानसिक और शारीरिक दोनों स्तर पर खुद को vulnerable स्थिति में रखना है। क्योंकि तब आपको ऐसी बातें सुननी पड़ती हैं जो आपके अनुभव, विश्वास और worldview से टकरा सकती हैं; और लोगों को judge करने की प्रवृत्ति अक्सर self-protection mechanism होती है, जो उल्टा अच्छी तरह सुनने से रोकती है। तीसरा, सुनना कई बार तुरंत solution पर कूद जाना नहीं, बल्कि सामने वाले के दर्द को absorb करके उसे process करना होता है। उदाहरण के लिए, Product manager के लिए किसी बात को तुरंत नए feature या ticket में बदल देना आसान है, लेकिन असल में उसे use case सुनकर pain point पहचानना और उसका समाधान करना चाहिए; केवल user ने जिस feature का नाम लिया, उसी को समझ लेना काफ़ी नहीं है
मैं मूल समस्या-चेतना से सहमत हूँ, लेकिन यह सूची कुछ हद तक शिकायतनामा जैसी लगी। effective communication लगभग पूरी मानवता की केंद्रीय समस्या है, और इस लेख का लहजा कुछ ऐसा लगा जैसे developers को सुनना न आने पर डाँटा जा रहा हो, इसलिए यह थोड़ा ऊपर से बोलने वाला लगा। असली समस्या यह है कि लोगों को यह तक नहीं पता होता कि वे क्या नहीं जानते। सबसे अच्छे communicators translators जैसे होते हैं; जब message सामने वाले की समझ में self-evident हो जाता है, तभी लोग वास्तव में सुनते हैं। मुझे नहीं लगता कि यह बस इसलिए ढह जाता है कि सब लोग कान बंद किए बच्चों की तरह व्यवहार कर रहे हैं। इसलिए हम systems और engineering solutions खोजते हैं—ताकि system के भीतर gap detection और translation framework ही built-in हों। यह perfect नहीं है, लेकिन लोगों को बस बेहतर सुनो कहकर समझाने से ज़्यादा ज़रूरी मुझे यह लगता है कि team, company और system level पर environment बदला जाए
मेरा मानना है कि लोग जो कहते हैं और जो वास्तव में सोचते हैं, दोनों को एक जैसा मान लेना आसान नहीं होना चाहिए। उल्टा, बोलने वाला भी आसानी से यह मान बैठता है कि सुनने वाला भी वही चीज़ imagine कर रहा है और उसी तरह समझ रहा है। इसलिए जितना हो सके विस्तार से और बिना अस्पष्टता के लिखना ज़रूरी है। अगर किसी meeting में कोई 6 शब्दों की bullet से goal समझाने की कोशिश कर रहा हो, तो यह असल में इस बात का संकेत है कि किसी को भी goal समझ नहीं आया है। अगर कोई एक पेज का document तक लाए बिना meeting में आ गया है, तो वह खुद भी अभी उसे पर्याप्त रूप से नहीं समझता; और अगर मेरी progress उस outcome पर निर्भर करती हो, तो मैं ज़्यादा साफ़ तस्वीर की माँग करूँगा
मेरी भूमिका ज़्यादातर customer relationship management की रही है, इसलिए मैं मानता हूँ कि सबसे महत्वपूर्ण काम customer की expectation alignment को reality से मिलाना है। क्या संभव है, कितना समय लगेगा, कितना ख़र्च आएगा, और कब production में जा सकेगा—अगर यह सब customer expectations से align हो जाए, तो भले ही start date या cost उन्हें पसंद न आए, आख़िर में वे खुश customer बनते हैं। खासकर cost अक्सर deal-breaker होती है, इसलिए उसका rough range मैं शुरू में ही set करना पसंद करता हूँ। आप कितना भी अच्छे से सुनें और empathize करें, reality तो reality है, और customer को भी उन constraints को मानना या स्वीकार करना होता है। जो customer-facing व्यक्ति बस हर बात में हाँ मिलाता जाता है, वह आख़िर में customer को और दुखी करता है; एक अच्छा interface role दोनों तरफ़—customer और internal team—की बात सुनता है और यह सुनिश्चित करता है कि वास्तव में जो deliver किया जा सकता है वही customer expectation से मेल खाए
मुझे कभी-कभी लगता है कि शायद हम communication पर बहुत ज़्यादा समय खर्च कर रहे हैं। जब समय ज़रूरत से ज़्यादा allocate होता है, तो focus ढीला पड़ जाता है, और लोग यह सोचकर बात टाल देते हैं कि अगली बार फिर clarify कर लेंगे। अगर हम अनावश्यक meetings कम करें और सिर्फ़ minimum viable time दें, तो शायद सब लोग उल्टा बेहतर सुनेंगे
मुझे लगता है कि इस लेख का specialism effect वाला point काफ़ी undervalued है। मुझे भी कभी frustration हुई कि user वह नहीं समझता जो मैं कई सालों में अंदर तक सीख चुका हूँ, लेकिन जल्द ही मुझे समझ आया कि समस्या यह नहीं कि उसके पास knowledge नहीं है, बल्कि यह कि उसकी knowledge कहीं और जमा है। उसने भी वही समय किसी बिल्कुल दूसरी चीज़ में गहराई से लगाया है
मैं इस बात से पूरी तरह सहमत नहीं हूँ कि मूल कारण बस इतना है कि लोग बोलते नहीं और सुनते नहीं। एक cartoon analogy लें तो मुझे लगता है कि बहुत से लोग शुरू से सड़क से ज़्यादा ribbon-cutting चाहते थे, और आख़िर में उन्हें वही मिल गया—इसलिए यह सब हो रहा है
मुझे यह काफ़ी मज़ेदार अनुभव हुआ है कि लोग कहते हैं कि वे ठीक वही मतलब रखते हैं जो वे कहते हैं, लेकिन वास्तव में ऐसा नहीं होता। मैंने सामने वाले की बात लगभग उसी रूप में paraphrase करके understanding confirm करनी चाही, और प्रतिक्रिया में बहुत ज़ोरदार इनकार मिला कि नहीं, वह तो बिल्कुल भी यह कहना नहीं चाह रहे थे
मुझे लगता है कि non-technical लोगों से बात करते समय आने वाली बहुत-सी समस्याओं की जड़ यह है कि वे cost context के बिना बस कहते हैं X जोड़ दो, Y बदल दो। बेशक, कहा जाए तो लगभग सब कुछ किया जा सकता है, लेकिन हर request की एक cost होती है, और अगर यह समझ न हो तो reliable product delivery के साथ उसे reconcile करना मुश्किल हो जाता है