ভূমিকা
আমাদের দেশে একটি কথা প্রচলিত আছে যে, মামার জোর থাকলে যোগ্যতা ছাড়াই চাকরি পাওয়া যায়। অনেক ক্ষেত্রে আবার দেখা যায় যে চাকরি পাওয়ার জন্য ঘুষ দিতে হয়। তবে আমাদের দেশের সফটওয়্যার কোম্পানিগুলোতে প্রোগ্রামার হিসেবে চাকরি পাওয়ার জন্য মামার জোর যথেষ্ট নয়, কারণ তাদের কাজগুলোই এমন যে, যথেষ্ট যোগ্যতাসম্পন্ন লোক না নিলে তাদের পক্ষে ক্লায়েন্টদের সন্তুষ্ট করা সম্ভব হয় না।
আমাদের দেশের সব সফটওয়্যার কোম্পানিতে ইন্টারভিউয়ের সময় হয়তো অ্যালগরিদমের ওপর জোর দেওয়া হয় না, কিন্তু শীর্ষস্থানীয় সফটওয়্যার কোম্পানিগুলোতে অ্যালগরিদম-ভিত্তিক প্রশ্নের গুরুত্ব বেশি। কিন্তু অনেক বিশ্ববিদ্যালয়ে অ্যালগরিদম কোর্সে এখনো মূলত জানা অ্যালগরিদম মুখস্থ লিখতে দেওয়া হয়। তাই ভালো সফটওয়্যার কোম্পানিতে (দেশে কিংবা দেশের বাইরে) ইন্টারভিউ দিতে হলে আলাদাভাবে প্রস্তুতি নেওয়া জরুরি। তাদের জন্য এই বইটি যথেষ্ট উপকারে আসবে বলে মনে হয়।
চতুর্থ শিল্পবিপ্লব কথাটি এখন সবাই বুঝে-না-বুঝে বলে বেড়াচ্ছে এবং তাতে সবার মনেই প্রশ্ন যে, ভবিষ্যতে আদৌ মানুষের জন্য চাকরি অবশিষ্ট থাকবে তো? এ কারণে সবাই এখন ডেটা সাইন্স, ক্লাউড কম্পিউটিং, বিগ ডেটা, ইন্টারনেট অব থিংস, মেশিন লার্নিং, কৃত্রিম বুদ্ধিমত্তা ইত্যাদি বিষয়ে বিশেষজ্ঞ হতে চাইছে। কিন্তু এসব বাজওয়ার্ড (buzzword) সম্পর্কে দু-চার কথা জেনে কিংবা ইতিহাস মুখস্থ করে আসলে বিশেষজ্ঞ হওয়া যাবে না। তার জন্য আগে প্রোগ্রামিং, ডেটা স্ট্রাকচার, অ্যালগরিদম, পরিসংখ্যান, গণিত এই জিনিসগুলো বোঝা ও জানা জরুরি।
তাই সুপ্রতিষ্ঠিত সফটওয়্যার কোম্পানিতে চাকরির ইন্টারভিউয়ের জন্য প্রস্তুতিতেও এসব জিনিসের জ্ঞান বাড়ানো জরুরি। এজন্য একটা উপায় হলো প্রোগ্রামিং প্রতিযোগিতায় অংশগ্রহণ করা। কিন্তু যাদের নিয়মিতভাবে প্রোগ্রামিং প্রতিযোগিতায় অংশ নেওয়া হয়নি, তাদের জন্যও এই বই উপকারে আসতে পারে। তবে বইটি পড়ার আগে এই লেখকেরই বা অন্য যেকোনো লেখকের বেসিক প্রোগ্রামিংয়ের ওপর লেখা বইগুলো পড়ে নিলে সুবিধা হবে।
সবাইকে কোনো সুপ্রতিষ্ঠিত সফটওয়্যার কোম্পানিতে ইন্টারভিউয়ে সফল হওয়ার আগাম অভিনন্দন।
শাহরিয়ার মনজুর,
সহযোগী অধ্যাপক ও বিভাগীয় প্রধান, সিএসই বিভাগ, সাউথইস্ট বিশ্ববিদ্যালয়
আইসিপিসি (ICPC) বিশ্ব চ্যাম্পিয়নশিপ-এর বিচারক ২০০৩-২০১৮
অ্যাসোসিয়েট কনটেস্ট ডিরেক্টর, ICPC ঢাকা সাইট ২০১৯
প্রেসিডেন্ট, বাংলাদেশ অ্যাসোসিয়েশন অব প্রবলেমসেটার্স।
লেখকের কথা
২০১৫ সালের জুন মাসে আমি সিঙ্গাপুরে গ্র্যাব (Grab) নামক একটি প্রতিষ্ঠানে যোগ দিই। এটি হচ্ছে দক্ষিণ-পূর্ব এশিয়ার সবচেয়ে বড় ট্রান্সপোর্ট প্রতিষ্ঠান (উবারের মতো)। সেই বছর আমার বস, অরুল কুমারাভেল (গ্র্যাবের তৎকালিন ভাইস প্রেসিডেন্ট অব ইঞ্জিনিয়ারিং) আমাকে একদিন বললেন, “তামিম, এই বছর আমরা তিনশ সফটওয়্যার ইঞ্জিনিয়ার নিয়োগ দেব।” আমি জবাব দিলাম, “একশ ইঞ্জিনিয়ার তো আমি বাংলাদেশ থেকেই এনে দিতে পারব।” তারপর আমি অনেক ভালো ভালো সফটওয়্যার ইঞ্জিনিয়ারদের গ্র্যাবে রেফার করি, কিন্তু তাঁদের মধ্যে মাত্র 18-20% সেখানে সবগুলো ইন্টারভিউ পাশ করে। যদিও তাঁরা খুব ভালো মানের ইঞ্জিনিয়ার, ইন্টারভিউতে পাশ না করার কারণ হচ্ছে পর্যাপ্ত প্রস্তুতির অভাব। বাংলাদেশে তো এ ধরনের ইন্টারভিউ সাধারণত কোনো কোম্পানি নেয় না, তাই কেউ সেভাবে প্রস্তুতও থাকে না। কিন্তু অন্যান্য দেশের দিকে, বিশেষ করে ভারত ও চীনের দিকে যদি তাকাই, তাহলে দেখব, তাদের দেশের সফটওয়্যার ইঞ্জিনিয়াররা সারা বিশ্বে ছড়িয়ে আছে। তার মূল কারণ, তাদের নিজের দেশেই অনেক বড় বড় সফটওয়্যার প্রতিষ্ঠান আছে, যেখানে ইন্টারভিউয়ের পদ্ধতি অনেকটা গুগল-ফেসবুক-মাইক্রোসফট-অ্যামাজনের মতো। সেজন্য তারা ইন্টারভিউ দেওয়ার জন্য ভালোভাবে প্রস্তুত থাকে। যেকোনো ইন্টারভিউয়ের আগেও তারা কিছুদিন নিবিড়ভাবে প্রস্তুতি গ্রহণ করে। তাই তারা ইন্টারভিউতে বেশ ভালো করে এবং বিশ্বের ভালো ভালো প্রতিষ্ঠানে কাজ করার সুযোগ পায়।
আমি যখন কোনো বই লিখি, তখন একটি নির্দিষ্ট সমস্যা সমাধান করার জন্য বইটি লিখি। আমার মনে হয়েছে যে, বাংলাদেশের ছেলেমেয়েরা আন্তর্জাতিক সফটওয়্যার প্রতিষ্ঠানগুলোর ইন্টারভিউ পদ্ধতির সঙ্গে পরিচিত নয়, এই সমস্যাটির সহজ সমাধান হতে পারে একটি বাংলা বই। তবে বইটি পড়ে ফেললেই শেষ নয়; আরো কাজ আছে, যা আমি বইতে নির্দেশ করেছি। বইয়ের সমস্যাগুলো বেশ পরিচিত সমস্যা এবং বিভিন্ন কোডিং চর্চার ওয়েবসাইটে সমস্যাগুলো রয়েছে। এসব সমস্যার সবগুলোই কিন্তু কোনো না কোনো ইন্টারভিউতে জিজ্ঞাসা করা হয়েছে এবং তারপর সেখান থেকে সংগ্রহ করে সেসব ওয়েবসাইটে দেওয়া হয়েছে।
বইটি সম্পাদনা করেছে মোশারফ হোসেন ও তাহমিদ রাফি – তাঁদের প্রতি আমার কৃতজ্ঞতা। এছাড়া মীর ওয়াসি আহমেদ (বর্তমানে অ্যামাজন লন্ডন অফিসে কর্মরত) বইটি রিভিউ করেছে। তাঁকেও ধন্যবাদ। এছাড়া বইটি লেখার সময় অনেক সহকর্মীর সঙ্গে ইন্টারভিউ বিষয়ে নানান আলোচনা আমাকে সাহায্য করেছে। আর 2018-19 সালে আমি সিঙ্গাপুর, ইউরোপ, অস্ট্রেলিয়া ও মালয়েশিয়ার বিভিন্ন প্রতিষ্ঠানে 38টি ইন্টারভিউ দিয়েছি, সেই অভিজ্ঞতাও এই বইটিকে সমৃদ্ধ করেছে বলে আমার বিশ্বাস। আরেকটি কথা বলাই বাহুল্য। আমি পূর্ণকালীন চাকরি করি, আবার সেই সঙ্গে আমি এক সন্তানের বাবা। তারপরও লেখালেখির জন্য যে সময় বের করতে পারি, এর মূল কৃতিত্ব আমার স্ত্রী পারমিতার।
এই বইতে আমি বিশ্বমানের প্রতিষ্ঠানগুলোতে সফটওয়্যার ইঞ্জিনিয়ারিং ইন্টারভিউয়ের সঙ্গে পাঠকদের পরিচয় করিয়ে দেওয়ার চেষ্টা করেছি মাত্র। আশা করছি তারা এই বইয়ের মাধ্যমে প্রস্তুতি শুরু করবে এবং তারপর আরো ভালোভাবে প্রস্তুতি নেবে। কয়েক বছরের মধ্যেই আমাদের দেশের ছেলেমেয়েরা কম্পিউটার বিজ্ঞান বিষয়ে লেখাপড়া শেষ করে নিজের দেশেও যেমন কাজ করবে, তেমনি সারা বিশ্বের বড় বড় শহরেও ছড়িয়ে পড়বে। তাদের জন্য আমার শুভকামনা।
তামিম শাহ্রিয়ার সুবিন,
সিডনি, অস্ট্রেলিয়া।
সূচিপত্র
- ভূমিকা
- লেখকের কথা
- লেখক পরিচিতি
- অধ্যায় ১ – বইয়ের বিষয়বস্তু
- বইটি কাদের জন্য লেখা?
- বইটি কীভাবে পড়তে হবে?
- অধ্যায় ২ – কোডিং ইন্টারভিউতে কী হয়?
- প্রোগ্রামিং ভাষা
- ইন্টারভিউতে গুরুত্বপূর্ণ বিষয় কী কী?
- ইন্টারভিউয়ের ফলাফল যাচাই
- অধ্যায় ৩ – বিষয়ভিত্তিক প্রোগ্রামিং সমস্যা
- অ্যারে ও স্ট্রিং
- লিংকড লিস্ট
- আরো অ্যারে
- স্ট্যাক ও কিউ
- রিকার্শন
- ট্রি
- হিপ ও প্রায়োরিটি কিউ
- আরো বেশি প্রস্তুতি
- অধ্যায় ৪ – সমাধান
- অ্যারে ও স্ট্রিং
- লিংকড লিস্ট
- আরো অ্যারে
- স্ট্যাক ও কিউ
- রিকার্শন
- ট্রি
- হিপ ও প্রায়োরিটি কিউ
Reviews
There are no reviews yet.