কোনও ব্যক্তির ডিবাগিং দক্ষতা কীভাবে চেক বা মূল্যায়ন করবেন? [বন্ধ]


48

কোন ধরণের দক্ষতা এমন কোনও ব্যক্তিকে নির্ধারণ করে যা সহজেই কোডটি ডিবাগ করতে সক্ষম? কিছু সময় আগে আমার বন্ধু তুলনামূলকভাবে ভাল প্রোগ্রামারের সাথে একটি সাক্ষাত্কার নিয়েছিল। প্রোগ্রামার ভাড়া করা হয়েছে। তিনি ভাল কোড লিখতে পারেন, ফ্রেমওয়ার্ক এবং ডিজাইনের ধরণগুলি বুঝতে পেরেছিলেন। তিনি যে জিনিসটি হারিয়েছিলেন তা হ'ল - ডিবাগিং দক্ষতা। তিনি একেবারে ডিবাগ করতে পারেন নি এবং তার বা অন্য কারও কোডটিতে সমস্যা খুঁজে পাওয়া তার পক্ষে ব্যথা।

তারপরে আমরা কীভাবে কোনও ব্যক্তির ডিবাগিং দক্ষতা মূল্যায়ন বা অনুমান করতে পারি সে সম্পর্কে আমরা ভাবছি।

সুতরাং প্রথম প্রশ্নটি: কোন দক্ষতা নির্ধারণ করে যদি কোনও ব্যক্তি কার্যকরভাবে সফ্টওয়্যারটি ডিবাগ করতে পারে?

এবং দ্বিতীয়: সাক্ষাত্কারের সময় সেই দক্ষতাগুলি কীভাবে পরীক্ষা করবেন?


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

4
নিশ্চিত হওয়ার একমাত্র উপায় হ'ল তাকে বাঁচিয়ে দেওয়া। আপনার বিকাশের পরিবেশ কী এবং তাকে একটি সহজ কোডিং এবং ডিবাগ পরীক্ষা হবে তা আগেই তাকে বা তাকে জানান।

এমনকি এটি সরাসরি হতে হবে না, @ থরবজরনআরভানএন্ডারসেন। আমি কয়েকটি জায়গায় সাক্ষাত্কার নিয়েছি যা আমাকে একটি ছোট-ফাংশনের একটি মুদ্রণপত্র সহ সেই ফাংশনটি কী করে তার একটি স্পেসিফিকেশন এবং পরে আমাকে "বাগটি সন্ধান করতে" বলেছিল asked
কোয়ান্টিকাল

@ কোয়ান্টিকেল একই, আমার ব্যক্তি একটি ব্যক্তিগত সাক্ষাত্কার বিবেচনা করার আগে বিবেচনা করার আগে একটি 5-প্রশ্ন প্রোগ্রামিং পরীক্ষা দেয় (এর প্রায় অর্ধেক ডিবাগিং হয়)। স্পষ্টতই এটি বেশিরভাগ প্রার্থীকে আগাছা ফেলেছে ...
ইজকাটা

তাকে বিশ্লেষণ করার জন্য একটি স্ট্যাক ট্রেস দিন :-)
জাস্টম

উত্তর:


24

যদি ব্যক্তিটি প্রথম কাজটি করতে চায় তবে কোডটি দেখুন এবং এটি একটি ডিবাগারের সাথে পদক্ষেপ নেওয়া সেই ব্যক্তি কোনও দুর্দান্ত সমস্যা সমাধানকারী নয়।

আপনার যদি ইতিমধ্যে অ্যাকশন করার পরিকল্পনা না থাকে এবং আপনি ডিবাগার ব্লাইন্ডে ডুব দেন তবে আপনি মূলত ইস্টার ডিমেন। এটি যে কোনও ধরণের সমস্যার সমাধানের ক্ষেত্রে সত্য।

