पेशेवर प्रोग्रामिंग के लिए कौन से कौशल आवश्यक हैं जो आमतौर पर स्कूलों में नहीं पढ़ाए जाते हैं? [बन्द है]


14

मैं प्रथम वर्ष का कंप्यूटर साइंस मेजर हूं। मैं एक जॉब फेयर में गया, रिज्यूमे सौंपा, बहुत हैरानी की बात है कि मुझे एक इंटरव्यू मिला और अंततः एक डेवलपर के रूप में इंटर्नशिप हुई।

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

मैं सभी प्रोग्रामिंग पाठ्यक्रमों में अच्छा करता हूं लेकिन मुझे अभी भी लगता है कि मैं एक नुकसान में हूं। अभी, मैं वास्तव में केवल इस काम में अच्छा करना चाहता हूं जब यह शुरू होता है। नौकरी ज्यादातर सी # का उपयोग कर रही होगी, लेकिन स्पष्ट रूप से कुछ सी # सीखने के अलावा, एक ऐसा कौशल क्या है जो आप चाहते हैं कि आप वास्तविक प्रोग्रामर बनने से पहले सीख सकते हैं?

किसी भी सलाह की बहुत सराहना की जाती है, लेकिन अगर आपके पास कोई किताब है तो कृपया बताएं। धन्यवाद!


8
यह प्रश्न इस साइट पर कई बार अलग-अलग तरीकों से पूछा गया है। कृपया पहले खोजें और फिर पूछें। एफएक्यू पर एक नज़र है; programmers.stackexchange.com/questions/149970/… ; programmers.stackexchange.com/questions/46716/…
tgkprog

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

+1 एक ऐसा कौशल जिसे मैं चाहता हूं कि एक पूर्णकालिक प्रोग्रामर बनने से पहले मैं मास्टर हो जाऊं, मजबूत गणित कौशल है क्योंकि गणित कौशल सबसे महत्वपूर्ण कौशल है क्योंकि यह समस्याओं को हल करने और नई अवधारणाओं को सीखने और प्रोग्रामर के रूप में दिमाग को प्रशिक्षित करता है, ज्यादातर वही है जो मैं रोज कर रहा हूं।
एंथनी

3
कार्यप्रवाह। और उस कोड को साकार करना एक गेंडा-अद्वितीय स्नोफ्लेक नहीं है। डिजाइन करते समय कम से कम विस्मय का सिद्धांत लागू करें। करने से पहले सोचो। प्रबंध जटिलता एक बहुत महत्वपूर्ण पहलू बन जाता है।
स्लीपलेसनरड

1
मैं वास्तव में मजबूत गणित कौशल वाले लोगों के साथ काम करना पसंद नहीं करता। वे सॉफ्टवेयर इंजीनियरिंग के सिद्धांतों को लागू करने के बजाय सब कुछ गणितीय सूत्र में बदल देते हैं। सॉफ्टवेयर गणित नहीं है। यह आवश्यक है कि आप अपना कोड लिखें ताकि इसे समझना आसान हो।
रोब के

जवाबों:


21

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

  • एक विकास दल के हिस्से के रूप में काम करना
  • संस्करण नियंत्रण का उपयोग करना
  • बग ट्रैकर का उपयोग करना

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


4
एक विकास टीम के हिस्से के रूप में काम करना सुनिश्चित करने के लिए एक सूक्ष्म और जटिल कला है। मुझे समझ नहीं आता कि नए डेवलपर्स के लिए संस्करण नियंत्रण और बग ट्रैकिंग को हमेशा कुछ प्रमुख बाधाओं के रूप में क्यों बनाया गया है। वे निश्चित रूप से महत्वपूर्ण उपकरण हैं, लेकिन आप नए लोगों को मैन पेज, ओ'रेली बुक या ऑनलाइन ट्यूटोरियल की ओर इशारा करते हैं और वे कुछ ही घंटों में ब्रेड और बटर का उपयोग कर सकते हैं। आप कक्षा के समय को कुछ इस तरह क्यों बर्बाद करेंगे?
चार्ल्स ई। ग्रांट

