कोडिंग से परे - भाग 1

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

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

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

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

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

चिंता न करें, एक कौशल के रूप में कोडिंग मरना नहीं है; कम से कम जल्द ही नहीं। आप केवल कोड लिखने में अधिक कुशल होंगे क्योंकि AI सह-पायलटों की इसमें आपकी सहायता करना सस्ता हो जाता है। लेकिन आपको अभी भी यह जानना है कि आपके एआई सह-पायलट कोड को आपके लिए कैसे पढ़ा जाए, है ना? इसलिए एक ऐसा व्यक्ति बनने की ख्वाहिश रखें जो कोडिंग में अच्छा हो लेकिन कोड पढ़ने में बेहतर हो। कोई ऐसा व्यक्ति बनें जो यह पता लगाना जानता हो कि उत्पादन में हर 15 मिनट में कुछ पॉड नीचे क्यों जाते रहते हैं।

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