एक नई कंपनी में कोडिंग शुरू करने के लिए आवश्यक समय [बंद]


12

मैं 4 साल से एक सॉफ्टवेयर इंजीनियर हूं, और मैंने पहली बार अपनी कंपनी बदली है।

कंपनी जोड़ी प्रोग्रामिंग के साथ काम करती है, और 3 दिन हो गए हैं, मैं कोड की एक पंक्ति भी नहीं लिख सकता। यह मेरे लिए बहुत निराशाजनक है क्योंकि मैं अपनी पिछली कंपनी में बहुत उत्पादक था।

कोडबेस बड़ा है, वे 5-6 भाषाओं / उपकरणों का उपयोग कर रहे हैं जिनसे मैं परिचित नहीं हूं, जैसे rspec, haml, jasmine और अन्य। लेकिन फिर भी, मुझे अजीब लगता है।

इस सप्ताह के अंत में मैंने आवेदन की बेहतर समझ प्राप्त करने के लिए यूएमएल का निर्माण किया, लेकिन फिर भी मैं अनुमान लगा रहा हूं कि मैं इस सप्ताह कोड की सभ्य मात्रा नहीं लिख पाऊंगा।

क्या यह सामान्य है?

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

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

Btw, मैं पहले ही सवाल और जवाब के नीचे पढ़ चुका हूं, आप बड़े कोड बेस में कैसे गोता लगाते हैं?

/programming/215076/whats-the-best-way-to-become-familiar-with-a-large-codebase

/programming/214605/the-best-way-to-familiarize-yourself-with-an-inherited-codebase

अपडेट करें

सभी महान सुझाव! मैं अभी काम से आया हूँ, मैंने बहुत काम किया है!

जोड़ी प्रोग्रामिंग के बारे में:

आम तौर पर वे कोड लिखते हैं, और मैं एक सेकंड भी याद नहीं करने की कोशिश कर रहा हूं! यदि मैं कोड लिखने की कोशिश करता हूं, तो मुझे पता है कि यह हमेशा के लिए ले जाने वाला है, क्योंकि मुझे यह भी नहीं पता है कि मुझे कौन सी फाइलें संपादित करनी चाहिए, लेकिन इसके अलावा, जैसा कि मैंने कहा, वे 6-7 भाषाओं / रूपरेखाओं का उपयोग कर रहे हैं जो मैं नहीं हूं से परिचित है, और इन सभी वाक्यविन्यासों को एक साथ सीखना आसान नहीं है।

इंजीनियरों के लिए कंपनी कितनी तैयार है:

मैं नहीं कह सकता कि वे अच्छी तरह से संगठित हैं, वे मुझसे तुरंत कोड लिखना शुरू करने की उम्मीद कर रहे हैं।

नोट लेना, सक्रिय होना:

मैं हमेशा नोट ले रहा हूं जब वे डेटा मॉडल के बारे में एक नई कमांड / या कुछ भी लिखते हैं। मेरे साथी बहुत स्मार्ट और दयालु लोग हैं, और मैं कभी-कभी बहुत सारे बेवकूफ सवाल पूछने की कोशिश कर रहा हूं ।

क्या यह आम है ?:

@ टेलस्टाइन, आपके उत्तर के लिए धन्यवाद, इसने मुझे थोड़ा बेहतर महसूस कराया। ऐसा लगता है कि मेरी समस्या असामान्य नहीं है, लेकिन मैं वास्तव में इस काम से पहले उत्पादक था, और अब मैं वास्तव में बेकार और स्मार्ट नहीं हूं।

मुझे आशा है कि मैं बहुत जल्द बग्स को हल करना / मुद्दों को लागू करना शुरू कर सकता हूं।

उन रूपरेखाओं / भाषाओं के बारे में जो वे उपयोग करते हैं:

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

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


चूंकि आप उल्लेख करते हैं कि आप बड़े कोड बेस में कैसे गोता लगाते हैं? , वहाँ क्या जवाब है जो आपके मामले को कवर नहीं करता है?
gnat

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

