paint-brush
আপনার পরবর্তী কোডিং সাক্ষাত্কারটি কীভাবে এগিয়ে নেওয়া যায়: টিপস যা আমাকে মেটাতে চাকরি পেতে সাহায্য করেছেদ্বারা@erjantj
9,082 পড়া
9,082 পড়া

আপনার পরবর্তী কোডিং সাক্ষাত্কারটি কীভাবে এগিয়ে নেওয়া যায়: টিপস যা আমাকে মেটাতে চাকরি পেতে সাহায্য করেছে

দ্বারা Yerzhan Torgayev6m2023/05/20
Read on Terminal Reader
Read this story w/o Javascript

অতিদীর্ঘ; পড়তে

কোডিং হল মূল ফ্যাক্টর যা নির্ধারণ করবে আপনি এই ভূমিকার জন্য উপযুক্ত কিনা। অ্যালগরিদম এবং ডেটা স্ট্রাকচার শেখা চ্যালেঞ্জিং হতে পারে, তবে এটি কোনও রকেট বিজ্ঞান বা গোপন শিল্প নয়। চাবিকাঠি হল আপনার কাঙ্খিত ফলাফল পেতে দীর্ঘ সময় ধরে ধারাবাহিক এবং অবিচলিত প্রচেষ্টা করা।
featured image - আপনার পরবর্তী কোডিং সাক্ষাত্কারটি কীভাবে এগিয়ে নেওয়া যায়: টিপস যা আমাকে মেটাতে চাকরি পেতে সাহায্য করেছে
Yerzhan Torgayev HackerNoon profile picture
0-item
1-item

একটি সফ্টওয়্যার ইঞ্জিনিয়ারিং কাজ করার চেষ্টা করার সময়, আপনাকে সম্ভবত আচরণগত এবং সিস্টেম ডিজাইন সহ বেশ কয়েকটি সাক্ষাত্কারের মধ্য দিয়ে যেতে হবে। কিন্তু দিনের শেষে, এটি সব একটি জিনিস নিচে আসে: আপনার কোডিং দক্ষতা. কোডিংয়ে আপনার দক্ষতাই হল মূল ফ্যাক্টর যা নির্ধারণ করবে আপনি ভূমিকার জন্য উপযুক্ত কিনা।

আপনার অভিজ্ঞতার স্তর যাই হোক না কেন - আপনি একজন অভিজ্ঞ বিকাশকারী বা বিশ্ববিদ্যালয় থেকে নতুন - একটি কোডিং সাক্ষাত্কারে পেরেক দেওয়া কঠিন হতে পারে, তবে অধ্যবসায় এবং কঠোর পরিশ্রমের ফল পাওয়া যায়। পুরো এক বছরের প্রস্তুতির পর ফেসবুক থেকে অফার ল্যান্ড করেছে এমন একজন হিসাবে, আমি এটি নিজেই জানি। এই নিবন্ধে, আমি আপনার সাথে কিছু টিপস এবং কৌশল শেয়ার করতে চাই যা আমি পথ ধরে শিখেছি।

এর মধ্যে ডুব দিন.

টিপ #1 — কোডিং অনুশীলন করুন

একজন সফ্টওয়্যার প্রকৌশলী হিসাবে আপনার দৈনন্দিন কাজে, আপনি হয়তো অ্যালগরিদম এবং ডেটা বেশি ব্যবহার করছেন না। তবুও, এগুলি অপরিহার্য বুনিয়াদি যা আপনার জানা দরকার। তাহলে কিভাবে আপনি তাদের ভাল পেতে? অ্যালগরিদম এবং ডেটা স্ট্রাকচার শেখা চ্যালেঞ্জিং হতে পারে, তবে এটি কোনও রকেট বিজ্ঞান বা গোপন শিল্প নয়। মূল সমস্যা হল সেগুলি শিখতে কতটা সময় লাগে, তাই পরিকল্পনা এবং অনুশীলন গুরুত্বপূর্ণ।

