एक प्रोग्रामर को वरिष्ठ प्रोग्रामर से क्या उम्मीदें हैं?


41

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

मैं यह जानना चाहूंगा कि वरिष्ठ प्रोग्रामर से एक प्रोग्रामर को कौन सी मुख्य बातें उम्मीद हैं या एक टीम का प्रबंधन करते समय हमें किन चीजों से बचना चाहिए।

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


19
joelonsoftware.com उसके ब्लॉग के रूप में ज्यादा के रूप में आप के लिए समय है पढ़ें।
पी। ब्रायन। मैके

@ P.Brian.Mackey का जबरदस्त लिंक!
अवतार

2
वरिष्ठ प्रोग्रामर का मियाज़ाकी-संबंधी अवतार शायद नहीं है, लेकिन निश्चित रूप से एक बड़ा प्लस :-)
leonbloy

1
दिलचस्प ... मेरे बॉस ने उस टेस्ट में 5 में से 4 अंक हासिल किए ... मुझे उन्हें अच्छी खबर के बारे में सचेत करना चाहिए;)
एओओ

1
संबं धत
Machado

जवाबों:


79

चीजें जो मेरे लिए अच्छी तरह से काम करती हैं:

  • सार्थक काम दें और स्वामित्व को प्रोत्साहित करें - यहां तक ​​कि जब कोई समस्या उत्पन्न होती है, तो इसे हल न करें, इसके माध्यम से बात करें और व्यक्ति को अंतर्दृष्टि दें ताकि वे इसे स्वयं हल कर सकें।
    • संपादित करें - जोड़ - यह भी शामिल था - विवरण से बाहर रहना। मान लें कि आपके लोगों को बिना किसी माइक्रोक्रैनमेंट के असाइनमेंट करने या लगातार जांच करने की आवश्यकता के बारे में पता है। इसके लिए दिशानिर्देशों का एक सेट बनाएं कि उन्हें कब चेक करना चाहिए - जो केवल तब होना चाहिए जब काम या तो किया जाए या वास्तव में उस गंभीर हस्तक्षेप को गड़बड़ कर दिया जाए। जरूरत है। यदि संभव हो, तो interteam समर्थन मुद्दों पर लूप में रहने की आवश्यकता से भी दूर रहें।
  • ईमानदार रहें - जिसमें कई कोरोलरीज हैं:
    • अपने बारे में ईमानदार रहें - "मेरे पास मंगलवार तक का समय नहीं होगा", "मैंने ऐसा कभी नहीं किया है, यहाँ मेरा सबसे अच्छा अनुमान है", आदि।
    • टीम के बारे में ईमानदार रहें और वे कंपनी में कहाँ फिट होते हैं - यदि आप व्यवसाय के सामान के बारे में कुछ जानते हैं, तो उन्हें बताएं कि क्या आप कर सकते हैं, और उन्हें बताएं कि आप सीधे तथ्यों के रूप में क्या जानते हैं।
    • प्रतिक्रिया देने में ईमानदार रहें - यदि आप नकारात्मक प्रतिक्रिया देते हैं, तो शब्दों या नरम पेडल की नकल न करें। यह "क्रूर रूप से ईमानदार" से अलग है - आप अभी भी दया कर सकते हैं, लेकिन अगर कुछ गलत है, तो ऐसा कहें।
    • ईमानदार रहें जब आप जानते हैं कि काम कुछ सार्थक होने की तुलना में Redtape के बारे में अधिक है। हर किसी के जीवन में, कुछ निरर्थक कार्य गिरेंगे। दिखावा मत करो यह सार्थक है। इसे कॉल करें, जैसे कि आप सभी इसे अतीत में लाने और कुछ उपयोगी पर ध्यान केंद्रित कर सकते हैं।
  • सुनो । कम से कम 50% आपकी नौकरी सुन रही है, शायद अधिक। आप न केवल तकनीकी कार्य के लिए, बल्कि इसे करने वाले लोगों के लिए भी जिम्मेदार बन गए हैं। आपको टीम की समस्याओं के बारे में न केवल सीखना होगा, बल्कि यह भी जानना होगा कि आपके लोग इस समस्या को कैसे देखते हैं और एक समूह के रूप में टीम की कमियां क्या हैं।
    • महत्वपूर्ण कोरोलरी - सुनने से सीधे बिंदु # 1 तक पहुंच सकता है - सार्थक काम दे सकता है - इंजीनियर विकास को आसान बनाने के तरीकों के साथ आने में महान हैं। आप सब कुछ मंजूर नहीं कर सकते, लेकिन जहां विचार अच्छा है, इंजीनियर को असाइनमेंट दें, और उन्होंने अनिवार्य रूप से आपके लिए काम किया है - उन्होंने सार्थक काम बनाया और आपको बताया कि यह क्या है।
  • "धन्यवाद" कहें । मुझे पता है, यह स्पष्ट लगता है। जबकि हम सभी को पैसे से प्यार है, बेहतर उपकरण, एक अच्छे काम के माहौल और पदोन्नति - इन चीजों को प्राप्त करने का तरीका अच्छे प्रयासों की एक श्रृंखला है, जिनमें से प्रत्येक "धन्यवाद" के योग्य है। "धन्यवाद" पूरी तरह से स्वतंत्र है, आप उनमें से कभी नहीं भागेंगे, और यह जानकर कि आपके प्रबंधक ने आपकी कड़ी मेहनत को देखा और सराहा है, निश्चित रूप से प्रेरित कर रहा है।
  • बड़ी तस्वीर पर समय बिताएं , भले ही इसका मतलब है कि दिन के कुछ हिस्से को दिन के काम के लिए बलिदान करना जो आपको पद मिला। यह शायद सच है कि आप अपने कुछ लोगों की तुलना में बेहतर कोड कर सकते हैं, लेकिन यदि आप बड़ी तस्वीर पर एक अच्छा समय नहीं बिताते हैं - टीम, समग्र परियोजना दिशा, आपके कोडबेस की स्थिति, आपकी प्रक्रियाओं की दक्षता , आपकी टीम का वातावरण - तब आप वह काम नहीं कर पाएंगे जो उन्हें करने की आवश्यकता है।
  • अपनी टीम के लिए एक बफर होना सीखें । इंजीनियरिंग टीम सबसे अच्छा काम करती है जब उनके पास करने का समय होता है ... इंजीनियरिंग। कॉर्पोरेट नौकरशाही इंजीनियरिंग नहीं है। जो कुछ भी आप कर सकते हैं वह कष्टप्रद 1 प्रति वर्ष / माह / सप्ताह की बैठक बाहरी लोगों के साथ करना बेहतर है। ध्यान दें: इसका मतलब यह नहीं है कि हितधारकों के साथ चुस्त बैठकें - कि इंजीनियरिंग है, आपकी टीम को इसके लिए होना चाहिए। मेरा मतलब है कि उन सुविधाओं के साथ बैठक, जो आपकी टीम के पास मशीनरी का एक जोरदार चीर-फाड़ का टुकड़ा लगाना चाहती हैं, या प्रक्रिया समूह जो चाहता है कि आपकी टीम किसी भी कोड की जांच करने से पहले तीन प्रतियों में कागजात भरें।
  • मान लें कि लोग बुरे नहीं हैं , वे ऐसे लोग हैं जो अच्छा करना चाहते हैं लेकिन यह पता नहीं लगाया है कि अभी तक कैसे। आप सभी को ठीक करने में सक्षम नहीं हो सकते हैं, लेकिन अक्सर पहले कुछ पूर्ण स्क्रू अप विफल संचार के एक कारक हैं क्योंकि वे अक्षमता या जानबूझकर द्वेष हैं। यदि आप इस धारणा से शुरू करते हैं कि लोग बुरे नहीं हैं, तो आपको ऊपर दी गई सूची के कई बुरे बॉस आर्कटाइप्स से बचने की एक अच्छी उम्मीद है।