একটি সাক্ষাত্কার পরিস্থিতিতে এমন কোনও ব্যক্তি যিনি সিস্টেমটি কীভাবে পরিচালনা করে এবং সিস্টেমের ইতিহাস সম্পর্কে জিজ্ঞাসা করে এমন কেউ হবেন যে একজন ভাল সমস্যা সমাধানকারী হতে পারে। যে ব্যক্তি প্রথমে সিস্টেম এবং দ্বিতীয়ত যান্ত্রিক বলে মনে করে সে ভাল সমস্যা সমাধানকারী হতে পারে।

এটি যে কোনও জটিল ব্যবস্থার ক্ষেত্রে সত্য।


1
এটির জন্য ভাল দৃষ্টিভঙ্গির জন্য +1। আমি সম্মত তবে তারা যখন যান্ত্রিককে দ্বিতীয় বলে মনে করেন, তারা কীভাবে সরঞ্জামগুলি ব্যবহার করতে সক্ষম হবেন তা আরও ভাল। গাড়িগুলির মতোই, একজন ইঞ্জিনিয়ার যিনি মেকানিক্স সরঞ্জামগুলি বুঝতে পারেন না বা ব্যবহার করতে পারবেন না তিনি কোনও যোগ্য প্রকৌশলীই মোটেই উপযুক্ত নন।
ম্যাপেল_শ্যাফ্ট

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

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

10
যদি তারা প্রথম জিনিস মন্তব্য করে তবে আমি আপনার কালো এবং সাদা সাথে 100% এর সাথে একমত নই। আমি বলব যে কোনও ব্যক্তি যদি মনে করেন যে কোনও কোনও ক্ষেত্রে ডিবাগারটিকে গুলি করা ভাল প্রথম বিকল্প নয় তবে সেই ব্যক্তিটিও ভাল সমস্যা সমাধানকারী নয়। যদি সমস্যাটি হয় যে যোগাযোগগুলি বন্ধ হয়ে যায়, তবে আমি প্রথমে কাজটি করতে যাচ্ছি এটি হ'ল ডিবাগারটিকে আগুন ধরিয়ে দেওয়া এবং কোন প্রক্রিয়া / থ্রেড / কাজগুলি অবরুদ্ধ বা কাজ বন্ধ করে দেওয়া হয়েছে তা নির্ধারণ করা। ডিবাগারটিকে গুলি চালানোর আর একটি কারণ হ'ল সমস্যাটি পুনরাবৃত্তিযোগ্য কিনা তা চেষ্টা করে দেখুন। একবার আপনি কীভাবে সিস্টেমটি ভাঙ্গবেন জানেন সমাধানটি সন্ধান করা আরও সহজ হয়ে যায়।
ডাঙ্ক

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

15

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

এর অর্থ তাদের জন্য একটি দৃশ্য তৈরি করা যা তাদের নির্বাচিত আইডিইতে ডিবাগিং সরঞ্জামগুলির উচ্চ প্রবণতা প্রদর্শন করে। আপনার মতো জিনিসগুলির সন্ধান করা উচিত:

  • ডিবাগ মোডে স্যান্ডবক্সযুক্ত অ্যাপ্লিকেশন বা সার্ভার চালানো বা ডিবাগিংয়ের জন্য প্রতীক সহ বিল্ডিং অ্যাপ্লিকেশন

  • রিমোট ডিবাগিং পোর্টগুলি উপলভ্য করা এবং প্রদর্শন করা বা স্যান্ডবক্সযুক্ত অ্যাপ্লিকেশনটির ডিবাগিং যা চিহ্ন সহ নির্মিত হয়েছিল (ভাষার ক্ষেত্রে প্রযোজ্য)

  • ব্রেকপয়েন্টগুলির কৌশলগত ব্যবহার

  • ব্রেকপয়েন্টগুলির কাস্টম বৈশিষ্ট্য, ব্রেকপয়েন্টগুলিতে শর্তসাপেক্ষ অভিব্যক্তি (ভাষার ক্ষেত্রে প্রযোজ্য)

  • পরিবর্তনশীল মান বা রেফারেন্স নিরীক্ষণের জন্য এক্সপ্রেশন বা ভেরিয়েবল ঘড়ির ব্যবহার

  • অ্যাড-হক ভেরিয়েবলের মান বা রেফারেন্স বা পয়েন্টার ম্যানিপুলেশন রিয়েল টাইমে

  • অ্যাপ্লিকেশন প্রবাহের ওপরে ও বাইরে পদক্ষেপ নেওয়ার ক্ষমতা প্রদর্শন করুন

  • কল স্ট্যাকের সমালোচনা মূল্যায়ন

  • মাল্টি-থ্রেড অ্যাপ্লিকেশনগুলি ডিবাগ করা এবং এটি বোঝা।