@kevincline यदि वह नए डेवलपर के रूप में जोड़ी बना रहा है, तो उसे यह सुनिश्चित करना चाहिए कि वह कीबोर्ड पर एक होना चाहिए अन्यथा यह एक बहुत खराब जोड़ी सेटअप होगा ...
जिमी हॉफ

यदि यह है कि कंपनी चीजों को कैसे करती है, तो आपके पास वास्तव में कोई विकल्प नहीं है। सुनिश्चित करें कि आप जानते हैं कि समय आने पर वे आपसे क्या उम्मीद करते हैं। सवाल पूछो। प्रतिक्रिया हासिल करें। यदि आप सावधान नहीं हैं तो आप बहुत समय बर्बाद कर सकते हैं।
जेएफओ

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

जवाबों:


10

यह सिस्टम की जटिलता और नए प्रोग्रामर को ऑनबोर्ड करने के लिए संगठन को कितनी अच्छी तरह तैयार किया जाता है, इस पर निर्भर करता है। इसमें कहीं भी 30 मिनट से लेकर कई सप्ताह तक लग सकते हैं। यह जरूरी नहीं है कि आप कुछ भी गलत कर रहे हैं और आपको इसके बारे में बुरा महसूस नहीं करना चाहिए।

हालांकि, आपको क्या करना चाहिए, यह अपने और दूसरों के लिए ठीक करने के बारे में सक्रिय है। अपने प्रबंधक को अपनी कुंठाओं के बारे में बताएं और उन्हें दूर करने और अन्य नए कामों के लिए प्रक्रिया को बेहतर बनाने के लिए मिलकर काम करें।

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


1
कई महीने जटिल, बड़े (1 मिलियन + SLOC) के लिए असामान्य नहीं है, विशेष रूप से डोमेन भी आला और / या जटिल है।
मटनज़

1
+1: कुछ कंपनियों ने नए काम पर रखने वाले मेंटरों को विशेष रूप से इन कारणों के लिए चाहे कितना भी अनुभव हो, सौंपा हो। मैं हमेशा मेरे पास बैठे व्यक्ति में चूसने वाला हूं जो मदद करने के लिए तैयार है और उनसे सवाल पूछ रहा है - और फिर जब मैं मदद करता हूं तो मैं उन्हें खुले तौर पर मेरे / उनके प्रबंधक को देता हूं।
स्टीवन एवर्स

@ मत्तन्ज येप। कई महीने हालांकि कई हफ्तों के बहुत सारे हैं। ;)
रीन हेनरिक्स

5

क्या यह सामान्य है?

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

एक टीम के नेतृत्व के रूप में, मैं आपसे 1 (दो सप्ताह) स्प्रिंट के लिए प्रभावी रूप से कुछ भी नहीं करने की उम्मीद करता हूं, और अगले 1-2 स्प्रिंट के लिए ~ 50% काम करता हूं।


2

अन्य चरम पर स्विंग करें .. मैंने एक ऐसी कंपनी में काम किया, जिसमें केवल 2-3 भाषाएं थीं, लेकिन प्रोग्रामर्स को कोड बेस पर ढीले होने से पहले एक साल का बेहतर हिस्सा ले लिया, शायद 1 या 2 महीने पहले उन्होंने अपनी पहली पंक्ति बनाई कोड।

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


1

यह वास्तव में आपके द्वारा की जा रही नौकरी और उस भूमिका पर निर्भर करता है जो आप कर रहे हैं।

यदि आप कॉन्ट्रैक्ट-आधारित काम कर रहे हैं, तो आपको काम पूरा करने के लिए अपने निपटान में सभी कौशल का उपयोग करते हुए, वास्तव में ग्राउंड रनिंग हिट करने की उम्मीद है। अनुबंध का काम आमतौर पर अच्छी तरह से परिभाषित है और आप (आमतौर पर) ऐसा करने में सक्षम हैं, कम से कम मेरे अनुभव में।

दूसरी ओर, मैंने एक जगह पर शुरुआत की है जिसमें एक विशाल लर्निंग कोड एक विशाल लर्निंग कर्व के साथ था। हमें पहले छह महीनों के लिए उत्पादन कोड लिखने की उम्मीद नहीं थी।

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


0

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

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

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


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