আপনার পেশী তৈরি করার মতো আপনার কোডিং দক্ষতা উন্নত করার কথা ভাবুন। নিবিড় ব্যায়ামের মাত্র কয়েক সপ্তাহের মধ্যে আপনি সমস্ত ছিঁড়ে ফেলা এবং টোন করার আশা করতে পারেন না। একইভাবে, আপনি কয়েক দিনের মধ্যে অ্যালগরিদম আয়ত্ত করতে পারবেন না। আপনার কাঙ্খিত ফলাফল পেতে দীর্ঘ সময় ধরে ধারাবাহিক এবং অবিচলিত প্রচেষ্টা করাই মূল বিষয়।

2019 সালে, যখন আমি কোডিং ইন্টারভিউয়ের জন্য প্রস্তুতি শুরু করি, তখন আমি বাইনারি অনুসন্ধানের মতো সবচেয়ে মৌলিক অ্যালগরিদমগুলি কীভাবে লিখতে পারি সে সম্পর্কে অজ্ঞ ছিলাম। গুগলের সাথে আমার প্রথম অনসাইট ইন্টারভিউ পেতে আমার প্রায় ছয় মাস নিয়মিত অনুশীলন হয়েছে। কেমন যাচ্ছে? আমি ব্যর্থ হলাম.

কিন্তু আমি কি হাল ছেড়ে দিয়েছি? না। আমি আরও এক বছর অনুশীলন করেছিলাম যতক্ষণ না আমি অবশেষে Facebook থেকে একটি অফার পাই (যা আমরা এখন মেটা নামে জানি)। সুতরাং, নীচের লাইন হল যে এই দক্ষতাগুলি শেখার জন্য সময় এবং প্রচেষ্টা লাগে, কিন্তু অর্থপ্রদান জীবন-পরিবর্তনকারী হতে পারে!

আপনি যখন প্রথম কোডিং সমস্যা নিয়ে কাজ শুরু করেন, তখন কিছুটা অভিভূত হওয়া একেবারেই স্বাভাবিক। আপনি এমনকি নিজেকে ধরতে পারেন এই ভেবে যে, "আমার কী সমস্যা? কেন আমি সবচেয়ে সহজ সমস্যাটিও সমাধান করতে পারি না?" এটা শেখার প্রক্রিয়ার একটি স্বাভাবিক অংশ মাত্র। আপনি সময়ের সাথে আরও ভাল হয়ে উঠবেন।

অভিভূত হওয়ার অনুভূতি মোকাবেলা করার জন্য একটি সহায়ক এবং সময়-পরীক্ষিত কৌশল হ'ল একটি বড় কাজকে পরিচালনাযোগ্য অংশে ভেঙে দেওয়া এবং অর্জনযোগ্য লক্ষ্য নির্ধারণ করা।

আমি প্রতিদিন 1-2টি সহজ বা মাঝারি-স্তরের সমস্যা দিয়ে শুরু করার এবং প্রতিটিতে প্রায় 15-30 মিনিট ব্যয় করার পরামর্শ দিই। এটি আপনাকে ধীরে ধীরে আপনার সমস্যা সমাধানের দক্ষতা তৈরি করতে এবং অভিভূত হওয়া এড়াতে সহায়তা করবে। একবার আপনি আরও আত্মবিশ্বাসী বোধ করতে শুরু করলে, আপনি প্রতিদিন 3-4টি সমস্যা মোকাবেলা করে তীব্রতা বাড়াতে পারেন।

সামঞ্জস্যপূর্ণ অনুশীলনের মাধ্যমে কী সম্ভব তা সম্পর্কে আপনাকে ধারণা দেওয়ার জন্য, আমি একটি বিগ টেক কোম্পানি থেকে আমার প্রথম অফার পাওয়ার এক বছর আগে ব্যক্তিগতভাবে প্রায় 200টি সমস্যা (50% মাঝারি, 40% সহজ, 10% হার্ড) সমাধান করেছি। মনে রাখবেন যে প্রত্যেকে তাদের নিজস্ব গতিতে শেখে, তাই আপনার জন্য সবচেয়ে ভাল কাজ করে এমন অনুশীলনের পরিমাণ নির্ধারণ করতে ভুলবেন না। গুরুত্বপূর্ণ বিষয় হল ফোকাস থাকা এবং এটি রাখা।