সরঞ্জামগুলি ব্যতীত অন্যান্য ডিবাগিং কৌশলগুলি যেমন লগ এবং উত্স কোড বিশ্লেষণ করার পাশাপাশি আইডিই ব্যবহার না করে কিছু নিম্ন স্তরের ডিবাগিং সম্পাদন করার ক্ষমতাও প্রদর্শন করা উচিত।


+1 বেশ সহায়ক তালিকা। এবং আরও একটি প্রয়োগ।
দিপান মেহতা

8
আমি মতামত করছি যে একক থ্রেডযুক্ত অ্যাপ্লিকেশনগুলি ডিবাগ করার চেয়ে বহু-থ্রেডযুক্ত অ্যাপ্লিকেশনগুলি ডিবাগ করা সম্পূর্ণ ভিন্ন বাস্তব real ভিন্ন, এবং অনেক, আরও শক্ত।
ব্রুস এডিগার

20
@ জারোদরবার্সন ব্রায়ান কর্নিগান এবং রব পাইক প্র্যাকটিস অফ প্রোগ্রামিং-এ লিখেছিলেন যে তারা এখনও ডিবাগারদের কাছে মুদ্রণ বিবৃতি পছন্দ করে কারণ এটি কম ট্রানজিটরি। অনেক লোক একটি ভাল লগিং সিস্টেম পছন্দ করেন যা প্রোগ্রামের মাঝামাঝি থামিয়ে না রেখে কোড প্যাথের একটি বিশদ দৃষ্টিভঙ্গি দেয়। লগ ফাইলটি পড়া এবং তার পরে একটি কোর ডাম্প ডিবাগ করা আরও সহজ। সুতরাং আপনার লিটমাস পরীক্ষাটি কিছু ভাল প্রোগ্রামারগুলিকে প্রত্যাখ্যান করতে পারে কারণ সকলেই সম্মত হন না যে
ডিবাগরা

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

8

আমি বলতে চাই যে আপনার সিস্টেমে এমন একটি বাগ ছড়িয়ে দেওয়া উচিত যা একটি সাক্ষাত্কারের প্রসঙ্গে আলোচিত হতে পারে to ডিবাগারটি ফায়ার করুন এবং তাকে এটিকে দিন।


7

তাকে এই জাতীয় প্রশ্ন জিজ্ঞাসা করুন:

  1. আপনি কীভাবে একটি সমস্যা মোকাবেলা করবেন?

  2. আপনি যে জটিল প্রকল্প করেছিলেন তার মধ্যে একটি কী এবং আপনি কীভাবে এটি অর্জন করেছিলেন?

  3. আপনি কোন ডিবাগিং সরঞ্জাম ব্যবহার করেছেন?

  4. নির্দিষ্ট সরঞ্জামগুলির জন্য আপনার কোনও পছন্দ আছে?

  5. আপনার নিজের দৃশ্যের একটি উদাহরণ দিন এবং তাকে জিজ্ঞাসা করুন তিনি কীভাবে এটি মোকাবেলা করবেন?

  6. আপনি অন্য কারও কোডে প্রবেশের ক্ষমতাকে কীভাবে রেট করবেন?

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


6

যদি আপনি দেখতে চান যে কোনও প্রোগ্রামার ডিবাগ করতে পারে তবে তাদের ঠিক করার কোড দিন। তারা কোড লিখতে পারে কিনা তা দেখতে যদি আপনি দেখতে চান তবে এটি একই পন্থা। তাদের একটি সমস্যা দিন এবং তাদের কোড লিখতে দিন।

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

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

