আমাকে এমন একটি প্রকল্প পরিচালনার দায়িত্ব দেওয়া হয়েছিল যা কিছু ইউক্রেনীয় বিকাশকারীদের আউটসোর্স করা হয়েছিল।
সংস্থা একটি নির্ধারিত মূল্যে এলেন্সের মাধ্যমে তাদের ভাড়া করেছে । এই মুহুর্তে আমার বস তাদের পরিচালনা করতে এবং কাজ শেষ করতে আমাকে একা রেখেছিলেন । আমি সম্পূর্ণ জিনিসটির একটি বিশদ বিবরণ তৈরি করেছি যা করা দরকার।
প্রকল্পটিতে এক্সএমপিপি, র্যাবিট এমকিউ এবং ডেটাবেস এর মতো জিনিসগুলির সাথে জড়িত। তাদের সাথে আমার প্রথম বৈঠকে (সর্বদা আইএম) আমি তাদের কী করা দরকার তা পুঙ্খানুপুঙ্খভাবে জানিয়েছিলাম । তারা এটি বুঝতে পেরেছিল বলে মনে হয়েছিল - এবং তারা খুব আত্মবিশ্বাসী ছিল যে এটি সহজেই হয়ে যাবে।
এ পর্যন্ত সব ঠিকই. তবে এক সপ্তাহ পরে, আমরা যখন আবার দেখা করেছি, তখন কী করা দরকার তা নিয়ে তারা ভুলভ্রান্তিতে পূর্ণ ছিল। আমি যখন একজন বিকাশকারীকে জিজ্ঞাসা করি যে তিনি এক্সএমপিপি জানেন কিনা, তিনি বলেছিলেন যে তিনি এটির সাথে প্রথমবারের মতো কাজ করছেন। আমাদের প্রথম বৈঠকে আমি খুব স্পষ্টভাবে প্রকল্পের জটিলতা এবং জড়িত প্রযুক্তিগুলির উল্লেখ করেছি। এছাড়াও, আমি বারবার তাদের জিজ্ঞাসা করেছি যে তারা এটি ঠিক কীভাবে করবে তার কার্যকরী বিশদ লিখতে । তবে তারা না, এবং জোর দিয়েছিল যে তারা কোডটি লিখবে। আমি বললাম ঠিক আছে।
প্রকল্পটি 3 সপ্তাহ পরে শেষ হয়েছে এবং তারা যা প্রয়োজন তা বিতরণ করেছে। এই সময়ে আমি কোডটি পর্যালোচনা করা শুরু করি started এটি বেশিরভাগ ক্ষেত্রে ঠিক ছিল তবে কয়েকটি গুরুত্বপূর্ণ সমস্যা ছিল:
- তারা হার্ড-কোডেড কিছু জিনিস যা একটি কনফিগার ফাইলে আলাদা করা দরকার
- একাধিক কনফিগারেশন ফাইল ছিল যা আমার একটিতে সংহত করার দরকার ছিল
- তারা একেবারে কোন নথিপত্র লিখেছেন
- কিছু অন্যান্য ছোটখাটো পরিবর্তন
আমি তাদের এই পরিবর্তনগুলি (ডকুমেন্টেশন ব্যতীত) করতে বলেছিলাম - এবং, আমাদের একটি যুক্তি ছিল।
তারা বলেছিল যেহেতু দাম নির্ধারিত ছিল, কাজ করার কোডটি শেষ করার সাথে সাথে তাদের কোনও পরিবর্তন আনতে বলার ক্ষেত্রে আমি অন্যায় করছি। তারা প্রকল্পটিতে অযৌক্তিক সময়ের জন্য কাজ করেছিল এবং এখন কোনও কিছু জিজ্ঞাসা করা সম্পূর্ণ ভুল ছিল।
অবশেষে এখন তারা পরিবর্তন করেছে, এবং প্রকল্প শেষ হয়েছে। তবে এটি আমার মনে কিছু প্রশ্ন ফেলে ...
তারা যা প্রয়োজন ছিল তা করেছিল তবে আমার এটি সঠিকভাবে করা দরকার , এবং তাই পরিবর্তনগুলি। আমি কি সত্যিই অন্যায় ছিলাম?
ক্রিয়ামূলক নির্দিষ্টকরণ না রেখে কেন আমি তাদের কোড দেওয়ার বিষয়ে একমত হয়েছি?
আমি কেন নিশ্চিত করিনি যে তারা প্রথমবারের মতো সমস্ত কিছু বোঝে?
কেউ কি তাদেরকে একই পদে খুঁজে পায়? আপনি কি মনে করেন আউটসোর্স প্রকল্পগুলি পরিচালনা করার আরও ভাল উপায় আছে?
-- হালনাগাদ --
সমস্ত মতামতের জন্য ধন্যবাদ - সম্পূর্ণ অভিজ্ঞতা প্রতিফলিত করার পরে, আমি উপসংহারে আসতে পারেন ...
যদিও আমি আমার পক্ষের স্পেসিফিকেশনগুলিতে অস্পষ্ট ছিলাম না, তবে আমি অবশ্যই এগুলি লোহার ক্লেড হিসাবে প্রস্তাব হিসাবে তৈরি করি নি । তাই নেওয়ার বিষয়টি হ'ল: সর্বদা যথাসম্ভব সুনির্দিষ্ট থাকুন - আপনার চশমাগুলি তাদের দৃষ্টিকোণ থেকেও পড়ুন এবং দেখুন যে আপনি কোনও কিছু মিস করেছেন কিনা। এটি কমপক্ষে তিনবার পুনরাবৃত্তি করুন।
কোডটি পর্যাপ্ত পরিমাণে কী করা উচিত তা নির্দিষ্ট করে। কোডটি দেখতে কেমন হবে তা আপনার অবশ্যই উল্লেখ করতে হবে। ডিরেক্টরি কাঠামো কি হবে; এমনকি সম্ভব হলে ফাইলের নাম। এটি পরে আপনাকে প্রচুর বিরক্তি থেকে রক্ষা করবে। কোডিং গাইডলাইনস, ভেরিয়েবল নামকরণ কনভেনশন, অভ্যন্তরীণ ডকুমেন্টেশন ফর্ম্যাট ইত্যাদি কঠোরভাবে উল্লেখ করুন এটি দেখুন যে তারা এই নির্দেশিকাগুলি মেনে চলেন, এবং যদি না হয় তবে চিৎকার করুন।
তাদের পক্ষ থেকে একটি কার্যকরী স্পেসিফিকেশন দাবি - এটি যে কোনও কোডের আগে লিখিত হবে জোর। এটি পথ থেকে অনেক বিভ্রান্তি এবং ভুল বোঝাবুঝি পাবে।
কোডটি যেমন বিকশিত হচ্ছে তেমন পর্যালোচনা করুন যাতে আপনি আগে থেকেই অসঙ্গতিগুলি সনাক্ত করতে পারেন এবং সেগুলি সংশোধন করতে পারেন। তাদের সাথে প্রতিদিন অন্যান্য দিনে কমপক্ষে একবার কথা বলুন।
শেষ অবধি, তাদের সাথে একটি ভাল সম্পর্ক তৈরি করার চেষ্টা করুন। তাদের অনুভব করুন যে আপনি তাদের কাজের প্রশংসা করেন। আপনার নির্দেশিকাগুলি ফিট করার জন্য তাদেরকে অতিরঞ্জিতভাবে চাপবেন না - পরিবর্তে তাদের এটি করার জন্য অনুরোধ করুন এবং তাদের বলুন যে কোডটি প্রজেক্টটি শেষ করার পরে এটি আপনার পক্ষে এত সহজ করে তুলবে।