আপনি যদি কোডিং অনুশীলন করতে এবং আপনার সাক্ষাত্কারের দক্ষতা তীক্ষ্ণ করার জন্য দুর্দান্ত সংস্থানগুলি খুঁজে পেতে চান তবে আপনি বিবেচনা করতে পারেন বেশ কয়েকটি বিকল্প রয়েছে। সেরা কিছু হল Leetcode , Hackerrank , এবং Codeforces — এই প্ল্যাটফর্মগুলি বিভিন্ন ধরনের চ্যালেঞ্জিং সমস্যা অফার করে যা আপনাকে আপনার কোডিং ক্ষমতা উন্নত করতে সাহায্য করতে পারে।

কিন্তু আপনার যদি আরও কাঠামো বা নির্দেশনার প্রয়োজন হয়, তাহলে Interviews.school বা পেইড কোর্স যেমন Algoexpert.io-এর মতো সংস্থানও রয়েছে। এগুলি বিশেষভাবে সহায়ক হতে পারে যদি আপনি সবেমাত্র শুরু করছেন বা আপনি যদি নিশ্চিত না হন যে কোথায় শুরু করবেন।

আমি সাক্ষাত্কারের প্রস্তুতির জন্য আমার নিজের যাত্রার সময় এই সমস্ত সংস্থানগুলি ব্যবহার করেছি এবং তাদের গুণমানের জন্য প্রমাণ করতে পারি।

টিপ #2 - আপনার প্রোগ্রামিং ভাষা জানুন

আপনি যে ভাষাটি ব্যবহার করবেন তার একটি শক্ত কমান্ড থাকা গুরুত্বপূর্ণ যাতে আপনি আপনার প্রযুক্তিগত দক্ষতা এবং সমস্যা সমাধানের ক্ষমতা সম্পূর্ণরূপে প্রদর্শন করতে পারেন। সাধারণত, আপনি আপনার অ্যালগরিদমিক কোডিংয়ের জন্য ভাষা চয়ন করতে পারেন, তবে কখনও কখনও ইন্টারভিউয়ারের নির্দিষ্ট ভাষার প্রয়োজনীয়তা থাকতে পারে। আগে যে চেক নিশ্চিত করুন.

আপনি যে ভাষাটির সাথে সবচেয়ে স্বাচ্ছন্দ্য বোধ করেন সেটি ব্যবহার করুন, এমনকি এটি আপনার প্রাথমিক ভাষা না হলেও৷ নিশ্চিত করুন যে আপনি এর সাধারণ ডেটা স্ট্রাকচার, শর্টকাট এবং মেমরি ম্যানেজমেন্ট জানেন। কোডিং ইন্টারভিউয়ের জন্য আমার পছন্দ হল পাইথন, যদিও আমি প্রতিদিন পিএইচপি এর সাথে কাজ করি। পাইথনের সহজ সিনট্যাক্স আমাকে দ্রুত প্রোটোটাইপ সমাধান করতে সাহায্য করে এবং আমাকে $ চিহ্ন, বন্ধনী বা সেমিকোলনের মতো বিষয় নিয়ে চিন্তা করতে হবে না।

আপনার প্রোগ্রামিং ভাষায় আপনার দক্ষতা উন্নত করতে, এর মৌলিক বিষয়গুলি শিখতে, কোডিং অনুশীলন করতে এবং অন্যান্য প্রোগ্রামারদের সমাধানগুলি অধ্যয়ন করতে সময় ব্যয় করুন। আমি Leetcode চেক করার পরামর্শ দিচ্ছি — এর মন্তব্য এবং আলোচনা বিভাগে, আপনি কিছু দুর্দান্ত উদাহরণ এবং কৌশলগুলি শিখতে পারেন।

টিপ #3 — স্পষ্ট প্রশ্ন জিজ্ঞাসা করুন

প্রথমে প্রশ্ন না করে সমস্যা সমাধানে তাড়াহুড়ো করবেন না। এটি একটি সাধারণ ভুল যা ইন্টারভিউয়ারদের জন্য লাল পতাকা হতে পারে। কিছু স্পষ্ট প্রশ্ন জিজ্ঞাসা করুন এমনকি যদি আপনি আত্মবিশ্বাসী বোধ করেন যে আপনি সমস্যাটি সঠিকভাবে বুঝতে পারেন।

কোডিং সমস্যাগুলি ইচ্ছাকৃতভাবে অস্পষ্ট, এবং ইন্টারভিউয়াররা সমস্ত প্রয়োজনীয় বিশদ অগ্রিম প্রদান করবে না।