বিদ্যমান কোড বেসে কাজ করার জন্য কোড, ডকুমেন্টেশন এবং সম্ভবত কিছু নিজস্ব নোট এবং ডিজাইন তৈরি করা প্রয়োজন।

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


2
আমরা সবাই আমাদের প্রোগ্রামগুলি ডিবাগ করি। শুরুতে এটি সহজ কারণ প্রোগ্রামটি ছোট এবং এটি আপনার মাথায় থাকা সহজ। তবে এটি বাড়ার সাথে সাথে আরও জটিল ডিবাগিং আরও শক্ত হয়ে যায়। এবং এখন - কিছু লোক এখনও এটি পরিচালনা করতে পারে এবং যুক্তিসঙ্গত পরিমাণে একটি বাগ খুঁজে পেতে পারে এবং কিছু লোক সবেমাত্র হারিয়ে যায়। তারা জানে না কোথায় কোথায় মনোযোগ দিন এবং কীভাবে এটি সন্ধান করতে সংকুচিত করবেন ...
মাইকেল বি।

1
@ মিচালবি: আমরা সকলেই আমাদের প্রোগ্রামগুলি ডিবাগ করি, তবে কিছু ব্যক্তি নীতিগত পন্থা প্রদর্শন করবেন যখন অন্যরা এলোমেলোভাবে জিনিসগুলিকে টুইঙ্ক করে এবং কী ঘটে তা দেখবে
ম্যাথিউ এম।

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

3

একইভাবে আপনি কারও কোডিং ক্ষমতা নির্ধারণ করবেন, তাদের ডিবাগিং সম্পর্কে প্রশ্ন জিজ্ঞাসা করুন।

তাদেরকে "কীভাবে" জিজ্ঞাসা করুন যে তারা কোনও প্রদত্ত পরিস্থিতিতে বাগটি সনাক্ত করতে পারে।

এটি আরও একধাপ এগিয়ে নিয়ে যান এবং তাদের একটি কম্পিউটারের সামনে বসে যান এবং কোনও সমস্যা ডিবাগ করে দেখুন।


3

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


2

সাধারণত ভাল প্রবণতাযুক্ত লোকেরাও ভাল ডিবাগিং দক্ষতা অর্জন করে।

সাক্ষাত্কারের সময়, (তাদের জ্যেষ্ঠতার উপর নির্ভর করে) আপনি তাদের ধাঁধা যেমন একটি অ্যালগরিদম বা এর মতো একটি কার্যভার দিতে পারেন। এটাই সহজ উপায়।

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

আমি সংক্ষিপ্ত সাক্ষাত্কারের প্রশ্নগুলি জিজ্ঞাসা করা বেশ পছন্দ করি না যা বাক্য বাক্যগুলি পড়ার এবং সিনট্যাক্স ঠিক করার দক্ষতার দিকে দৃষ্টি নিবদ্ধ করে tend


+1 দুর্দান্ত উত্তর! আমি সম্মত হই যে সেরা সফ্টওয়্যার বিকাশকারীদের ভাল ডিবাগিং দক্ষতা রয়েছে এবং আমি অনুভব করি যে সিন্ট্যাক্স ত্রুটিগুলি চিহ্নিত করা সুনির্দিষ্ট করে না। বেশিরভাগ আইডিই এবং এমনকি কিছু ভাল পাঠ্য সম্পাদক (নোটপ্যাড ++) সাধারণ ভাষায় সিনট্যাক্স ত্রুটি সনাক্ত করতে পারে। তবে আমি একমত নই যে একটি ধাঁধা ডিবাগিং দক্ষতা দেখায়। ধাঁধা সমালোচনামূলক চিন্তাভাবনা প্রদর্শন করে যা একটি ভিন্ন তবে সম্পর্কিত দক্ষতা।
ম্যাপেল_শ্যাফ্ট

@ ম্যাপেল_শ্যাফ্টের জন্য ধন্যবাদ (আরও একটি +1)। সত্য, ধাঁধা সরাসরি ডিবাগিংয়ের সাথে যুক্ত নয় । তবে লোকেরা কীভাবে সমস্যার দিকে এগিয়ে যায় তা বিচারের পক্ষে ভাল - একটি পরোক্ষ জিনিস সত্যই।
দিপান মেহতা

