52 पॉइंट द्वारा xguru 2023-11-06 | 6 टिप्पणियां | WhatsApp पर शेयर करें
  • छोटा प्रोजेक्ट हो या बड़ा, हर प्रोजेक्ट आपके toolbox में नई skills और tools जोड़ने का अवसर होता है
  • जब आप एक प्रोजेक्ट में सीखी गई skills को दूसरे प्रोजेक्ट में सीखे गए tools के साथ जोड़कर समस्या हल कर पाते हैं, तब आप अधिक बड़ा मूल्य पैदा कर सकते हैं। सब कुछ मिलकर जुड़ता जाता है
  • शुरुआत में आप language/library सीखते हैं, लेकिन करियर आगे बढ़ने के साथ आपकी रुचि और दायरा भी व्यापक होना चाहिए
  • यह सिर्फ technical पहलुओं तक सीमित नहीं है, बल्कि approach, methodology और paradigm पर भी समान रूप से लागू होता है
  • engineer के रूप में विकसित होने का असली मूल्य सिर्फ अलग-थलग skills जमा करने में नहीं, बल्कि उन्हें बुनकर ऐसी जटिल जाल-सदृश क्षमता बनाना है जो उसके हिस्सों के कुल योग से भी बड़ी हो

Toolbox

  • अगर engineering skills को एक toolbox की तरह सोचें, तो हर बार जब आप कोई नया algorithm/language/framework आदि सीखते हैं, तो मूल रूप से इस box में एक नया tool जुड़ जाता है
  • लेकिन किसी tool का होना और यह जानना कि उसे प्रभावी ढंग से कब और कैसे इस्तेमाल करना है, ये पूरी तरह अलग बातें हैं
  • यहीं पर अनुभव का मूल्य सामने आता है
  • हर प्रोजेक्ट, उसके आकार की परवाह किए बिना, ऐसी अनोखी चुनौतियाँ देता है जो यह समझने में मदद करती हैं कि किसी खास tool का उपयोग कब करना चाहिए
  • "comfort zone आरामदायक होता है, लेकिन वह कम ही सबक देता है। ऐसे प्रोजेक्ट सक्रिय रूप से खोजिए जो आपको stretch करें। आपका toolbox इसके लिए आपका आभारी होगा।"

  • लेकिन toolbox कोई स्थिर वस्तु नहीं है; यह उपयोगकर्ता के साथ विकसित होता है
  • समय के साथ आप सिर्फ अधिक tools नहीं जोड़ेंगे, बल्कि अधिक जटिल समस्याओं को हल करने के लिए tools को नए तरीकों से जोड़ना भी शुरू करेंगे
  • एक प्रोजेक्ट में RESTful API इस्तेमाल करने का अनुभव दूसरे प्रोजेक्ट में third-party services को कुशलता से integrate करने में मदद कर सकता है
  • multithreading की समझ data-heavy applications के performance को नाटकीय रूप से optimize कर सकती है
  • मुख्य बात यह है कि हर प्रोजेक्ट के लिए आपको अलग toolbox की ज़रूरत नहीं होती
  • एक ही toolbox के साथ आप हर प्रोजेक्ट की अनोखी requirements और constraints का लाभ उठा सकते हैं

Skills और tools की pairing

  • महान engineers और सामान्य engineers के बीच अंतर पैदा करने वाली चीज़ यह क्षमता है कि आप एक प्रोजेक्ट में सीखी skills को दूसरे प्रोजेक्ट में हासिल किए tools के साथ जोड़ सकें
  • यह cross-pollination अधिक efficient problem solving संभव बनाता है और अक्सर बेहतर solutions तक ले जाता है
  • toolbox की quality का निर्धारण "tools की संख्या" से नहीं, बल्कि "वे tools जिन समस्याओं को हल कर सकते हैं उनकी समृद्धि" से होता है
  • एक वास्तविक उदाहरण
    • मान लीजिए आपने inventory की संख्या को सही बनाए रखने के लिए database transactions की गहरी समझ के आधार पर एक ecommerce website पर काम किया
    • किसी अलग प्रोजेक्ट में आपने real-time chat application के लिए WebSocket programming को गहराई से सीखा
    • अब आपको inventory management के लिए real-time dashboard विकसित करने का काम सौंपा गया
    • इस तरह आप अलग-अलग प्रोजेक्ट्स से सीखी skills को जोड़कर एक शक्तिशाली solution बना सकते हैं
    • database transactions की गहरी समझ का उपयोग करके आप inventory data की reliability और consistency सुनिश्चित कर सकते हैं, और साथ ही WebSockets का उपयोग करके dashboard पर real-time updates push कर सकते हैं
    • इन skills को जोड़ने का स्पष्ट लाभ यह है कि आप सिर्फ समस्या हल नहीं करते, बल्कि उसे efficient और elegant तरीके से हल कर सकते हैं
  • safe zone से बाहर फैलना: अपने comfort zone से आगे stretch करना क्यों महत्वपूर्ण है
    • परिचित और कम दबाव वाले, आपके मौजूदा skill set से मेल खाने वाले प्रोजेक्ट्स की ओर आकर्षित होना आसान है
    • लेकिन जितने अधिक विविध अनुभव आप इकट्ठा करेंगे, tools की चौड़ाई उतनी ही बढ़ेगी और इनका फलदायी उपयोग करने की आपकी क्षमता भी उतनी ही बेहतर होगी
    • ऐसे प्रोजेक्ट सक्रिय रूप से खोजिए जो आपको कुछ नया सीखने या पहले से अलग तरीके से सोचने के लिए मजबूर करें
    • आपको पता चलेगा कि ऊपर से पूरी तरह असंबंधित दिखने वाले प्रोजेक्ट्स में भी बहुत लाभ छिपे होते हैं