1
@ CharlesE.Grant संस्करण नियंत्रण प्रोग्रामिंग के समान है जिसमें आप अपेक्षाकृत कम समय में मूल बातें प्राप्त कर सकते हैं, लेकिन प्रभावी ढंग से उपयोग करने के लिए यह अनुभव लेता है। और DVCS जैसे git और Mercurial को svn की तरह CVCS से समझने में अधिक समय लगता है।
इज़्काता

8
मेरे पास स्थापित कोड को बनाए रखने के लिए कक्षाएं नहीं थीं (जो कि एक विकास टीम के हिस्से के रूप में काम करने का एक प्रमुख हिस्सा है) और कोड का परीक्षण करने के तरीके पर मेरा कक्षा का अनुभव न्यूनतम था।
वेलोसिरैप्टर

1
@ चार्ल्स.ग्रंथ: मैंने कई वर्षों तक प्रोग्रामिंग और संबंधित विषयों में स्नातक स्तर के पाठ्यक्रम पढ़ाए हैं। यहां तक ​​कि स्नातक छात्रों को यह समझने में कठिन समय लगता है कि उन्हें किसी भी प्रकार के संशोधन नियंत्रण प्रणाली का उपयोग क्यों करना चाहिए। और जब वे बड़ी मुश्किल से इसका इस्तेमाल करने लगते हैं, तो वे बहुत जल्दी इससे भ्रमित होने लगते हैं। एक महत्वपूर्ण गैर-विषय के रूप में इसे बढ़ाने के लिए मेसन को +1।
पीटर के।

1
+1 +1 +1, प्रत्येक बिंदु के लिए एक। यह इतनी बेवकूफी है कि वे आपको ये चीजें नहीं सिखाते ... या कम से कम आपको सिखाने की कोशिश करते हैं।
रादु मुरझिया

20

काश मैं अपने करियर में पहले से जानता था कि एक डेवलपर के रूप में, व्यवसाय में मेरी महत्वपूर्ण भूमिका है । मैं सिर्फ एक कोड बंदर नहीं हूं।

एक डेवलपर के रूप में आपके द्वारा काम किए जा रहे सॉफ़्टवेयर से संबंधित व्यवसाय के कुछ हिस्सों में आपका प्रमुख हाथ है।

यदि आपकी कंपनी अपने कोड के लिए परीक्षण नहीं लिखती है, तो अब परीक्षण लिखना शुरू करें।

यदि वे बग को ट्रैक नहीं करते हैं, तो अब एक उपयुक्त बग ट्रैकर ढूंढें।

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

यहां तक ​​कि अगर आप सिर्फ "एक सामान्य कर्मचारी" हैं, तो एक सलाहकार की तरह अभिनय करना खुद को अन्य डेवलपर्स से अलग स्थापित करने का एक शानदार तरीका है जो सिर्फ कोड लिखते हैं और इस तरह काम नहीं करते हैं जैसे कि वे व्यवसाय में निहित स्वार्थ रखते हैं।


9

मेरे स्कूल ने मुझे कभी नहीं सिखाया कि समस्याओं को कैसे हल किया जाए। उन्होंने मुझे कोडिंग के मैकेनिक्स सिखाए, लेकिन एक समस्या का अध्ययन करने में सक्षम होने के लिए, इसे समझें, और एक समाधान के साथ आएं कुछ ऐसा है जो उन्होंने नहीं पढ़ाया। इसके लिए एक प्रोग्रामिंग भाषा की समझ के अलावा धैर्य, कठोरता और अंतर्ज्ञान की आवश्यकता होती है।

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