और शायद सबसे महत्वपूर्ण ... सम्मान । यदि आप ईमानदारी से अपनी टीम के सदस्यों का सम्मान नहीं कर सकते हैं, तो आपको इसे बदलने पर काम करना होगा (चाहे वह लोगों को सिखा रहा हो या अपना हेडकाउंट बदलना हो)। एक दिन सम्मान दें और आप इसे वापस प्राप्त करेंगे, लोगों के साथ सम्मान की कमी का व्यवहार करेंगे और बदले में आपको कभी भी सम्मान नहीं मिलेगा।

एक साथ लिया, अगर आप इनमें से अधिकांश काम करते हैं, तो अधिकांश समय आपकी टीम आपको संदेह का लाभ देगी जब आप दिखाते हैं कि आप मानव हैं और पूरी तरह से अपने आप को कुछ पेंच करते हैं। :) हर बॉस की अपनी कमियां होती हैं, और यह आपकी टीम के साथ एक संबंध बनाने के बारे में है जहां वे आपकी कमजोरियों की भरपाई करने में आपकी मदद कर सकते हैं।


1
महान जवाब, मैं इसे उन्हें स्वतंत्रता प्रदान करने के लिए जोड़ूंगा । Micromanaged होने या हर छोटे विस्तार के लिए अनुमति मांगने से बदतर कुछ भी नहीं है।
अग्रेल

