পেশা হিসেবে সফটওয়্যার ইঞ্জিনিয়ারিং নিতে চাইলে
কম্পিউটার সায়েন্সে অধ্যয়নরত স্টুডেন্টই শিক্ষাজীবনে বহুবার একজন ভালো সফটওয়্যার ইঞ্জিনিয়ার হওয়ার উপদেশ পান। কিন্তু শিক্ষার্থীরা সবচেয়ে বেশী সমস্যায় পড়ে একজন ভালো সফটওয়্যার ইঞ্জিনিয়ার হওয়ার রোডম্যাপ কেমন হতে পারে তা নিয়ে। একজন সফল সফটওয়্যার ইঞ্জিনিয়ার হওয়ার রোডম্যাপ নিয়ে শিক্ষার্থীদের উদ্দেশ্যে বিভিন্ন দিকে তুলে ধরেছেন আশরাফুল আলম ইমন। বিইউবিটির (বাংলাদেশ ইউনিভার্সিটি অফ বিজনেস অ্যান্ড টেকনোলজি) সাবেক এই শিক্ষার্থী বর্তমানে বিশ্বখ্যাত এমিরেটস গ্রুপের ফ্লাইট ক্যাটেরিংয়ের ইনফরমেশন টেকনোলজি বিভাগের সফটওয়্যার ইঞ্জিনিয়ার হিসেবে কর্মরত আছেন। ইতিপূর্বে তিনি কাজ করেছেন ওয়ালটন গ্রুপ এবং ইউএস-বাংলা এয়ারলাইন্সের মতো দেশীয় প্রতিষ্ঠানেও। আশরাফুল আলম ইমন তাঁর জীবনের অভিজ্ঞাতার আলোকে সফটওয়্যার ইঞ্জিনিয়ারিং বিষয়ে দ্যা ডেইলি ক্যাম্পাসের বিভিন্ন প্রশ্নের
আলোকে নতুনদের উদ্দেশ্যে বিভিন্ন পরামর্শ তুলে ধরেছেন-
দ্যা ডেইলি ক্যাম্পাস: কী করে একজন শিক্ষার্থী বুঝবে যে তার সফটওয়্যার ইঞ্জিনিয়ারিং সেক্টরে যাওয়া প্রয়োজন?
আশরাফুল আলম ইমন: যেকোনো সেক্টরে যাওয়া প্রত্যেকের নিজস্ব পছন্দ থেকে হয়। তবে আমি ব্যক্তিগতভাবে মনে করি যদি কারও যদি প্রবলেম সলভ করার প্যাশন থাকে, প্রোগ্রাম লিখতে এবং সমস্যা সমাধান করার জন্য লেগে থাকতে পারার মানসিকতা থাকে, তাহলে তার জন্য সফটওয়্যার ইঞ্জিনিয়ারিং একটি ভালো ক্ষেত্র হতে পারে।
দ্যা ডেইলি ক্যাম্পাস: বিশ্ববিদ্যালয়ে যারা প্রথম বা দ্বিতীয় বর্ষে আছে তাদের করণীয় কী হতে পারে? তারা কী তখন থেকেই রোডম্যাপ সেট করবে?
আশরাফুল আলম ইমন: প্রথম ও দ্বিতীয় বর্ষে প্রোগ্রামিংয়ের সাথে থাকাটাই শ্রেয়। এসময়ে প্রবলেম সলভ করার মানসিকতা এবং দক্ষতা বাড়ানোর দিকে মনোযোগ দেওয়া উচিত। এর পাশাপাশি অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং (OPP), ডেটা স্ট্রাকচার (DS), ডেটাবেস (DB) এইসব বিষয়ে ভালো দক্ষতা অর্জনের চেষ্টা করা দরকার।
অনেকে আবার চারিদিকে মনোযোগ দিতে গিয়ে একাডেমিক রেজাল্ট খারাপ করে ফেলে, এটাও কিন্তু ঠিক না। মোটামুটিভাবে ভালো একটি ফলাফল আপনার জার্নি অনেকটা সহজ করে তুলবে এবং আপনাকে আপনার বিশ্ববিদ্যালয়ে একটি গ্রহণযোগ্য এবং স্বাচ্ছন্দ্যের জায়গায় রাখবে।
দ্যা ডেইলি ক্যাম্পাস: সফটওয়্যার ইঞ্জিনিয়ারিংকে পেশা হিসেবে নিতে চাইলে কীভাবে প্রিপারেশন নিতে হবে?
আশরাফুল আলম ইমন: প্রথম ও দ্বিতীয় বর্ষে তো আপনাকে প্রোগ্রামিং নিয়ে থাকতে হবে। তৃতীয় বর্ষের শেষদিকে অথবা চতুর্থ বর্ষের শুরুতে আপনাকে এই সংক্রান্ত কাজে মন দিতে হবে। তখন আপনার কাজ হবে দুটো জিনিস সার্চ করা:
• সফটওয়্যার ইন্ডাস্ট্রিগুলো কোন স্টেকে বেশি হায়ার করছে।
• ঐ স্টেকে কী কী রিকোয়ারমেন্ট বেশি চাচ্ছে।
এরপর আপনাকে ঐ সকল স্টেকের মধ্য থেকে যেকোনো একটি বাছাই করতে হবে। সেটি হতে পারে জাভা(JAVA), সি-শার্প (C#), পাইথন (PYTHON), জাভাস্ক্রিপ্ট (JS), ডার্ট(Da), পিএইচপি(PHP) ইত্যাদি। এবার এই ল্যাঙ্গুয়েজের সবচেয়ে জনপ্রিয় এবং কার্যকর এমন ফ্রেমওয়ার্কের আপনাকে কাজ শুরু করতে হবে।
এখন প্রশ্ন, কাজ শুরু করবেন কিভাবে? প্রথমেই যে ল্যাঙ্গুয়েজ সিলেক্ট করছেন সেটার ব্যাসিক সিনটেক্স শিখতে হবে। তারপর সে ব্যাসিক সিনটেক্সট ব্যহার করে যে কোনো প্লাটফর্মে গিয়ে অন্ততপক্ষে ৫০-৬০ টি প্রবলেম সলভ করতে হবে। যেন মোটামুটিভাবে সকল ধরনের ডাটা স্ট্রাকচারে আপনি দক্ষ হয়ে ওঠেন। তবে এক্ষেত্রে আমার পরামর্শ থাকবে লিটকোডে অনুশীলন করার।
ডাটা স্ট্রাকচার সংক্রান্ত কাজ শেষ হওয়ার পর আপনাকে যেতে হবে ফ্রেমওয়ার্ক শেখার জন্য। সেখানে শিখতে হবে ক্রুড অপারেশন। এখন প্রশ্ন আসবে কি করে এই ক্রুড অপারেশন শিখবেন? টাকা খরচ করে কোর্স নিতে হবে কী? আমি বলবো এর কোন প্রয়োজন নেই। গুগলে প্রচুর রিসোর্স দেওয়া আছে। সেখান থেকে আপনার প্রয়োজনীয় সকল তথ্য আপনি পেয়ে যাবেন।
সাধারণত মাঝারি ধরনের বা অনেকসময় একদম জটিল বিষয়গুলোও এখন ইউটিউবে সহজলভ্য। একটু ঘাটাঘাটি করলেই একগাদা রিসোর্স পাবেন। আর এখন তো চ্যাট জিপিটি( CHAT GPT) আছেই। শেখার জন্য এটি বেশ ভালে একটি জায়গা। নতুন অনেক কিছু শেখার জন্য আমি নিজেও এটি ব্যবহার করি।
ক্রুড অপারেশন যখন আপনি মোটামুটিভাবে শিখে যাবেন তখন আপনাকে ছোট ছোট প্রজেক্ট নিয়ে কাজ করতে হবে। কিছু প্রজেক্ট তৈরি করতে হবে। এক্ষেত্রে আমার পরামর্শ থাকবে যে ই-কমার্স সংক্রান্ত সফটওয়্যার তৈরি করুন। ইকমার্স তৈরির ক্ষেত্রে মোটামুটি সব ধরনের বিষয় আপনার আয়ত্ত্বে এসে যাবে। যিনি একটি ইকমার্স সঠিকভাবে ডেভেলপ করতে পারেন তার জন্য যেকোনো ম্যানেজমেন্ট সংক্রান্ত ডেভেলপমেন্ট অনেক সহজ। ছোট করে একটা ইকমার্স বানিয়ে নিলে সাথে সিএমএস (CMS) বানালে আপনি বুঝবেন যে আপনি অনেকটা পথ এগিয়ে গিয়েছেন।
দ্যা ডেইলি ক্যাম্পাস: সফটওয়্যার ইঞ্জিনিয়ার হিসেবে চাকরির প্রিপারেশন কী করে নিতে হয়?
আশরাফুল আলম ইমন: উপরের বিষয়গুলো যদি আপনি ভালোভাবে শেষ করতে পারেন তার মানে আপনি ফ্রেশার হিসেবে এখন প্রস্তুত। আর যে সকল প্রতিষ্ঠান নতুনদের চাকরিতে নেবে তারা চায় ব্যসিক বিষয়গুলো জানে এবং অন্তত একটি টেকনোলজিতে কাজ করতে পারে এমন লোককে চাকরিতে নিতে। পরে তারা তাদের মতো করে সে মানুষটিকে প্রশিক্ষণ দিয়ে দক্ষ করে তুলবে।
একটি উদাহরণ দিয়ে বিষয়টি পরিষ্কার করি। মনে করুন, একটা ট্রেন ঘন্টায় ১০০ কি. মি বেগে ছুটছে। এখন আপনি যদি সেই ট্রেনকে ধরতে চান তবে আপনাকে ঘন্টায় কমপক্ষে ৭০ কি. মি. বেগে ছুটতে হবে। তাহলে চালক তার গতি কিছুটা কমিয়ে আপনাকে তুলে নিয়ে আবার ঘন্টায় ১০০ কি. মি. বেগে ছুটতে শুরু করবে। কিন্তু আপনার গতি যদি ঘন্টায় ১০-১৫ কি.মি. হয় তাহলে ট্রেন আপনার জন্য কখনোই থামবে না।
এখন ইন্টারভিউ ক্রাক করার জন্য আপনি কী করবেন? প্রথমেই আপনার বেসিক বিষয়গুলোকে ঘষেমেজে নিজেকে প্রস্তুত করে নেবেন। ফ্রেশারদের সাধারণত প্রোগ্রামিং, অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং (OPP), ডেটা স্ট্রাকচার(DS) এসব সংক্রান্ত প্রশ্ন করা হয়। প্রস্তুতি নেওয়ার জন্য আপনি ইন্টারভিউ বিট (INTERVIEW BIT) এবং গিকস ফর গিকস (GEEKS FOR GEEKS) এই দুটি সাইট ফলো করতে পারেন। ব্যক্তিগতভাবে আমার কাছে এই দুটি সাইট ভালো মনে হয়েছে।
দ্যা ডেইলি ক্যাম্পাস: আপনার ইন্টারভিউয়ের অভিজ্ঞতা কেমন ছিলো? বিশেষত এমিরেটসের অভিজ্ঞতা কেমন ছিলো?
আশরাফুল আলম ইমন: আমি অনেক জায়গাতেই ইন্টারভিউয়ে অংশ নিয়েছি। প্রতিটি প্রতিষ্ঠানের কিছু আলাদা চাহিদা আছে এবং তারা সেসবের উপর ভিত্তি করে লোক বাছাই করে। তাদের চাহিদা যদি আপনার দক্ষতার সাথে মিলে যায় তাহলে তারা আপনাকে চাকরিতে নেবে অথবা না।
আর এমিরেটসে আমাকে সর্বমোট ৫টি ধাপ অতিক্রম করতে হয়েছে। প্রথম ধাপে ব্যক্তিগত বিষয়গুলো নিয়ে কথা হয়েছে। তার পরের ধাপে টেকনিক্যাল বিষয়গুলো নিয়ে, তৃতীয় ধাপ প্রোগ্রামিং সংক্রান্ত, চতুর্থ ধাপে আবারও টেকনিক্যাল বিষয় এবং সবশেষ ধাপে ম্যানেজমেন্ট সংক্রান্ত বিষয় ছিলো।
দ্যা ডেইলি ক্যাম্পাস: অনেকেই অভিযোগ করে যে চাকরি সংক্রান্ত তথ্যগুলো তারা খুঁজে পান না, সেক্ষেত্রে করণীয় কী?
আশরাফুল আলম ইমন: এরজন্য প্রথমেই আপনাকে নিজের ইন্ড্রাস্ট্রি সম্পর্কে জানতে হবে। কখন কী ঘটছে তা সম্পর্কে কিছুটা হলেও ওয়াকিবহাল থাকা প্রয়োজন। তাহলে সুযোগগুলো আপনার চোখে পড়বে। এর পাশাপাশি যা করবেন তা হলো- বিডি জবসে চোখ রাখবেন, লিংকডইন প্রোফাইল সবসময় আপডেট রাখবেন এবং নিয়মিত সবার সাথে যোগাযোগ রাখবেন। বিশ্বিবদ্যালয়ের সিনিয়র যারা আছেন তারা এবং ফেসবুক গ্রুপগুলোও এক্ষেত্রে বেশ সাহায্য করে। তবে সিভি পাঠালেই যে সাথে সাথে চাকরি হবে এমন কোন কথা নেই। আপনার ভাগ্য, ধৈর্য এবং দক্ষতা থাকলে অবশ্যই চাকরি পাবেন আপনি।
দ্যা ডেইলি ক্যাম্পাস: আপনার অভিজ্ঞতা বা উপলব্ধি থেকে যদি কোন বিষয় যুক্ত করতে চান, তাহলে সেটি কী হবে?
আশরাফুল আলম ইমন: সফটওয়্যার ইঞ্জিনিয়ার হিসেবে কাজ করতে চাইলে আপনাকে অবশ্যই পরিশ্রমী এবং ধৈর্যশীল হতে হবে। বারবার নিজেকে চ্যালেঞ্জ করার মানসিকতা থাকা লাগবে। এমন বহু সময় আসবে যখন আপনার উপর অর্পিত দায়িত্ব আপনাকে চ্যালেঞ্জ করবে তখন সে চ্যালেঞ্জ নেওয়ার মানসিকতা থাকতে হবে। এটি এমন একটি পেশা যাতে সবসময় শেখার মধ্যে থাকতে হয়। চাকরির প্রয়োজনে নতুন নতুন অনেক বিষয় আপনার সামনে আসবে। আপনার শেখা এবং প্রয়োগের একটি চলমান প্রক্রিয়ায় থাকতে হবে।