2
আমি ধাঁধা তাকান এবং আমি ewwwwwwww মত। "গ্যাচা" স্টাফের চেয়ে ভাল কিছু আপনার কাছে নেই? এবং কীভাবে "জ্যেষ্ঠতা" ছবিতে আসবে? পুরানো পিপিএল আরও কঠিন ধাঁধা সমাধান করার কথা? সমস্ত ভাল প্রোগ্রামার (বা ডিবাগার) সুডোকুর ভক্ত? আপনি পুরো শহর জুড়ে কিছু সত্যই ভাল প্রোগ্রামার এবং খারাপ শোচনীয় বিরক্ত করতে পারেন। গ্যাচা প্রশ্নগুলি একটি অপমান << পিরিয়ড> দয়া করে আরও ভাল কিছু পুরুষ নিয়ে আসুন।
চানি

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

2

একটি সাক্ষাত্কারের সময়, তাদের অতীতে ঠিক করা একটি বাগ এবং তারা এটির ডিবাগ করার জন্য যে পদক্ষেপগুলি ব্যবহার করেছিল সে সম্পর্কে আপনাকে বলতে বলুন।

তারা তাদের শেষ কাজ, হোম ওয়ার্কের কার্যভার ইত্যাদি কী করেছে এবং সমস্যাটি খুঁজে পেতে তারা কী করেছে সে সম্পর্কে আপনাকে জানান Make


2

আমি ডিবাগিংয়ে প্রার্থীর দক্ষতার পরীক্ষা সম্পর্কে নিয়োগের দৃষ্টিভঙ্গির সাথে একসাথে একটি অভিজ্ঞতা ভাগ করব। আমি তিনটি ধাপে একটি সাক্ষাত্কারে যেতে পেরেছি। দ্বিতীয় পর্যায়টি ছিল একটি "ব্যবহারিক মামলা"। এই মুহূর্তে আমি আরও জানতাম না। সেখানে থাকাকালীন আমাকে জানানো হয়েছিল একটি সিস্টেম রয়েছে যা কাজ করা বন্ধ করে দিয়েছে এবং তারা জানে না। কিছু বাগ পিছনে পড়ে আছে।

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

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

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

এইচটিএমএল ট্যাগে শিরোনাম ব্যবহার করে এমন ছোটখাটো জিনিস যা এটির অনুমতি দেয় না। এছাড়াও এটির বিপরীতে ALT ট্যাগ বাদ দেওয়া হয়েছিল ted অবৈধ বন্ধ হওয়া এইচটিএমএল ট্যাগগুলির সাথে কিছু ত্রুটিও ছিল তবে যা ত্রুটিযুক্ত হয়নি। নিশ্চিত না যে এগুলি সমস্ত খাঁটি প্লেহাউস-প্রকল্প-ত্রুটি বা বিভিন্ন নিয়োগের জন্য সম্ভবত একই প্রকল্প ছিল। আমি কখনই জিজ্ঞাসা করিনি। অসুবিধার মাত্রা অবশ্যই নিয়োগের প্রয়োজনের সাথে মেলে।

সাক্ষাত্কারের পরে, কীভাবে ডিবাগ করা হয়েছিল তা দেখার জন্য সম্ভবত এই জাতীয় পরীক্ষাটি স্ক্রিন করা উচিত (অনুসরণ করা হয়নি)। সেই পর্যায়ে আমার জন্য, আমি পরীক্ষাটি কিছুটা হাস্যকর বলে মনে করেছি, তবে এটিও বড় বিষয়। যদি তা ছিল বা না থাকত তবে উপযুক্ত জায়গায় প্রার্থী থাকা উচিত have

