Technology के बढ़ते युग में software engineer और developer की माँग बढ़ गयी है| आज के दिन में करोड़ो जॉब देश दुनिया में software इंजीनियरिंग के field में उत्पन्न हो रहे हैं| दिन प्रतिदिन नए नए technology विकसित हो रहे हैं और इसके पीछे ढेर सारे software engineers का हाथ है| आज के इस पोस्ट में हम बात करने जा रहे हैं की कोई student software engineer कैसे बने?
हर कोई का सपना होता है की उसके पढ़ाई complete होते ही उसे जॉब मिल जाये और वो ख़ुशी ख़ुशी अपनी जिन्दगी बिताये लेकिन बहुत कम लोग ही ऐसे होते हैं जो की पढ़ाई के तुरंत बाद जॉब ले पाते हैं इसका मुख्य वजह ये नहीं है की जॉब की कमी है, जॉब तो दुनिया में बहुत पड़े हुए हैं लेकिन इसके लिए आपको उस काबिल बनना होगा जिससे की आप कहीं पर भी आसानी से जॉब पा सकें|
बहुत सारे students अपने future career को लेकर के परेशान रहते हैं क्योंकि उन्हें कोई guide करने वाला नहीं होता है जिस कारण से वे देश दुनिया में अलग अलग सेक्टर के बारे में जानकारी हासिल नहीं कर पाते हैं| अगर आपको computer पढने में और computer चलाने में रूचि है तो आज के यह पोस्ट आपके लिए काफी helpful रहेगा, आपको अपने career select करने में|
चलिए जानते हैं की Software engineer कौन होते हैं? Software engineering क्या होता है और software engineer कैसे बने?
Software engineer कौन होते हैं?
इसे जानने से पहले हम थोडा सा software के बारे में जानते हैं| Software बहुत सारे data और instructions का collection होता है जो की computer को कोई काम करने के लिए instruction देता है| जिस प्रकार हम किसी दूसरे person को अपनी भाषा में कोई काम करने के लिए instruction देते हैं ठीक उसी प्रकार computer को भी एक भाषा के द्वारा instruction देना पड़ता है जिसे programming language कहा जाता है|
Software engineer एक ऐसा person को कहा जाता है जो software engineering के principle को apply करके एक complete software develop करता है और साथ ही साथ उसकी testing और maintenance भी करता है|
दूसरे और आसान शब्दों में समझे तो software engineer एक ऐसे person को कहा जाता है जो की client से requirement को लेकर के उसके expectation के अनुसार complete software तैयार करता है और उसको उसके machine के अनुसार compatible बनाता है जिससे की client के computer system में वो software आसानी से execute हो सके| Software engineer के पास software develop करने के अलावा hardware का भी knowledge होता है जैसे की अगर एक software बन रहा है तो उसे execute करने के लिए कौन कौन से hardware की जरुरत पड़ेगी|
Software engineer करते क्या हैं – What software engineers do?
बहुत सारे लोग को अगर हम बता दें की software engineer है और software बनाने का काम करते हैं तो भी उनलोगों को समझ नहीं आती जो इस field से नहीं होते हैं| तो उन्हें हमें आसान भाषा में example के साथ बताना पड़ता है| चलिए हम जानते हैं software के कुछ example जो real लाइफ में इस्तेमाल किया जाता है|
आप जब भी बैंक ATM जाते हैं तो ATM machine में हम अपने card डालते हैं उसके बाद कुछ process होता है और फिर complete process करने के बाद पैसा निकलता है वहां पर कोई आदमी नहीं होता है जो की हमें पैसे दे| तो उस ATM machine में एक software install होता है जो की किसी software engineer के द्वारा तैयार किया गया होता है|
अगर आप software engineer पद के लिए किसी कंपनी में जाते हैं तो वहाँ आपको अलग अलग सेक्टर के software बनाने के लिए मिलता है जैसे की banking, education, hospital, research, इत्यादि|
Software engineering क्या होता है?
Software engineering एक complete software बनाने का process होता है जिसमें सबसे पहले प्रॉब्लम को समझते हैं उसके बाद उस प्रॉब्लम के solution के लिए हम कुछ information जुटाते है और फिर उसका solution को computer software के रूप में design, develop और test करते हैं|
आइये इस term को आसान शब्दों में समझते हैं| जब भी कोई client आपके पास software बनवाने के लिए आता है तो सबसे पहले उसके प्रॉब्लम को समझते हैं की आखिर वो software क्यों बनवाना चाहता है उसके बाद उससे software से related कुछ जानकारी हासिल करते हैं की software में कौन कौन से features होंगे| उसके बाद Software की designing और development start करते हैं, ये complete होने के बाद Software की टेस्टिंग करते हैं और अगर testing successful रहा तो उसके बाद उसको implement करते हैं| इस complete process को software engineering कहा जाता है|
Software engineer कैसे बने?
एक बेहतर software engineer बनने के लिए आपको निचे दिए गए steps को follow करने होंगे|
अपना goal (लक्ष्य) निर्धारित करें:
कोई भी काम तब तक सफल नहीं होता जब तक की कोई लक्ष्य ना हो| अगर आप software engineer बनना चाहते हैं तो सबसे पहले एक goal set करें की हमे software engineer ही बनना है क्योंकि जब तक आप goal set नहीं करेंगे तब तक आपके मन में अलग अलग प्रकार के career के बारे में सवाल उठते रहेंगे|
मैं खुद एक software engineer हूँ, मैंने पढाई करते समय ही अपना goal set कर लिया था की मुझे software engineer ही बनना है इसलिए मैंने सबसे ज्यादा focus अपने goal पर किया|
कई सारे students ऐसे होते हैं की वो software engineer बनने की तैयारी करते हैं और साथ ही साथ Government job का भी preparation करते हैं जो की बिल्कुल भी सही नहीं है इससे आपका महत्वपूर्ण समय बर्बाद होता है और फिर आप ना ही इधर के रहते हैं ना ही उधर के इसलिए किसी एक चीज पर ही focus करें|
Computer field या किसी और field में बैचलर डिग्री प्राप्त करें:
अधिकांश लोगो का कहना होता है की आपको software engineer बनने के लिए computer field में bachelor डिग्री प्राप्त करना होगा लेकिन ऐसा कुछ नहीं है| आप किसी भी field से bachelor degree प्राप्त करके software engineer बन सकते हैं|
Computer field से bachelor degree सिर्फ इसलिए करने के लिए कहा जाता है क्योंकि आपके पास computer के basic जानकारी हो जाये और उसके साथ साथ programming language की भी जानकारी हो जाये|
Programming language को आप कहीं से भी सीख सकते हैं आज के दिन में online बहुत सारे courses उपलब्ध होते हैं जहाँ से आप easily programming के बारे में सीख सकते हैं|
किसी special language में internship करें:
जब आप कॉलेज या स्कूल में होते हैं तो आपको ढेर सारे subjects पढने के लिए दे दिए जाते हैं लेकिन software engineer बनने के लिए आपके पास किसी एक programming knowledge का अधिक ज्ञान होना चाहिए जिससे की आप एक software application बना सकें|
Internship एक ऐसा period है जिसमें कोई भी company किसी students को hire करके उसे काम करने का तरीका सीखाता है इसके बाद student को internship certificate provide करता है जिसे students किसी दूसरे कंपनी में दिखाकर के जॉब पा सकते हैं|
किसी ऐसे language में internship करें जिससे आप complete software बना सकें| जैसे की Python, PHP, C#, Ruby.
Internship हमेशा company से ही करने की कोशिश करें| बहुत सारे students अच्छे मार्क्स के चक्कर में कॉलेज से ही internship करते हैं जिससे की उनको मार्क्स तो मिल जाता है परन्तु उन्हें working environment के बारे में पता नहीं चल पाता है|
हमेशा नए नए programming language से updated रहें
आज के दिन में technology इतना आगे बढ़ गया है की दिन प्रतिदिन नए नए programming language develop हो रहे हैं या पुराने programming language के updated version develop हो रहे हैं जिनसे update रहना बहुत ही जरुरी है|
जिस प्रकार Nokia मोबाइल के update नहीं होने के कारण market से खत्म हो गया उसी प्रकार अगर आप update नहीं होंगे तो आपकी भी demand market से खत्म हो जाएगी इसलिए हमेशा update रहने की कोशिश करें|
Social media group join करें
Social media एक दूसरे से connect होने के लिए या फिर information share करने के लिए सबसे popular प्लेटफार्म बन चूका है| आज के समय में social media पर हजारो ऐसे groups हैं जहाँ पर programming language से related एक दूसरे की मदद की जाती है|
आप अपने programming language के अनुसार social media पर ग्रुप join करें जिससे आपको बहुत कुछ नयी नयी चीजे सिखने को मिलेगी और साथ ही साथ आप अपनी समस्या का समाधान भी पा सकते हैं| Groups में अलग अलग जगहों से beginners और professionals developers जुड़े हुए होते हैं जिनके द्वारा आपको कई ऐसी अहम जानकारीयाँ सीखने को मिलेगी जो की आप कभी कॉलेज में नहीं सीख सकतें|
छोटे मोटे project बनाएं
जब भी हम programming language में project बनाना सीखते हैं तो सबसे पहले ऐसे छोटे मोटे project बनाते हैं जिसमें Create, Read, Update और delete (CRUD) operation perform करते हैं इसमें simple operation perform करके हम छोटे मोटे project बनाते हैं|
हर project में CRUD operation ही perform होता है बस project level का difference होता है आप जैसे जैसे experienced developer बनते जायेंगे वैसे वैसे आपको नयी नयी चीजे सीखने को मिलती जाएगी और साथ ही साथ आप High-level project भी बना सकेंगे|
Experienced developer के द्वारा बनाये गए code को read करें
Experienced developer बड़े बड़े operation perform करने के लिए बहुत ही short में code बनाते हैं जिससे की developer का time और money बचता है और साथ ही साथ project का execution speed भी fast होता है|
जिस project में जितना कम code लिखा हुआ हो वो उतना ही फायदेमंद होता है, क्योंकि उसका execution time कम होता है जिससे वह fast work करेगा| हर कोई चाहता है की कोई भी कार्य तेज गति से हो खास कर के computer के field में|
जब आप अपने स्तर पर project बनाने के लिए ready हो जायेंगे तो उसके बाद आपको experienced developer के द्वारा लिखे गए code को पढ़े और समझे की code को कैसे short किया जाता है|
Preparing for interview
अब next level आता है interview की तैयारी करना क्योंकि हर कंपनी employee hire करने से पहले उनका interview लेती है अगर वे interview में pass होते हैं तभी उनको select किया जाता है|
हमेशा interview आपके level के अनुसार ही लिए जाते हैं अगर आप किसी कंपनी में fresher के तौर पर जाते हैं तो आपसे basic चीजों के बारे में जानकारी ली जाती है और जब आप experienced के तौर पर interview देने जाते हैं तो आपसे high-level के साथ साथ basic level के question भी पूछे जाते हैं|
Interview देने जाने से पहले हमेशा ये prepare कर लें की आप कौन से programming language के लिए interview देने जा रहे हैं| आप जिस भी programming language के interview के लिए जा रहे हैं उसका question इन्टरनेट पर देख लें वही question पूछे जाते हैं|
Software engineer बनने के बारे में कुछ myths
दुनिया में करोडो लोग हैं और सब अपनी अपनी बाते अपनी अपनी तरह से रखते हैं जिससे सुनने वाला हमेशा confuse हो जाता है| चलिए हम कुछ ऐसी बाते बताते हैं जिन्हें जानकर आप वाकई खुश हो जायेंगे|
Marks percentage
Marks percentage को लेकर के हर students के मन में एक चिंता बनी रहती है की जॉब मिलेगा या नहीं| Marks percentage से आपके जॉब पर कोई असर नही पड़ता है अगर आपके पास knowledge है तो आप बेहतर जॉब पा सकते हैं लेकिन कई जॉब्स ऐसे होते हैं जिसमें मार्क्स percentage अच्छा होना जरुरी होता है|
software engineer बनने के लिए आपके पास knowledge होना बहुत जरुरी है, अगर आपका मार्क्स कम है तो भले ही आपको कॉलेज कैंपस से selection ना हो लेकिन आप उस जगह पर कुछ दिन के बाद जरुर पहुँच सकते हैं जहाँ पर जाने की आपका सपना है|
अगर आपका मार्क्स कम हो तो आप कभी भी चिंतित ना हो| मैं खुद एक software engineer हूँ और मेरा मार्क्स percentage matric और inter में बहुत ही कम था फिर भी मैं आज अपने सपने को पूरा कर रहा हूँ|
Qualification
अधिकांश लोगो का कहना होता है की software engineer या software developer के जॉब पाने के लिए आपके पास computer field में डिग्री होना चाहिए लेकिन ऐसा कुछ नहीं है आपके पास अगर higher qualification नही भी है तो भी आप एक अच्छा software engineer बन सकते हैं इसके लिए knowledge की जरुरत होती है ना की qualification की|
आज के competition युग में आपके पास minimum bachelor डिग्री होना चाहिए| यह आने वाले दिनों के अनुसार डिग्री की मांग बढ़ सकती है क्योंकि competition बहुत ज्यादा हो जायेगा और इससे बचने के लिए आपके पास अच्छी डिग्री होना बहुत जरुरी है|
English speaking
अगर आपके पास English speaking skill नहीं है तो भी आप software engineer बन के जॉब पा सकते हैं लेकिन अगर आपके पास English speaking skill अच्छी होगी तभी आप अच्छे कंपनी में जॉब प्राप्त कर सकते हैं|
बहुत सारे लोग कंपनी में काम करते करते उस माहौल में रहकर के English बोलना सीख जाते हैं| कुछ लोग का कहना होता है की Software engineer बनने के लिए English क्यों जरुरी होता है? आपको बता दें की Software development के field में foreign countries आगे चल रही है अधिकतर project foreign countries के ही होते हैं, आपको उनसे communicate करने के लिए English speaking skill होना जरुरी है|
Conclusion and Final Words
दुनिया में कोई भी चीज छोटा या बड़ा नही होता है कोई भी चीज आसान और मुश्किल भी नहीं होता| वो आपके देखने के नजरिये के ऊपर depend करता है की आप उसे किस तरीके से देख रहे हैं|
Software engineer बनना कोई मुश्किल काम नहीं है लेकिन उस चीज से update रहना थोडा मुश्किल कार्य है अगर आप हमेशा छोटी छोटी चीजो से update होते रहते हैं तो आपको कोई भी तस मुश्किल नहीं होगा| जब आप software development के field में कार्य करने जायेंगे तो जब आपको high-level का project दिया जायेगा तो आपको उस समय धैर्य से काम लेना है क्योंकि उस्मने ऐसा कोई कार्य नहीं होता है जो की आपको मुश्किल लगे| उसमें आपको केवल समझने की क्षमता रखनी है अगर एक बार आप समझ गये तो उस problem को आप चुटकियों से solve कर लेंगे|
अगर आप भी software engineer या software developer बनना चाहते हैं तो आप programming language सीखने पर focus करें| इस field से related किसी भी प्रकार के सुझाव लेने के लिए हमारे team से संपर्क कर सकते हैं|
Mayur Machhi says
Software engineer kya hai?
SUMIT KUMAR GUPTA says
Software engineer wo hote hai jo application software bnate hai jaise aap apne mobile ka istemal kar rhe hai usme jo bhi apps aap use kar rhe hai wo ek software engineer / Android developer ke dwara bnaya gya hai. Software engineer ke pas development ke alawa networking ka bhi knowledge hota hai.