3
वास्तव में बहुत बढ़िया .. काश StackExchange उपयोगकर्ताओं के लिए समर्थन प्रदान कर सकता है (जोएल और जेफ के लिए एक छोटी टिप्पणी) :)
प्रिंसकोडर

2
वाह !! ... यह सबसे अच्छा जवाब मैं कभी @Stackexchange भर में आया था में से एक था
explorest

वाह, और वाह। और क्योंकि मुझे इस टिप्पणी को प्रस्तुत करने के लिए कुछ और अक्षर लिखने होंगे, वाह।
अमीर अफगानी

2
@PrinceCoder हर उपयोगकर्ता का अपना फ़ीड है, आप आरएसएस के कुछ पाठकों में इसका अनुसरण कर सकते हैं।
svick

12

ठीक है, सीखने के लिए सबसे बड़ी चीजों में से एक यह है कि बहुत बार आप उन्हें खुश नहीं रख पाएंगे क्योंकि आप बस उन्हें वह नहीं दे पाएंगे जो वे चाहते हैं।

सर्वश्रेष्ठ प्रबंधकों मैं मैंने काम किया मिल गया है सबसे ईमानदार लोग, जो सब बकवास है कि उच्च प्रबंधन की कोशिश उन पर फेंकने के लिए, और सबसे बढ़कर से उनकी टीम की रक्षा करेगा रहे हैं सुनें उनकी टीम के लिए।


2
एक प्रबंधक और एक वरिष्ठ प्रोग्रामर के बीच एक बड़ा अंतर है। मैंने अभी तक एक प्रबंधक से मुलाकात की है जैसे आप वर्णन करते हैं। कृपया मुझे बताएं कि मैं उन्हें कहां पा सकता हूं ;-)
fretje

काफी उचित है कि शीर्षक क्या कहता है, लेकिन मालिकों के बारे में बात करने के लिए सवाल आगे बढ़ता है। मैंने अपने करियर में काफी अच्छे मैनेजर / देव लीड किए हैं।
ओज

+1 @James किसी ने ऐसा लगता है कि शीर्षक संपादित किया है। सवालों से लीड / मैनेजरों के बारे में पता चलता है। शब्द "बॉस" भयंकर लगता है, इसलिए मैं वरिष्ठ प्रोग्रामर शब्द का चयन करता हूं।
अवतार

6

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

सुनना महत्वपूर्ण है।

कृपया और धन्यवाद आप महत्वपूर्ण हैं और कुछ भी नहीं लागत।

जितना आप देने को तैयार हैं, उससे अधिक की अपेक्षा न करें। अगर आप चाहते हैं कि मैं सुबह 3 बजे काम करूं, तो आप मेरे साथ काम करने से भी बेहतर होंगे। किसी ऐसे व्यक्ति के लिए काम करने से ज्यादा हतोत्साहित करने वाला कोई नहीं है, जो आपको हर दिन काम करने के तुरंत बाद समय पर छोड़ देता है, जिसे सुबह 7 बजे तक करना होता है।

न्यायी बनो। पसंदीदा मत खेलो (विशेषकर अपनी प्रेमिका या प्रेमी को सबसे अच्छा सामान देकर पसंदीदा मत खेलो)। सभी कर्मचारियों के साथ सम्मान से व्यवहार करें (यहां तक ​​कि वे लोग जिन्हें आप व्यक्तिगत रूप से पसंद नहीं करते हैं)।

निर्णायक होना। निर्णयों को लटका कर न रखें ताकि कोई भी प्रगति न कर सके या हर पांच मिनट में उन्हें बदल न सके।

अपने लोगों के लिए खड़े हो जाओ। आप उन सभी को नहीं जीतेंगे, लेकिन लोग उन लोगों के लिए आग से चलेंगे जो उन्हें श्रृंखला का समर्थन करते हैं।

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

विचारों को उच्चतर तक बेचना सीखें और इन कौशलों को अपने देवताओं को सिखाएँ।

व्यावसायिक डोमेन के महत्व को समझें और प्रोग्रामिंग के साथ-साथ उस पर विशेषज्ञ बनें।


3

यहां कीवर्ड विश्वास और जिम्मेदारी हैं।

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

IMHO, यह अकेला एक स्वस्थ वातावरण बनाने में चमत्कार करता है।


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

1
ठीक है, मेरी राय में, यहां तक ​​कि वे भी सक्षम नहीं हैं, जब एक पूरी जिम्मेदारी दी जाती है, उर्फ ​​"स्वामित्व" परियोजना के एक हिस्से पर -सब कुछ करेंगे-यह उनके टुकड़े करने के लिए लेता है। मुझे इस बात की भी परवाह नहीं है कि जब तक नौकरी नहीं मिलती तब तक मंचों और बोर्डों पर सवाल पूछकर कोड का एक हिस्सा एकत्र किया जाता है।
जस

