नए कौशल सीखना फुर्तीले में कहाँ फिट होता है?


32

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

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

अब जब मैं एक सॉफ्टवेयर कंपनी शुरू कर रहा हूं जिसमें 3 डी ग्राफिक्स की तीव्र नवीन मांगें नहीं हैं, तो मैं विकास के लिए अधिक समग्र दृष्टिकोण स्थापित करना चाहता हूं।

हो सकता है कि चुस्त सिर्फ यह संबोधित नहीं करता है, लेकिन अगर ऐसा होता है, तो मुझे नहीं मिला है और मैं किसी भी ज्ञान या विशेषज्ञता की सराहना करूंगा या किसी को भी इसके साथ अनुभव होगा।



1
सीखना और आर एंड डी को स्प्रिंट प्लानिंग में निहित या स्पष्ट रूप से जिम्मेदार ठहराया जा सकता है। यह सीखने की प्रक्रिया के लिए भी ठीक है कि कोई भी आसानी से मापने योग्य परिणाम नहीं है (जैसे यह स्प्रिंट गोल का हिस्सा नहीं है)। वृद्धिशीलता देखें: pchiusano.github.io/2017-05-17/incrementalism.html "वास्तविक प्रगति पहली बार में प्रगति की तरह नहीं दिखती है।"
कोला 17

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

जवाबों:


43

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

एजाइल के पास "टिकाऊ गति" का यह विचार है, जिसका अर्थ है कि, किसी भी बिंदु पर, टीम को उस समय की तुलना में कठिन काम करना चाहिए जो अनिश्चित समय के लिए बनाए रख सके। यानी नो "क्रंच टाइम"। इसके लिए प्रशिक्षण देकर सम्मानित किया जाना चाहिए। तो, यह आपकी टीम के लिए एक स्थायी गति है "बिना ब्रेक के 5 घंटे से अधिक सीधे, प्रति दिन 9 घंटे से अधिक नहीं, प्रति सप्ताह 40 घंटे से अधिक नहीं", और आप प्रशिक्षण के लिए 10% समय प्रदान करना चाहते हैं, तो आप 36 घंटे के लिए अपनी परियोजनाओं की योजना बनाने की जरूरत है।

लेकिन फिर से, एजाइल के साथ इसका कोई लेना देना नहीं है, यह सिर्फ सामान्य ज्ञान और प्राथमिक स्कूल गणित है।

व्यक्तिगत रूप से, मुझे लगता है कि प्रति दिन आधे घंटे, प्रति सप्ताह एक आधे दिन और प्रति सप्ताह एक पूर्ण सप्ताह की अनुमति देने जैसी कुछ टीम टीम को ज्ञान के विभिन्न आकार के चक्रों को जल्दी और स्थिर गति से प्राप्त करने की अनुमति देगी।

कुछ चुस्त अभ्यास भी हैं जो ज्ञान हस्तांतरण में मदद करते हैं, अर्थात टीमों के ज्ञान के स्तर में अंतर को सुचारू करने के लिए:

  • दैनिक पूर्वव्यापी
  • स्प्रिंट प्रति रेट्रोस्पेक्टिव
  • प्रति परियोजना प्रतिगामी
  • जोड़ा प्रोग्राम तैयार करना
  • पिंग-पोंग युग्मन (लाल-हरे-परावर्तक चक्र के प्रत्येक चरण के बाद चालक और नाविक की अदला-बदली)
  • प्रॉमिसिंग पेयरिंग (कोई निश्चित पेयर नहीं है, जोड़े बेतरतीब ढंग से सौंपे जाते हैं और हर सुबह और दोपहर के भोजन में बदल जाते हैं)
  • टीम के सदस्यों की विषम संख्या (यदि आप जोड़ी प्रोग्रामिंग करते हैं, तो एक टीम के सदस्य को सीखने के लिए स्वतंत्र छोड़ दें)
  • भीड़ प्रोग्रामिंग (जोड़ी प्रोग्रामिंग पर एक संस्करण जहां पूरी टीम एक एकल कंप्यूटर और स्क्रीन का उपयोग करती है, एक नामित टीम सदस्य केवल एक "टाइपिस्ट" है और अन्य उसे बताते हैं कि उसे क्या लिखना है)
  • होनहार टीमों (डेवलपर्स को हर दिन / हर स्प्रिंट के लिए टीमों को यादृच्छिक रूप से सौंपा जाता है)

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

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


5
मेरा मानना ​​है कि यह सब सच है। और इसी तरह हमारे स्कैम मास्टर ने हमें 5 घंटे का समय दिया। जीरा को समझ नहीं आया कि 5 घंटे का दिन क्या है और इसने हमारी योजना को एक बुरा सपना बना दिया है। समझें कि आपके चुस्त उपकरण आपके इन सामान्य ज्ञान विचारों को लागू करने के लिए उन्हें इस्तेमाल करने का प्रयास करने से पहले क्या संभाल सकते हैं।
कैंडिड_ऑरेंज

6
'भीड़ प्रोग्रामिंग' बहुत कष्टदायी लगता है।
user2818782