* আমি মনে করি যে পরীক্ষাগুলি পরীক্ষার্থীদের / আমার দক্ষতার প্রমাণ হিসাবে প্রমাণিত হয়েছিল *
* একটি বিদেশী সিস্টেম বিশ্লেষণ করে
* ত্রুটি এবং বাগ খুঁজে পেতে ন্যূনতম তথ্য ব্যবহার করুন
* সময়ের চাপ এবং কাউকে আপনাকে সহায়তা না করে
* কোড ধরে নেওয়া সংশোধন * জ্ঞানের বিভিন্ন স্তর;
** স্কয়ার ডিবি এবং সঞ্চিত পদ্ধতি,
** প্রকল্পে
ডেলির ব্যবহার, ** এসপ নেট প্রযুক্তি,
** স্তরযুক্ত আর্কিটেকচার
** সমস্যা-ভিত্তিক দিক

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


2

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

আমি তাদের বলছি সমস্যাটি সমাধান করা তাদের কাজ এবং আমি তাদের যে কোনও প্রযুক্তিগত প্রশ্নের উত্তর দেওয়ার এবং তাদের যে কোনও পরীক্ষা-নিরীক্ষা করতে চাই সেগুলির ফলাফল বলার প্রস্তাব দিই। যদি তারা বলে, "আমি এখানে একটি স্কোপ তদন্ত রেখেছি", তবে আমি তাদের কী সন্ধান করতে পারে তার একটি চিহ্ন লিখব। যদি তারা printfকোনও লুপে সন্নিবেশ করতে চায় তবে আমি তাদের বলব যে এটি কখনই বের হয় না (!) অথবা প্রথম "7" এবং তারপরে বার বার "5" প্রিন্ট হয়। যদি তারা আগাছা থেকে এতটা দূরে যায় যে আমি অর্থপূর্ণ উত্তর দিতে পারি না তবে আমি স্বীকার করব যে আমরা ভুল পথে রয়েছি এবং অন্য কোথাও ফিরে এসেছি। যদি তারা আটকে থাকে তবে আমি অগ্রণী প্রশ্ন জিজ্ঞাসা করব বা আমরা অগ্রসর না হওয়া পর্যন্ত ইঙ্গিত দেব।

আমি যা দেখতে চাই তা হ'ল সুশৃঙ্খল চিন্তার প্রক্রিয়া, সমাধানে যাওয়ার দৃ determination় সংকল্প, বিবেচিত প্রশ্নাবলী এবং পরীক্ষাগুলি এবং আদর্শভাবে সমস্যার একটি সফল সনাক্তকরণ। কখনও কখনও আমি এমন সমস্যাগুলি বেছে নিয়েছি যেগুলি এক ঘন্টা সাক্ষাত্কারে পুরোপুরি ডিবাগ করার জন্য খুব জটিল and এবং শেষে আমি তাদের আসল উত্তরটি দিয়ে থাকি। এই মুহুর্তে আমি একটি প্রতিক্রিয়া সন্ধান করছি যা দেখায় যে তারা সমস্যা এবং অভিজ্ঞতার সাথে জড়িত ছিল যে "আহা" মুহুর্ত এবং কারণটি পাওয়ার জন্য সন্তুষ্টির জন্য। সেরা প্রার্থীরা স্বতঃস্ফূর্তভাবে সেই মুহুর্তে ফলোআপ প্রশ্ন জিজ্ঞাসা করবে, তাদের মানসিক মানচিত্রটিকে আসলে যা চলছে তার সাথে সংযুক্ত করার চেষ্টা করবে।


1

এমন কিছু সাধারণ বাইনারি (ডিবাগ সহ) প্রতীক সহ একটি কম্পিউটারে তাদের বসুন যা নাল পয়েন্টার রেফারেন্স বা এই জাতীয় + উত্স কোড + জিডিবি সহ সেগফাল্ট করে এবং দেখুন যে তারা ক্রাশের কারণটি খুঁজে পেতে পারে?


2
এগুলি আপনাকে জানায় যে কোনও ব্যক্তি কোনও সম্ভাব্য নাল পয়েন্টার রেফারেন্স খুঁজতে কোড এবং বাইনারি বিশ্লেষণ করতে পারে। এটি আসলে সাধারণ ডিবাগিং সরঞ্জামগুলির দক্ষ ব্যবহার দেখায় না।
ম্যাপেল_শ্যাফ্ট