दुर्भाग्य से मैं काउंटरटेक्म्पल्स से मिला हूं :-( सबसे खराब स्थिति में मैंने देखा है, एक डेवलपर ने बिल्कुल कुछ नहीं बनाया जब उसे लगभग दो महीने तक स्वतंत्रता और पूरी जिम्मेदारी दी गई थी - जैसा कि यह निकला, वह कार्यस्थल में भी नहीं आ रहा था। कुछ लोग बस एक टीम में अपने वजन खींच रहे हैं नहीं, और यदि आप उन्हें पास जांच के बिना स्वतंत्र रूप से चलाने के लिए, आप सिर्फ बातें बदतर बना आप समय में इन लोगों से छुटकारा पाने के नहीं है, तो वे पूरी टीम को नुकसान पहुंचा
Péter Török

@ Péter Török - निश्चित रूप से, हर कोई हर कंपनी में कुछ ऐसे लोगों को जानता है (वास्तव में इसे पढ़कर मुझे लगा कि आप भी मेरे जैसे ही व्यक्ति को जानते हैं :)। लेकिन मेरे अनुभव से, ज्यादातर लोग ध्यान केंद्रित करते हैं और अपना सर्वश्रेष्ठ प्रदर्शन करने की कोशिश करते हैं।
जस

मैं सहमत हूं, ज्यादातर लोग अपना सर्वश्रेष्ठ प्रदर्शन करने की कोशिश करते हैं। (या मुझे कहना होगा हर किसी को ऐसा करने के लिए कोशिश करता है उसका / उसकी सबसे अच्छा - बस कुछ के लिए, "सर्वश्रेष्ठ" noticeability की दहलीज हिट नहीं करता :-) अभी भी समय में अपवाद नोटिस के प्रति सावधान रहना चाहिए -? क्योंकि वहाँ रहे हैं अपवाद नहीं। उत्पादन कोड की तरह, हमें सामान्य परिस्थितियों में भी दुर्लभ होते हुए भी त्रुटि के मामलों को सही ढंग से संभालना चाहिए
Péter Török

3

अच्छी तरह से IMO मैं वरिष्ठ डेवलपर / लीड / से अपेक्षा करता हूं कि जो भी विकास टीम के साथ मुहावरों की समयसीमा, कोई संसाधन नहीं है लेकिन रोम, अनिवार्य ओवरटाइम, आदि सभी चीजें हैं जो उत्पादकता को कम करती हैं और लोगों को दुखी करती हैं।

से बचने के लिए मुख्य बात IMO उच्च प्रबंधन को एक "हाँ-आदमी" किया जा रहा है और हमेशा कोई फर्क नहीं पड़ता कि वे क्या कहते सहमत हो (एक गधा किसर, दूसरे शब्दों में)


+1: सही है। और अगर आप खुद को 'यस-मैन' की रिपोर्टिंग करते हुए पाते हैं, तो ASAP को छोड़ दें।
जिम जी

1
अफसोस की बात यह है कि ऐसे कई वातावरण हैं जहाँ सीनियर / लीड / मैनेजर प्रोग्रामर के अलावा कुछ नहीं है, यस-मैन (या जैसा कि मैं उन्हें कॉल करना पसंद करता हूं, "स्मिथर्स"), और सबसे खराब समय यह है कि आप इसे नहीं जान पाएंगे। जब तक आप काम लेते हैं।
वेन मोलिना

3

लोगों को कौशल। कभी-कभी लोगों को "वरिष्ठ" शीर्षक दिया जाता है और वे भूल जाते हैं कि वे सर्वज्ञ नहीं हैं। उन्हें लगता है कि पदोन्नति उनके सर्वोच्च तकनीकी कौशल और अव्यक्त प्रतिभा पर टिप्पणी है। वास्तव में वे अब निम्न स्तर के सुपर मैनेजर हैं। उन्हें समझना चाहिए कि कैसे और किसे प्रेरित करना है, किसको होने देना है, कैसे समझौता करना है और कब सुनना है।

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

अनुभव। मुझे उम्मीद है कि वरिष्ठ डेवलपर्स ने दो बार सब कुछ देखा होगा। उन्हें डोमेन और तकनीक को समझना चाहिए। उन्हें आक्रामक रूप से जोखिमों पर हमला करना चाहिए और लाल झुंडों को बर्बाद करने में सक्षम होना चाहिए।


2

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


2

ज्ञान और संचार। स्रोत को जानना और बहुत कुछ, बहुत अधिक , महत्वपूर्ण रूप से इसे किसी को भी समझाने में सक्षम होना, इस तरह से कि वे समझेंगे और बनाए रखेंगे।

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