4
@ user2818782: यह उसी तरह का मज़ा है, जिस तरह से तीन-पैर वाली दौड़ को चलाने में मज़ा आ सकता है यदि आप इसे बहुत गंभीरता से नहीं लेते हैं और इसे बहुत लंबे समय तक करने की कोशिश नहीं करते हैं। बस इसे एक मूर्खतापूर्ण टीम-निर्माण / ज्ञान-साझाकरण अभ्यास के रूप में व्यवहार करें और उम्मीद करें कि यह वास्तविक (या कोई भी) वास्तविक कार्य कोड का अधिक उत्पादन नहीं करेगा।
इल्मरी करोनें

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

@candied_orange वास्तव में - जीरा में शाब्दिक रूप से यह बताने के लिए एक सेटिंग है कि दिन में कितना समय है?
जे.के.

8

मैं सबसे ज्यादा सहमत हूं कि जोर्ग डब्ल्यू मित्तग ने क्या कहा , लेकिन इस कथन के साथ नहीं कि "यह वास्तव में एजाइल के साथ बहुत कुछ नहीं करता है"। चुस्त तकनीक की एक संख्या सीखने और व्यक्तियों और टीमों के विकास का समर्थन करती है।

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

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

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


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

5

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

तो क्या हुआ अगर एक कहानी एक अनुभवी डेवलपर के लिए केवल 5 अंक होनी चाहिए? हो सकता है कि यह प्रत्येक 8 बिंदुओं पर 3-4 कार्य करता हो। उन POC कार्यों के बाद कहानी अभी भी केवल 5 अंक की हो सकती है, लेकिन कम से कम आपने नए कौशल सीखने के लिए समय निर्धारित किया है ताकि 5 बिंदु कहानी 40 अंक न हों - भले ही कहानी और POC कार्य 40 बिंदुओं को जोड़ दें।


4

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

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


3

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

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


1

कुछ अन्य लोगों ने पहले से ही पहलुओं का उल्लेख किया है, लेकिन मैं सिर्फ यह साझा करना चाहता था कि मैं एक चुस्त वातावरण में व्यक्तिगत विकास कैसे फिट करूं।

1. चल रहा विकास

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

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

2. एक स्प्रिंट के दौरान बड़े प्रयास

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

वैकल्पिक रूप से आप विशिष्ट स्प्रिंट की स्प्रिंट क्षमता को ठीक कर सकते हैं, लेकिन जब तक लोग आपके मापा प्रदर्शन / दक्षता को बहुत ध्यान से नहीं देखेंगे, मैं इससे दूर रहूंगा। विशेष रूप से एक ताजा टीम में, सटीकता की तुलना में स्थिरता शायद अधिक मूल्यवान है।


1

चंचल दर्शन का एक सेट है, मैनिफ़ेस्टो पर एक नज़र डालें, यह सब एजाइल है, इसलिए जब आप कहते हैं कि एजाइल मेरी समस्याओं को कैसे हल कर सकता है, तो मैं एजाइल के बारे में और अधिक (बहुत) सीखने की सलाह देता हूं। आइए Agile: SCRUM का एक ठोस कार्यान्वयन करें। SCRUM में हमारे पास स्प्रिंट और स्पाइक्स की अवधारणाएँ हैं। इन दो कलाकृतियों के माध्यम से, सीखने के लिए बजट बनाना संभव है।

यदि आप एक स्प्रिंट को पाई चार्ट के रूप में देखते हैं, तो आप विषय के आधार पर प्राथमिकताओं को विभाजित कर सकते हैं, ऐसा एक विषय हो सकता है ... नए कौशल सीखना!

एक स्पाइक एक स्प्रिंट पर एक शोध कार्य है जिसमें आमतौर पर सीखने के माध्यम से किसी चीज की व्यवहार्यता का आकलन करना शामिल है।

अंत में, जो चीज आप कर रहे हैं वह अभी भी मेज पर है और आप सीख सकते हैं कि आप जो भी काम कर रहे हैं, वह कर सकते हैं, जिस बिंदु पर आप तकनीकी चुनौती से निपटने के लिए कहानी के अंकों / क्षमता को बढ़ाने की कोशिश कर सकते हैं।


1

चंचल मेनिफेस्टो से खुद को बाहर निकालने के लिए :

प्रक्रियाओं और उपकरणों पर व्यक्तियों और बातचीत
व्यापक प्रलेखन पर सॉफ्टवेयर काम
कर रहे अनुबंध अनुबंध पर ग्राहक सहयोग एक योजना के बाद
बदलने के लिए प्रतिक्रिया

जोर मेरा है, उन हिस्सों को उजागर करना जो संभवतः आपके लिए सबसे अधिक लागू होते हैं।

मौलिक रूप से, अच्छी तरह से प्रशिक्षित फुर्तीले डेवलपर्स बदलते माहौल का जवाब उन लोगों की तुलना में बेहतर दे सकते हैं जो अपने कौशल को कमजोर करते हैं।

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

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