পরিবর্তে, ইন্টারভিউয়াররা আশা করে যে আপনি বিশদ ব্যাখ্যা করবেন, তাই আপনি এবং সাক্ষাত্কারকারী একই পৃষ্ঠায় আছেন তা নিশ্চিত করতে কয়েকটি প্রশ্ন জিজ্ঞাসা করুন।

এছাড়াও, এইভাবে আপনি প্রান্তের ক্ষেত্রে চিহ্নিত করতে এবং স্পষ্ট করতে সক্ষম হবেন। উদাহরণস্বরূপ, আপনি ইনপুটের ফর্ম্যাট, জড়িত ডেটা প্রকারগুলি বা সমস্যাটির কোনও সীমাবদ্ধতা আছে কিনা সে সম্পর্কে জিজ্ঞাসা করতে চাইতে পারেন। নির্দিষ্ট বিবরণ জানা আপনার সময় বাঁচাতে পারে এবং আপনাকে হাতের কাজটিতে ফোকাস করতে দেয়।

টিপ #4 — কোডিং করার আগে আপনার সমাধানের মাধ্যমে কথা বলুন

আপনি যখন একটি সাক্ষাত্কারে একটি সমস্যা সমাধান করছেন, কোডিং শুরু করার জন্য তাড়াহুড়ো করবেন না। প্রথমে আপনার সমাধানের মাধ্যমে কথা বলার জন্য একটি মুহূর্ত নিন। এটি আপনাকে সমস্যাটি পরিষ্কার করতে এবং ডুব দেওয়ার আগে আপনার একটি দৃঢ় পরিকল্পনা আছে তা নিশ্চিত করতে সহায়তা করবে৷ এটির সাথে কথা বলা আপনার সময় বাঁচাতে এবং অপ্রয়োজনীয় ভুল করা থেকে বিরত রাখতে পারে৷

আমি নিজেও প্রায় এই ফাঁদে পড়ে গেছি। একটি সাক্ষাত্কারে, আমাকে স্ট্রিং প্রিফিক্স ম্যাচিং বাস্তবায়ন করতে বলা হয়েছিল। আমি অবিলম্বে একটি ট্রাই জড়িত একটি বরং জটিল সমাধান চিন্তা. কিন্তু একবার আমি আমার ধারণাটি উচ্চস্বরে বর্ণনা করতে শুরু করলে, সাক্ষাত্কারকারী আমাকে থামিয়ে একটি সহজ উপায়ের জন্য জিজ্ঞাসা করেছিলেন যেটি কেবল দুটি স্ট্রিংয়ের উপর পুনরাবৃত্তি করা জড়িত।

যদি আমি এখনই কোডিং শুরু করতাম, তাহলে আমি একটি অত্যধিক জটিল সমাধানে সময় নষ্ট করতাম যা ইন্টারভিউয়ারও চাইছিল না।

একবার আপনি সমাধানের মাধ্যমে কথা বলে ফেললে এবং ইন্টারভিউয়ার এতে সন্তুষ্ট হন, তবেই আপনি এটি বাস্তবায়ন শুরু করতে পারেন।

টিপ #5 — যোগাযোগ করুন

একটি কোডিং সাক্ষাত্কারের সময়, আপনি আসলে সমাধানে পৌঁছেছেন কিনা তা নিয়ে ইন্টারভিউয়ার এত আগ্রহী নয়।

তারা দেখতে চায় আপনি কীভাবে সমস্যা-সমাধান প্রক্রিয়ার কাছে যান।

আপনার চিন্তার বানানটি নিশ্চিত করুন এবং আপনি যাওয়ার সময় আপনার যুক্তি ব্যাখ্যা করুন।

মনে রাখবেন যে ইন্টারভিউয়ার আপনার পাশে আছে এবং আপনাকে সফল হতে সাহায্য করার জন্য আছে। সাক্ষাত্কারটিকে একটি দলীয় প্রচেষ্টা হিসাবে ভাবুন, যেখানে আপনি এবং সাক্ষাত্কারকারী একটি সমাধান খুঁজতে একসাথে কাজ করছেন। আপনার বেশিরভাগ কথা বলা উচিত, যদিও (সময়ের প্রায় 70-80%)। সাক্ষাত্কারকারী মাঝে মাঝে প্রতিক্রিয়া দিতে বা আপনাকে সংশোধন করতে পারে। মুক্তমনা হন এবং ইন্টারভিউয়ারের প্রতিক্রিয়া থেকে শিখতে ইচ্ছুক, এটি আপনার সুবিধার জন্য ব্যবহার করুন।