1

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


1

সামান্য কোড স্নিপেটে "বাগ" সন্ধান করা খুব কৃত্রিম পরিস্থিতি। আমি মনে করি এটি ধাঁধা এবং মস্তিষ্কের টিজারগুলির মতো একই উপায়ে সহায়ক হতে পারে।

আরও ব্যাপক পদ্ধতির মাধ্যমে প্রার্থীরা কীভাবে সুনির্দিষ্ট ঘটনার উল্লেখ করে অতীতে ডিবাগ সম্পাদন করেছিল এবং তারপরে প্রশ্নগুলি অনুসরণ করে তা সম্পর্কে আচরণগত প্রশ্ন জিজ্ঞাসা করবে।

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

কোডের ব্লকের মাধ্যমে ট্রেসিংয়ের চেয়ে ডিবাগিংয়ের আরও অনেক কিছু রয়েছে এবং ডিবাগিংয়ে কারও দক্ষতার যে কোনও মূল্যায়নের ক্ষেত্রে তা প্রতিফলিত হওয়া উচিত।


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

1

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

বোনাস পয়েন্ট যদি তারা মূল কোডটিতে কোনও বাগ খুঁজে পায়।

ডাবল বোনাস পয়েন্ট যদি তারা মূল কোডটিতে বাগটি ঠিক করতে পারে।


1

আমি লোকদের কাছে আমার কাছে সবচেয়ে জটিল ত্রুটিটি বর্ণনা করতে বলি যা তাদেরকে ট্র্যাক করে ফিক্স করতে হয়েছিল এবং এটি খুঁজে পেতে এবং ঠিক করার জন্য তারা কী করেছিল। আমি আরও জানি যে, যদি সবচেয়ে কঠিন ত্রুটিটি এমন কিছু ছিল যা আপনি কেবলমাত্র কোনও শিক্ষানবিশকে কঠিন খুঁজে পেতে আশা করেন, তবে সম্ভবত তারা ভাল সমস্যা সমাধানকারী নয় (যদি না এটি এন্ট্রি স্তরের সাক্ষাত্কার না থাকে)। যদি এটি সত্যই কিছু কঠিন হয় এবং তারা এটিকে অনুসরণ করার চেষ্টা করার সাথে সাথে তারা তাদের চিন্তার প্রক্রিয়াটি বর্ণনা করে তবে আমি তাদের দক্ষতার স্তরটি কী তা অনুভব করতে পারি। যাঁরা সর্বদাই আমাকে বিস্মিত করেছেন তা হ'ল "হেডলাইটে হরিণ" চেহারা পাওয়া লোকেরা এবং তারা যে কোনও জটিল কাজ করেছিল তার একক উদাহরণ চিন্তা করতে পারে না। দুঃখিত দুঃখিত যে কেউ কারও জন্য সমস্যা সমাধানের জন্য কঠিন সমস্যা ছেড়ে দেয় তিনি কেউ নন যে আমি সরাসরি স্কুল ছাড়াই কোনও কিছুর জন্য আগ্রহী নই,


1

আমি নীচের মতো কয়েকটি প্রযুক্তি অজ্ঞাবলিক প্রশ্ন জিজ্ঞাসা করব:

  • মূল কারণগুলি সনাক্ত করতে এবং একটি বাগ (ত্রুটি) ঠিক করতে আপনি যে সমস্ত পদক্ষেপ নিয়েছেন তা আমাকে গ্রহণ করুন
  • মাল্টি থ্রেডিং অ্যাপটি ডিবাগ করার সময় আপনি কীভাবে কল স্ট্যাক ব্যবহার করবেন

ফোন সাক্ষাত্কারে এটি বিশেষভাবে বিশেষভাবে কাজ করে কারণ আপনার কেবলমাত্র সেই ব্যক্তির আপনাকে একটি দৃinc়প্রত্যয়ী উত্তর দেওয়ার প্রয়োজন যা এটি দেখায় যে কোনও সমস্যা সমাধানের সময় তিনি কীভাবে সত্যই জিনিসগুলি দেখান।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.