फुर्ती और अनुकूलनशीलता बनाए रखना

  • technology लगातार विकसित हो रही है, और जो tool आपने आज सीखा है वह कल उतना उपयोगी न भी रहे
  • लेकिन इसका मतलब यह नहीं कि वह tool बेकार हो जाता है। बल्कि, वह आपको बदलाव के अनुसार ढलने और innovate करने की क्षमता दे सकता है
  • उदाहरण के लिए, cloud-native architecture के आने का मतलब यह नहीं कि पारंपरिक relational database का ज्ञान अर्थहीन हो गया
  • SQL और database design की बुनियादी समझ, आधुनिक data storage solutions के साथ काम करने की आपकी क्षमता को काफी बढ़ा सकती है

मूल्यवान अनुभव इकट्ठा करने के लिए व्यावहारिक tips

  • किसी tool में mastery हासिल करना, इस यात्रा का सिर्फ एक milestone है कि उसे कब और कैसे इस्तेमाल करना है
  • अनुभव इकट्ठा करने के लिए कई विकल्प मौजूद हैं
    • विविध projects को curate करें: अलग-अलग आकार, अलग-अलग technologies और अलग-अलग problem domains वाले projects पर काम करें। हर project आपके toolbox में कुछ अनोखा जोड़ सकता है
    • reflection और documentation करें: project पूरा करने के बाद, आपने क्या सीखा इस पर पीछे मुड़कर सोचने का समय निकालें। उससे भी बेहतर है इसे document करना। 'lessons learned' वाले private repository या public blog post के माध्यम से आप अपनी समझ मजबूत कर सकते हैं और ज्ञान साझा कर सकते हैं
    • community में भाग लें: open source contribution या developers के लिए बने tailored social platforms के माध्यम से community में शामिल होने पर आप ऐसी समस्याओं से रूबरू हो सकते हैं जिनसे अन्यथा सामना नहीं होता
    • mentor बनें और mentorship लें: आपने जो सीखा है उसे एकीकृत करने के सबसे प्रभावी तरीकों में से एक है दूसरों को सिखाना। इसी तरह, उन engineers से सलाह लेने या सीखने में हिचकिचाइए मत जो उन क्षेत्रों में विशेषज्ञ हैं जिन्हें आप अच्छी तरह नहीं जानते
    • सीखना बंद न करें: online courses, webinars, या weekend में नई language सीखना जैसी निरंतर learning, लगातार विकसित होते career के लिए lubricant का काम करती है

निष्कर्ष

  • skill cross-pollination सिर्फ संयोग नहीं, बल्कि engineering की elegance है
  • सबसे अच्छे solutions अक्सर अनपेक्षित skills के संयोजन से निकलते हैं
  • इसलिए अगली बार जब आप किसी नई समस्या से जूझ रहे हों, तो अपने अनुभव के toolbox को ध्यान से देखिए
  • संभव है कि समाधान किसी नए tool में mastery से नहीं, बल्कि वर्षों में इकट्ठा किए गए tools के समझदारी भरे उपयोग से मिले
  • problem solving के प्रति यही बहु-स्तरीय और सूक्ष्म approach वास्तव में आपके career को आगे बढ़ाती है और आपको engineer के रूप में अलग पहचान देती है

6 टिप्पणियां

 
kan02134 2023-11-12

लगता है कि AI ने प्रवेश की बाधा काफी कम कर दी है, इसलिए यह बदलाव और तेज़ हो गया है।

 
[यह टिप्पणी छिपाई गई है.]
 
zzzz2222 2023-11-06

अनुभव जुटाने का मौका तो दो -_-
छोटी-मोटी कंपनियों में यह नहीं जुटाया जा सकता। खासकर अगर वहाँ PHP वाले भरे पड़े हों, तो और भी नहीं!

 
hero512 2023-11-06

इन दिनों मैं यह गहराई से महसूस कर रहा हूँ.
लगता है कि सिर्फ़ पढ़ाई से काम नहीं चलता.
क्या अच्छा engineer बनने के लिए किसी अच्छी company (अच्छे experience के लिए) में job change करना ही एकमात्र जवाब है?

 
xguru 2023-11-06

यह कहना भी मुश्किल है कि जहाँ अलग-अलग प्रोजेक्ट्स का अनुभव मिल सके, वही अच्छी कंपनी होती है।
मुझे नहीं लगता कि नौकरी बदलना ही ज़रूर सही जवाब है। नौकरी बदलना वाकई बहुत मुश्किल भी होता है।
क्या फिलहाल side project शुरू करना सबसे अच्छा विकल्प नहीं होगा?

 
hero512 2023-11-06

धन्यवाद। मैं अभी से शुरू करता हूँ haha