डिस्क्लेमर: मैं 80 के दशक में कॉलेज गया था। हालाँकि, मुझे इस बात के प्रमाण मिलते हैं कि मैं आज के समय में उन लोगों के साथ काम करता हूँ - जो ताजा स्नातक हैं जिन्हें प्रोग्रामिंग की वास्तविक दुनिया के बारे में बहुत कम जानकारी है: संस्करण नियंत्रण, परीक्षण, स्वच्छ कोडिंग, डिबगिंग कौशल, आदि।


परीक्षण भाग के लिए +1। मेरे विश्वविद्यालय में, वे इसे नहीं पढ़ाते हैं। मेरे पास 1 कक्षा थी (हाँ: एक) जहां शिक्षक ने यूनिट परीक्षण का उल्लेख किया ... लगभग 3 मिनट के लिए। बस।
रादु मुरझिया

मुझे पता है कि यह एक देर से प्रतिक्रिया है लेकिन यह उन चीजों में से एक थी जिसने मेरे गणित की डिग्री को अपने नियोक्ताओं के लिए आकर्षक बना दिया। यह दृश्य निश्चित रूप से नियोक्ताओं के बीच भी साझा किया जाता है।
एरिक

सहमत हूं, कई स्कूल में एल्गोरिदम (उर्फ "समस्या सुलझाने") को ठीक से नहीं पढ़ाया जाता है, या बिल्कुल भी नहीं पढ़ाया जाता है, या यह नहीं सिखाया जाता है कि इसे प्रोग्रामिंग भाषा के साथ कैसे लागू किया जाए, भले ही मुझे प्ल "अज्ञेयवादी" होना चाहिए।
umlcat

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

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

7

मेरी राय में स्कूल में न सीखी जाने वाली (या ठीक से सीखी हुई) सबसे महत्वपूर्ण चीजें हैं:

  • कैसे ठीक से उपयोग और IDE करने के लिए; एक आधुनिक आईडीई की पूरी शक्ति का उपयोग उत्पादकता में भारी वृद्धि प्रदान करता है: स्वचालित रीफैक्टरिंग, कोड नेविगेशन, वीसीएस एकीकरण, कोड विश्लेषण, कोड पूरा करना आदि।
  • डिबगर का उपयोग कैसे करें: दूरस्थ डिबगिंग, बहु-थ्रेडेड अनुप्रयोग डीबगिंग, एक्सप्रेस मूल्यांकन आदि।
  • बग फिक्सिंग और रखरखाव; विश्वविद्यालय में वे आपको लगभग कुछ भी नहीं सिखाते हैं, फिर भी उद्योग में बग को ठीक करने के लिए काफी आम है।
  • बड़ी टीम में और बड़ी परियोजना पर कैसे काम करें; मूल रूप से विश्वविद्यालय में, बड़े औद्योगिक परियोजनाओं की तुलना में परियोजनाएं छोटी होती हैं।
  • अच्छा कोड कैसे लिखें और पठनीयता पर कैसे उच्चारण करें; यह अनुभव के साथ आता है, लेकिन कुछ किताबें हैं जो आपको मूल बातें सिखाती हैं (कोड कम्प्लीट, क्लीन कोड आदि)।
  • कस्टमाइज़ेशन का उपयोग करते हुए, इसकी पूर्ण शक्ति पर एक फ्रेमवर्क का उपयोग कैसे करें; विश्वविद्यालय में हो सकता है कि आप सीखें कि कुछ बुनियादी परिदृश्यों पर कुछ रूपरेखाओं का उपयोग कैसे करें; उद्योग में आप कोने-मामलों तक पहुँचेंगे।
  • विनिर्देश के बाद कोड को कैसे समझना और लिखना है; आप संभवतः विनिर्देश लिखना सीखेंगे, लेकिन अब इसे कैसे पढ़ें और इसकी व्याख्या कैसे करें

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


उर्फ "प्रोग्रामिंग" केवल एक प्रोग्रामिंग भाषा नहीं जान रहा है, एक "वातावरण", "पारिस्थितिकी तंत्र", "ढांचा" है ...
umlcat

