paint-brush
डेव जॉब पाने के लिए कोई शॉर्टकट नहीं हैं: धीमे तरीके से कोड करना सीखेंद्वारा@wagslane
2,956 रीडिंग
2,956 रीडिंग

डेव जॉब पाने के लिए कोई शॉर्टकट नहीं हैं: धीमे तरीके से कोड करना सीखें

द्वारा Lane Wagner5m2023/09/13
Read on Terminal Reader

बहुत लंबा; पढ़ने के लिए

मुझे 3 महीने में डेवलपर की नौकरी चाहिए; ऐसा करने का सबसे अच्छा तरीका क्या है? नौकरी पाने का कोई शॉर्टकट नहीं है।
featured image - डेव जॉब पाने के लिए कोई शॉर्टकट नहीं हैं: धीमे तरीके से कोड करना सीखें
Lane Wagner HackerNoon profile picture
0-item

Boot.dev शुरू करने के बाद से, मैं उन चीज़ों से भर गया हूँ जिन्हें मैं "क्विकसैंड प्रश्न" कहता हूँ। सतह पर, क्विकसैंड प्रश्न एक अच्छे प्रश्न की तरह लगता है । यदि आप इसका उत्तर दे सकते हैं, तो यह आपको उस स्थान से ले जाएगा जहां आप हैं (वेंडी के ड्राइव-इन पर रात की पाली) जहां आप होना चाहते हैं (दोस्तों को बताएं कि आप काम करते हैं) नेटफ्लिक्स वैसे)।


क्विकसैंड प्रश्न शॉर्टकट खोजने के बारे में हैं।


मुझे 3 महीने में डेवलपर की नौकरी चाहिए; ऐसा करने का सबसे अच्छा तरीका क्या है?


मैं देख रहा हूं कि आपने अपने बैकएंड लर्निंग पथ में 20 पाठ्यक्रम निर्धारित किए हैं, लेकिन, *विंक* मैं किन को छोड़ सकता हूं?

शॉर्टकट में क्या खराबी है?

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


सिद्धांत रूप में, शैक्षिक न्यूनतम-अधिकतम एक ठोस रणनीति की तरह लगती है, लेकिन यह व्यवहार में काम नहीं करती है।

क्यों? क्योंकि मंजिल अज्ञात है.


यदि आप जानते हैं कि आप कहाँ जा रहे हैं तो डिज्क्स्ट्रा का एल्गोरिदम बहुत अच्छा है। यदि आप नहीं चाहते, तो आपको कुछ और चाहिए।

कोई नहीं जानता कि वे कहां जा रहे हैं

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


मैंने एम्बेडेड सिस्टम से लेकर फ्रंट-एंड डेवलपमेंट तक, सभी प्रकार की बकवास के लिए साक्षात्कार लिया। हाँ, पता चला कि मेरी प्रोलॉग क्लास ने मेरे पहले साक्षात्कार में बहुत मदद नहीं की, लेकिन आप जानते हैं क्या? इससे कोई नुकसान नहीं हुआ, और अब, जब कोई कहता है, "यह एक घोषणात्मक प्रणाली है," मेरे चेहरे की अभिव्यक्ति अज्ञानता को उजागर नहीं करती है।


यदि आप ठीक से जानते हैं कि अपना पहला साक्षात्कार पास करने के लिए आपको किन अवधारणाओं में महारत हासिल करनी होगी, तो आप एक प्रभावी शॉर्टकट ढूंढने में सक्षम हो सकते हैं। समस्या यह है कि ज्ञान का कोई सटीक उपसमुच्चय नहीं है जो हर संभव पहले साक्षात्कार को पास करने के लिए हमेशा पर्याप्त हो।


  • प्रत्येक कंपनी का अपना जान्की टेक स्टैक होता है

  • प्रत्येक प्रधान मंत्री के पास "फुर्तीले" का अपना संस्करण है

  • प्रत्येक नियुक्ति प्रबंधक की अपनी 7-चरणीय साक्षात्कार प्रक्रिया होती है

  • प्रत्येक कार्य के लिए अलग-अलग रहस्यमय ज्ञान की आवश्यकता होती है


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

तो, मुझे सबसे छोटे रास्ते में दिलचस्पी नहीं होनी चाहिए?

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


  1. सीधे वेब फ्रेमवर्क में जाएं (संभवतः Next.js क्योंकि आप बुनियादी हैं)।
  2. पता लगाएं कि आपके पास TODO ऐप्स बनाने की प्रतिभा है
  3. समझें कि आप ट्यूटोरियल के बिना "हैलो वर्ल्ड" नहीं बना सकते
  4. अधिक ट्यूटोरियल करके इसका समाधान करने का प्रयास करें
  5. ट्विटर पर पढ़ें कि एक्शॉउली रस्ट सबसे अच्छी भाषा है
  6. उधार लेने वाले चेकर के हाथों हार स्वीकार करें
  7. चरण 1-4 n बार दोहराएँ, जहाँ n एक d4_roll * your_stubbornness है

