ভূমিকা আমাদের দেশে একটি কথা প্রচলিত আছে যে, মামার জোর থাকলে যোগ্যতা ছাড়াই চাকরি পাওয়া যায়। অনেক ক্ষেত্রে আবার দেখা যায় যে চাকরি পাওয়ার জন্য ঘুষ দিতে হয়। তবে আমাদের দেশের সফটওয়্যার কোম্পানিগুলোতে প্রোগ্রামার হিসেবে চাকরি পাওয়ার জন্য মামার জোর যথেষ্ট নয়, কারণ তাদের কাজগুলোই এমন যে, যথেষ্ট যোগ্যতাসম্পন্ন লোক না নিলে তাদের পক্ষে ক্লায়েন্টদের সন্তুষ্ট করা সম্ভব হয় না। আমাদের দেশের সব সফটওয়্যার কোম্পানিতে ইন্টারভিউয়ের সময় হয়তো অ্যালগরিদমের ওপর জোর দেওয়া হয় না, কিন্তু শীর্ষস্থানীয় সফটওয়্যার কোম্পানিগুলোতে অ্যালগরিদম-ভিত্তিক প্রশ্নের গুরুত্ব বেশি। কিন্তু অনেক বিশ্ববিদ্যালয়ে অ্যালগরিদম কোর্সে এখনো মূলত জানা অ্যালগরিদম মুখস্থ লিখতে দেওয়া হয়। তাই ভালো সফটওয়্যার কোম্পানিতে (দেশে কিংবা দেশের বাইরে) ইন্টারভিউ দিতে হলে আলাদাভাবে প্রস্তুতি নেওয়া জরুরি। তাদের জন্য এই বইটি যথেষ্ট উপকারে আসবে বলে মনে হয়। চতুর্থ শিল্পবিপ্লব কথাটি এখন সবাই বুঝে-না-বুঝে বলে বেড়াচ্ছে এবং তাতে সবার মনেই প্রশ্ন যে, ভবিষ্যতে আদৌ মানুষের জন্য চাকরি অবশিষ্ট থাকবে তো? এ কারণে সবাই এখন ডেটা সাইন্স, ক্লাউড কম্পিউটিং, বিগ ডেটা, ইন্টারনেট অব থিংস, মেশিন লার্নিং, কৃত্রিম বুদ্ধিমত্তা ইত্যাদি বিষয়ে বিশেষজ্ঞ হতে চাইছে। কিন্তু এসব বাজওয়ার্ড (buzzword) সম্পর্কে দু-চার কথা জেনে কিংবা ইতিহাস মুখস্থ করে আসলে বিশেষজ্ঞ হওয়া যাবে না। তার জন্য আগে প্রোগ্রামিং, ডেটা স্ট্রাকচার, অ্যালগরিদম, পরিসংখ্যান, গণিত এই জিনিসগুলো বোঝা ও জানা জরুরি। তাই সুপ্রতিষ্ঠিত সফটওয়্যার কোম্পানিতে চাকরির ইন্টারভিউয়ের জন্য প্রস্তুতিতেও এসব জিনিসের জ্ঞান বাড়ানো জরুরি। এজন্য একটা উপায় হলো প্রোগ্রামিং প্রতিযোগিতায় অংশগ্রহণ করা। কিন্তু যাদের নিয়মিতভাবে প্রোগ্রামিং প্রতিযোগিতায় অংশ নেওয়া হয়নি, তাদের জন্যও এই বই উপকারে আসতে পারে। তবে বইটি পড়ার আগে এই লেখকেরই বা অন্য যেকোনো লেখকের বেসিক প্রোগ্রামিংয়ের ওপর লেখা বইগুলো পড়ে নিলে সুবিধা হবে।
সূচিপত্র ভূমিকা লেখকের কথা লেখক পরিচিতি অধ্যায় ১ – বইয়ের বিষয়বস্তু * বইটি কাদের জন্য লেখা? * বইটি কীভাবে পড়তে হবে? অধ্যায় ২ – কোডিং ইন্টারভিউতে কী হয়? * প্রোগ্রামিং ভাষা * ইন্টারভিউতে গুরুত্বপূর্ণ বিষয় কী কী? * ইন্টারভিউয়ের ফলাফল যাচাই অধ্যায় ৩ – বিষয়ভিত্তিক প্রোগ্রামিং সমস্যা * অ্যারে ও স্ট্রিং * লিংকড লিস্ট * আরো অ্যারে * স্ট্যাক ও কিউ * রিকার্শন * ট্রি * হিপ ও প্রায়োরিটি কিউ * আরো বেশি প্রস্তুতি অধ্যায় ৪ – সমাধান * অ্যারে ও স্ট্রিং * লিংকড লিস্ট * আরো অ্যারে * স্ট্যাক ও কিউ * রিকার্শন * ট্রি * হিপ ও প্রায়োরিটি কিউ
১৯৮২ সালের ৭ নভেম্বর ময়মনসিংহে জন্ম নেওয়া তামিম শাহরিয়ার সুবিন পেশায় একজন সফটওয়্যার ইঞ্জিনিয়ার। তার শিক্ষাজীবন শুরু হয় হোমনা সরকারি প্রাথমিক বিদ্যালয়ে। অতঃপর এ কে উচ্চ বিদ্যালয় ও নটরডেম কলেজে পড়া শেষে শাহজালাল বিজ্ঞান ও প্রযুক্তি বিশ্ববিদ্যালয়ে কম্পিউটার সায়েন্স এন্ড ইঞ্জিনিয়ারিং বিষয়ে পড়াশোনে শেষ করেন। সরকারি কর্মকর্তার ঘরে জন্ম নেওয়া সুবিনের প্রধান আকর্ষণ প্রোগ্রামিংকে ঘিরে। তিনি প্রোগ্রামিং বিষয়ক প্রায় পাঁচশোটি সমস্যা বিশ্ববিদ্যালয়ে থাকাকালে সমাধান করেছেন। নানা ভাষায় কোডিং করতে পারলেও তার পছন্দের প্রোগ্রামিং ভাষা পাইথন। তবে তার শখ লেখালিখি এবং ভ্রমণ। শখ এবং আগ্রহের বস্তুকে এক বিন্দুতে মিলিয়ে সুবিন লিখে ফেলেছেন বেশ কয়েকটি বই। তামিম শাহরিয়ার সুবিন এর বই সমূহ’র বিষয়বস্তু হলো কম্পিউটার প্রোগ্রামিং, যার বেশিরভাগ বাংলা ভাষায় লিখিত। কীভাবে বাংলা ভাষাভাষী মানুষের কম্পিউটার প্রোগ্রামিং বিষয়ে জড়তা দূর করা যায় সে ভাবনা থেকেই তিনি বাংলায় প্রোগ্রামিং বিষয়ক বই লেখা শুরু করেন। সহজ, সাবলীল ভাষায় লেখা বলে তামিম শাহরিয়ার সুবিন এর বই পাঠকের আত্মস্থ করতে বেগ পেতে হয় না। তামীম শাহরিয়ার সুবিন এর বই সমগ্র এর মাঝে তাই দেখতে পাওয়া যায় প্রোগ্রামিং গাইডলাইন, পাইথন দিয়ে প্রোগ্রামিং ও গণিতের মতো খটমটে বিষয়ের উপস্থিতি। তিনি বাংলাদেশে থাকাকালে মুক্ত সফটওয়্যার লিমিটেড ও দ্বিমিক কম্পিউটিং নামক দুটি প্রতিষ্ঠান গড়ে তোলেন। বাংলাদেশ গণিত অলিম্পিয়াডের একজন একাডেমিক কাউন্সিলর হিসেবেও নিয়োজিত রয়েছেন। বর্তমানে তিনি সপরিবারে সিঙ্গাপুরে বসবাস করছেন।