4

नए स्नातकों से सबसे बड़ी बात जो मुझे याद आ रही है, वह है संस्करण नियंत्रण की अच्छी समझ।

यदि आपके पास स्रोत कोड रिपॉजिटरी (जैसे GitHub ) का उपयोग करके ओपन सोर्स सॉफ़्टवेयर डेवलपमेंट का अनुभव है, तो आप mostअपने साथी वर्ग साथियों से एक कदम आगे हैं ।

दूसरी बात जटिलता की समझ है ( big O)। कॉलेज के अधिकांश लोगों ने इसके बारे में सुना है, लेकिन अभी तक वास्तविक सॉफ्टवेयर विकसित नहीं किया है, जहां यह खेल में आता है और इस प्रकार इसके वास्तविक महत्व को नहीं समझता है।

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


1
मुझे लगता है कि संस्करण नियंत्रण शिक्षा की कमी बदलने लगी है। मेरे स्कूल में संस्करण नियंत्रण पर बहुत जोर दिया गया था।
साउथपॉव हरे

@SouthpawHare: मैं यह नहीं कह रहा हूं कि यह अस्तित्वहीन है, उन्होंने इसे मेरे दिन में वापस पढ़ाया। बस इस अनुभव के साथ विश्वविद्यालय से बाहर आने वाले लोग अभी भी अल्पमत में हैं। और ऐसे लोगों के रूप में जिनके पास यह अधिक मूल्यवान है। मैं असहमत हूं कि पिछले 20 वर्षों में यह बहुत बदल गया है।
मार्टिन यॉर्क

3

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

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

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


2

वह कौन सा कौशल है जो आप चाहते हैं कि आप वास्तविक प्रोग्रामर बनने से पहले सीख सकें?

मेरे अनुभव में, मेरे स्कूल ने मुझे कभी नहीं सिखाया कि समस्याओं को कैसे हल किया जाए।

मेरे अनुभव में प्रोग्रामिंग सभी समस्याओं को हल करने के बारे में है। मेरे विद्यालय में वे केवल जाँच रहे थे कि क्या आप वाक्यविन्यास त्रुटि के बिना कार्यक्रम लिख सकते हैं। वास्तव में जो आवश्यक है वह इनपुट के रूप में नहीं दिया गया है। वाक्य-विन्यास बस कुछ ऐसा है जिसे आप जरूरत पड़ने पर किसी भी किताब से देख सकते हैं। लेकिन एक समस्या को हल करने की क्षमता कहीं से भी प्राप्त नहीं की जा सकती है सिवाय इसके कि आप इसके लिए खुद को अच्छी तरह से अभ्यास करें और प्रशिक्षित करें।

इसे किसी भी प्रकार का होने दें, यथासंभव अधिक से अधिक प्रश्नों को पूरा करने का प्रयास करें ताकि आप अपने आप में कुछ आत्मविश्वास पैदा करें। अपने दिमाग में इसे कुछ जुनून के साथ करने की कोशिश करें, और आप निश्चित रूप से प्राप्त करेंगे।


2

कुछ सामान्य डिजाइन पैटर्न सीखने के लिए कुछ समय लें: फैक्टरी, सिंगलटन, एडॉप्टर, कमांड और ऑब्जर्वर (मेरा कॉलेज उन्हें नहीं सिखाता)।

अगर कंपनी सॉफ्टवेयर डेवलपमेंट के लिए एजाइल मेथोडोलॉजी का इस्तेमाल करती है, तो इसके बारे में कुछ समझ रखना मूल्यवान होगा।


2

एक पेशेवर प्रोग्रामर के रूप में आपको जिन कौशलों की आवश्यकता होगी उनमें से कई विश्वविद्यालय / अकादमिक सेटिंग में प्रत्येक के लिए लगभग असंभव हैं।