सबसे छोटा पथ (या कम से कम एक छोटा पथ) आमतौर पर इस तरह दिखता है:

  1. किसी भाषा में कोर प्रोग्रामिंग/सीएस अवधारणाओं को सीखें

  2. आप जिस प्रकार की प्रोग्रामिंग करना चाहते हैं उस पर अस्थायी रूप से निर्णय लें (फ्रंटएंड, बैकएंड, मोबाइल, आदि)

  3. उन प्रौद्योगिकियों में उस प्रकार की प्रोग्रामिंग के मूल सिद्धांतों को सीखें जो इसके लिए उपयुक्त हों

  4. नौकरी की तलाश करते समय कभी भी सीखना और निर्माण करना बंद न करें


मुझे गलत मत समझो, यह दूसरा रास्ता अभी भी छोटा नहीं है। प्रोग्रामिंग आसान नहीं है; क्षमा करें यदि आपको बताया गया था कि ऐसा था, लेकिन यदि आप प्रयास करने के इच्छुक हैं, तो आप ट्यूटोरियल नरक के 9वें चक्र में लक्ष्यहीन टहलने से बच सकते हैं।

काम से मत डरो

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

चांद पर डॉगकॉइन?

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


सॉफ्टवेयर इंजीनियर बनना कोई "जल्दी अमीर बनो" योजना नहीं है। यह एक "उच्च-मध्यम-वर्ग-धीमी गति प्राप्त करो" योजना है


"इसे बनाने" की युक्ति? आपको वास्तव में अच्छा बनना होगा।


इसलिए, आपके सामने आने वाली अगली त्रुटि को "ठीक" करने के लिए StackOverflow से बेतरतीब ढंग से कॉपी/पेस्ट करने के बजाय, इसका अर्थ जानने के लिए अतिरिक्त मिनट लें। मैं आपको यह बताना शुरू नहीं कर सकता कि मैंने कितने पीआर की समीक्षा की है जो कुछ को "ठीक" करते हैं लेकिन वे बस एक पैच का टुकड़ा हैं क्योंकि विकास ने अंतर्निहित समस्या पर कभी ध्यान नहीं दिया।


उदाहरण के लिए, एक पूर्व-जावा देव (यह हमेशा एक जावा देव होता है) पाता है कि कभी-कभी यह फ़ंक्शन (गो में) घबरा जाता है:

 // sendEmail sends emails, but sometimes panics func sendEmail(e *email) error { // ... }

वे सीधे Google पर जाते हैं और पाते हैं कि गो में घबराहट को recover के साथ "समाधान" किया जा सकता है। तो, वे एक पुल अनुरोध खोलते हैं:

 func sendEmail(e *email) error { defer func() { if r := recover(); r != nil { log.Println("recovered from panic in sendEmail") } }() // ... }

इस तरह काम करता है? हालाँकि, एक बेहतर डेवलपर कोड में अंतर्निहित समस्या को समझने और उसे ठीक करने का प्रयास करेगा। वे nil जाँच जोड़ देंगे, या इस फ़ंक्शन के लिए पॉइंटर्स का उपयोग पूरी तरह से बंद कर देंगे...

 // now sendEmail never panics func sendEmail(e email) error { // ... }

आप बेहतर बनने का पूर्वाग्रह रखना चाहते हैं, अंत तक पहुंचने का नहीं। वहाँ कोई "अंत" नहीं है. वहां सीखने के लिए बहुत कुछ है। सभी सॉफ्टवेयर इंजीनियरिंग का दायरा आपके पिछले प्रोग्राम के वैश्विक नामस्थान के दायरे से बड़ा है।

यह वह सलाह नहीं है जो आप चाहते थे

फिट होना, व्यसन छोड़ना, व्यवसाय बनाना, और, हाँ, अपनी पहली डेव नौकरी प्राप्त करना, ये सब कठिन हैं। शॉर्टकट खोजने में अपना समय बर्बाद करके इसे अपने लिए कठिन न बनाएं।


सदाबहार मूलभूत चीजें सीखें, ऐसी परियोजनाएं बनाएं जिनमें आपकी रुचि हो , और आप यह देखकर आश्चर्यचकित रह जाएंगे कि लगातार एक या दो साल के प्रयास में आप कितनी दूर तक पहुंच सकते हैं।


यहाँ भी प्रकाशित किया गया है.