সাক্ষাত্কার জুড়ে বন্ধুত্বপূর্ণ এবং প্রতিক্রিয়াশীল হন। আপনার ফোকাস করার জন্য একটি মুহূর্ত প্রয়োজন হলে, ইন্টারভিউয়ারকে জানান। আপনার চিন্তাগুলি সংগ্রহ করতে একটি সংক্ষিপ্ত বিরতি নিন, তবে এটিকে খুব বেশি সময় ধরে টানতে দেবেন না।

টিপ #6 - আপনার সমাধান পরীক্ষা করুন

একবার আপনি শেষ হয়ে গেলে কঠোরভাবে আপনার কোড পরীক্ষা করতে ভুলবেন না। আপনি মিস করতে পারেন এমন কোনো ভুল বা সমস্যা ধরতে সাহায্য করার জন্য পরীক্ষা করা গুরুত্বপূর্ণ।

আপনার কোড প্রত্যাশিত আউটপুট তৈরি করে তা নিশ্চিত করতে, ইন্টারভিউয়ার দ্বারা প্রদত্ত উদাহরণ ইনপুটগুলি ব্যবহার করুন৷ ইনপুট সীমানা, বিন্যাস বা ইনপুটগুলির ধরন, খালি, শূন্য বা ঋণাত্মক মান এবং খুব ছোট বা খুব বড় ইনপুট সহ টেস্টিং এজ কেসগুলি বিবেচনা করুন৷

আপনি যখন পরীক্ষা করছেন, তখন লাইন দ্বারা আপনার কোড লাইনের মধ্য দিয়ে যান এবং ভেরিয়েবল এবং এক্সপ্রেশনের মান পরীক্ষা করুন। এইভাবে আপনি কেবলমাত্র কোডের দিকে এক নজর দেখার মাধ্যমে চিহ্নিত ত্রুটিগুলি ধরতে পারবেন।

আপনি সবকিছু পরীক্ষা করার পরে, এক ধাপ পিছিয়ে যান এবং কীভাবে আপনি আপনার কোডকে আরও ভাল করতে পারেন সে সম্পর্কে চিন্তা করুন। হয়তো সমস্যাটি সমাধান করার আরও কার্যকর উপায় আছে, অথবা আপনি কোডটি পড়তে এবং বোঝার জন্য সহজ করতে পারেন।

উপসংহার

কোডিং ইন্টারভিউ একটি চ্যালেঞ্জ কিন্তু আপনি পুঙ্খানুপুঙ্খ প্রস্তুতি এবং অনুশীলনের সাথে আপনার সাফল্যের সম্ভাবনাগুলিকে ব্যাপকভাবে উন্নত করতে পারেন।

আসুন মূল টেকঅ্যাওয়েগুলি সংক্ষিপ্ত করি:

  • মৌলিক বিষয়গুলি অধ্যয়ন করুন;
  • আপনার ভাষা জানুন;
  • স্পষ্ট প্রশ্ন জিজ্ঞাসা করুন;
  • কোডিং করার আগে আপনার সমাধানের মাধ্যমে কথা বলুন;
  • আপনার সমাধান পুঙ্খানুপুঙ্খভাবে পরীক্ষা করুন;

শান্ত থাকুন এবং একটি সহযোগিতামূলক সমস্যা-সমাধান প্রক্রিয়া হিসাবে সাক্ষাত্কারের কাছে যান।

আপনার ভবিষ্যতের কোডিং সাক্ষাত্কারের জন্য শুভকামনা!


প্রধান চিত্রটি হ্যাকারনুন-এর স্টেবল ডিফিউশনএআই ইমেজ জেনারেটর বৈশিষ্ট্য ব্যবহার করে তৈরি করা হয়েছে, "ফেসবুক এ একটি কোডিং সাক্ষাৎকার" প্রম্পটের মাধ্যমে।