वे सीधे क्षेत्र में काम करने के अनुभव से ही आ सकते हैं।

  • अपने "पेशे" के बाहर लोगों के साथ सहयोग और संवाद करना सीखना, जैसे ग्राफिक डिजाइनर, उत्पाद डिजाइनर, प्रबंधक, आदि।

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

  • यह जानना कि व्यावहारिक विचारों के साथ अच्छी कोडिंग प्रथाओं को कैसे संतुलित किया जाए। कोड "काफी अच्छा", "इंजीनियर से" या "रिफैक्टिंग की जरूरत" होने पर न्यायाधीश की योग्यता प्राप्त करना।

  • अपनी कमजोरियों और असुरक्षाओं को दूर करने के लिए सीखना। आलोचना झेलने की क्षमता हासिल करना। अपने अहंकार को जाने देना। यह सीखना कि व्यक्तिगत जिम्मेदारी लेने का क्या मतलब है, और फिर इसे लेना।

इस सब के बारे में पढ़ना आसान है। यह वास्तव में अभ्यास करने के लिए एक पूरी तरह से अलग चीज है। एक ही तरीका है इसे करके। आपको कई बार काट लिया जाएगा, और यह संभवतः चोट पहुंचाएगा, लेकिन आप इससे मजबूत और बेहतर तरीके से बाहर आएंगे।

प्रासंगिक रीडिंग: अपरेंटिसशिप पैटर्न


1

यह सब स्कूल पर निर्भर करता है। मेरे कॉलेज में, हमारे पास बहुत सारी व्यावहारिक परियोजनाएँ हैं। अक्सर टीमों में और विभिन्न स्रोत नियंत्रणों का उपयोग करते हुए। इसलिए मुझे लगता है कि कुछ स्कूल उन पर ध्यान केंद्रित करते हैं।

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

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


1
  • आवश्यकताएँ - उन्हें गलत और आराम करना ज्यादातर एक बेकार है
  • प्राथमिकताएं (जिसमें सुविधा जारी है)
  • आउट ऑफ बॉक्स बनायें या उपयोग करें (खरीदें / फ्रीवेयर)
  • टीम का काम
  • परियोजना प्रबंधन - आवश्यकताओं, गुणवत्ता (ठेस, परीक्षण मामलों, कैसे परीक्षण करने के लिए डेटा नमूने, आप कोड से पहले कवरेज में, वहाँ अधिक है, लेकिन प्रासंगिक नहीं है। एक पीएमआई पुस्तक पढ़ें।
  • संचार उपकरण (मेल, मीटिंग्स: कैलेंडर योजनाकार)
  • स्रोत कोड प्रबंधन

0

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

[JQuery से प्रमाणित होने और Java में प्रमाणित नहीं होने और कभी जावा प्लेटफ़ॉर्म नहीं पाने के बाद, और कई प्लेटफार्मों पर काम करने से पहले, 4 या 5 अलग जावास्क्रिप्ट फ्रेमवर्क की तरह सीखने के बाद वापस प्रतिबिंबित करना; AS400- RPG,> .NET - c #, और PHP, मैं इच्छा करने से पहले सिर्फ फोटोशॉप में महारत हासिल करता हूं और बग्स को ठीक करने या सॉफ्टवेयर लिखने के बिना बराबर पैसा कमाता हूं। ]

मेरा मतलब है कि विषयों की एक विस्तृत श्रृंखला को जानने में एक निश्चित संतुष्टि है, लेकिन संतुष्टि तब होती है जब आप किसी ऐसे व्यक्ति को देखते हैं जो सिर्फ फ़ोटोशॉप नकद को उसी पेचेक को जानता है।


2
हां, लेकिन उस तरह का विशेषज्ञ कभी भी अपनी दुकान नहीं खोलने जा रहा है। यदि आपका सपना भविष्य में कुछ समय के लिए आपके स्वयं के स्टार्टअप का सीईओ बनना है, तो आपको कौशल की एक बड़ी सरणी की आवश्यकता होगी।
दालो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.