اگر درگیر مذاکره با کارفرما و دریافت پروژه های جدید هستید، این سوالات احتمالا برای شما هم پیش آمده است:

روش مذاکره با مشتری چگونه است؟

چطور ایده ی مشتری را به پروژه تبدیل کنیم؟

چطور از اختلاف نظر با کارفرما جلوگیری کنیم؟

چگونه پروژه ی برنامه نویسی را تحلیل کنیم؟

چه مواردی را در اجرای پروژه ها رعایت کنیم؟

چگونه پشتیبانی بدهیم؟

به شخصه قبل از اینکه برنامه نویسی و یا تحلیل پروژه را یاد بگیرم، بیشتر مشتاق بودم بدانم فرآیند مذاکره با مشتریان چیست.

تحلیل پروژه و درک آنچه مشتری از شما میخواهد، نیازمند تجربه ی بالا در زمینه ی مشاوره ی کسب و کار  و اجرای پروژه های متعدد با تیم ها یا افراد برنامه نویس می باشد.

در این مقاله قصد داریم به شما نکاتی را بگوییم که مجریان پروژه های برنامه نویسی باید از ابتدای مذاکرات تا اجرای پروژه بدانند.

با توکاپس همراه باشید.

تعادل را حین مذاکره با مشتری رعایت کنید

در اغلب موارد کارفرما همراه با یک شخص ثالث در دفتر شما حاضر می شود.

اگر شما تنها و به صورت فریلنسری کار می کنید و دفتری برای برگذاری جلسات با مشتریان خود ندارید، باید شخصا در محل کار مشتری حاضر شوید، و باز هم، ممکن است وی تنها نباشد.

در اینطور موارد شما باید تعادل را برقرار کنید.

نگذارید دو یا چند نفر به صورت هم زمان شما را سوال پیچ کنند و باعث سردرگمی شما شوند.

اگر متوجه شدید افراد پای میز مذاکره، با یکدیگر اختلاف نظر دارند باید خودتان بحث را هدایت کنید و به آنها پیشنهاد دهید تا یکی یکی نظراتشان را به شما بگویند.

سپس شما موارد اعلامی آنها را یک به یک در دفتر یادداشت خود بنویسید.

پس از تکمیل شدن نظرات همه ی افراد پای میز مذاکره، بررسی کنید، کدام یک از بخش های خواسته شده، زیاد اهمیتی ندارد و حذف آن موارد در هزینه و زمان صرفه جویی می کند.

بخش های کم اهمیت را که فقط زمان پیاده سازی پروژه را زیاد می کنند با هماهنگی کارفرما به فاز های توسعه موکول کنید و سپس موارد مهم را اولویت بندی کنید.

نکات بحرانی پروژه را عنوان کنید

در مذاکره با مشتریان تخمین بزنید مشکلاتی که در حین اجرا به آنها بر میخورید چیست؟

برای مثال،میخواهید سایتی برای کارفرما طراحی کنید که از نقشه برای نمایش اطلاعات جغرافیایی استفاده خواهد کرد.

باید قبل از شروع پروژه اطلاع داشته باشید که گوگل ایران را تحریم کرده است و نقشه ی گوگل بر روی دامنه ی .ir لود نمی شود.

برای لود کردن نقشه های گوگل باید از دامنه ی غیر .ir استفاده کرد که گران تر است.

همیشه باید آنقدر به مشکلاتی که ممکن است پیش آید اشراف داشته باشید، که همان ابتدا این موارد را به کارفرما گوشزد کنید و راه حل مناسب را پیشنهاد دهید.

مثلا برای موضوع نقشه و تحریم ها می توانید به جای استفاده از دامنه ی com از یک نقشه ی رایگان ایرانی مانند سیدار یا راژمان استفاده نمایید، اما باید کارفرما را در جریان این موضوع قرار دهید.

شاید از این مقاله خوشتون بیاد:  ۱۲ اشتباه مدیر شرکت برنامه نویسی توکاپس

زیرساختهای مورد نیاز را به کارفرما پیشنهاد دهید

قبل از اجرای پروژه با توجه به گستردگی کاربران آن، و همچنین تکنولوژی ساخت آن زیرساخت های لازم را به کارفرما اعلام کنید.

برای مثال کارفرما قصد دارد برای یک بیمارستان با ۴۰۰ کلاینت یک برنامه ی HIS که همه ی بخش های بیمارستان را به یکدیگر متصل میکند، داشته باشد و شما مجری کار هستید.

شما باید تخمین بزنید بخش هایی مانند پذیرش درمانگاه، پذیرش بستری، پذیرش آزمایشگاه، صندوق و بخش های مشابه، به صورت لحظه ای با سرور در ارتباط هستند و باید اطلاعات پیچیده ای را گزارش داده و ثبت کنند.

خوب اگر نتوانید قدرت سرور مورد نیاز و هزینه ای که کارفرما برای راه اندازی و کانفیگ آن متحمل می شود را تخمین بزنید، ممکن است حین پیاده سازی یا پس از آن، زمانی که در حال تست سیستم در بیمارستان هستید، به مشکلات جدی برخورد کنید.

یک پروپوزال دقیق با ذکر همه ی جزئیات به کارفرما ارائه دهید

از نظر من قبل از شروع هر پروژه ای  باید حتما یک پروپوزال کامل از شرایط فنی و معنوی و پیشنهاداتی که دارید به کارفرما ارائه دهید.

از اینکه زمان اضافه برای تدوین اسناد پروژه صرف کنید، نترسید.

این کار یک الزام است که اگر انجام ندهید، باید حین اجرای پروژه چندین برابر وقت بگذارید تا مواردی که خوب متوجه نشدید را دوباره پیاده سازی و اصلاح کنید.

بدترین حالت در پروژه این است که شما و کارفرما درگیر پیاده سازی موارد حاشیه ای شوید که قبلا جزو بحث و توافق نبوده است.

ارائه ی پروپوزال دقیق به شما کمک میکند تا همه ی کاستی ها، افزودنی ها و نکات بحرانی که باید با کارفرما برای آنها راه حلی پیدا کنید را قبل از اجرای پروژه آماده کنید.

ضمن اینکه نبود یک شناسنامه ی خوب برای پروژه باعث میشود، پس از اجرای فاز های اول و دوم، به مرور صحبت های اولیه ای که با کارفرما داشته اید را فراموش کنید.

در دام قراردادهای غیر منطقی اثیر نشوید!

کارفرما به شما می گوید پس از انجام کار همه ی مبلغ را یکجا پرداخت میکنم.

اگر کار در حد ۱۰۰ یا ۲۰۰ هزار تومان باشد، شاید بتوان برای انجام آن به کارفرما اعتماد کرد، اما اگر چنین جمله ای را برای پروژه های گران تر شنیدید، احتمال کنسلی پروژه حین انجام کار بالاست.

در اینطور مواقع گاهی پیش می آید که بارها کارفرما موارد اضافه ای را در زمان اجرا از شما میخواهد و با ذکر جمله ی ” اگر این کار را انجام ندهی پولی در کار نیست ” از شما سوء استفاده میکند.

هرگز در دام چنین قراردادهایی نیفتید.

در اینطور موارد هرقدر مبلغ قرارداد بالاتر باشد، احتمال کنسلی و درخواست های عجیب و غریب از سمت کارفرما بیشتر است.

همیشه ۳۰ درصد مبلغ پروژه را به صورت قراردادی و مکتوب در ابتدای پروژه دریافت و مابقی را فاز بندی و زمان بندی کنید تا هم کارفرما و هم شما ملزم به ادامه ی کار طبق چهارچوب قراردادی پروژه باشید.

خیلی دقیق و تحلیل گرایانه فاز بندی کنید

همیشه برای پروژه ها را فاز بندی کنید.

شاید از این مقاله خوشتون بیاد:  gitee یک جاذبه ی گردشگری چینی برای برنامه نویس ها

فازها باید طوری تنظیم شوند تا بتوانید حین اجرای پروژه بدون دغدغه ی مالی کار کنید.

همانطور که در بند قبل توضیح دادیم، در دام قراردادهایی را که قرار است پس از اجرای کامل پول آن را دریافت کنید نیفتید، این اشتباه بزرگیست.

پروژه را بشکافید و برای هر فاز زمان دقیق + یک تایم بالاتر جهت در اختیار داشتن زمان کافی برای حل مشکلات احتمالی حین پروژه در نظر بگیرید.

مبلغ هر فاز را به طور منطقی و بر اساس سختی و نفر ساعت تنظیم کنید.

عدم فاز بندی صحیح روی پروژه ها ممکن است به شما صدمات مالی وارد کند.

هیچ گاه فکر نکنید برای یک پروژه با جیب خالی می توانید کار کنید(مگر آنکه بحث شراکت در میان باشد)، در اینصورت شما اصلا مذاکره کردن بلد نیستید!!!

برای پروژه های بالای یک میلیون تومان حتما قرارداد ببندید

اگر شما به طور مستقیم با کارفرما ارتباط گرفته اید، حتی اگر وی از آشنایان شماست، حتما قرارداد همکاری منعقد کنید.

حتی اگر قرار نیست فعلا پولی دریافت کنید و در یک استارتاپ به صورت شراکتی همکاری میکنید، باز هم قرارداد حقوقی و دقیق ببندید.

برای انعقاد قرارداد باید به خوبی به شرایط قراردادی و وزن کلمات به کار برده شده در متن قرارداد اشراف داشته باشید.

اگر چیزی در مورد شرایط قانون مدنی نمیدانید، بهتر است قراردادهای اولیه ی خود را به کمک یک کارشناس یا فردی که آگاهی و تجربه ی بیشتری دارد منعقد کنید.

خجالت نکشید و شجاع باشید

در قراردادها بعضی از کلمات و جملات بار مسئولیت بسیار سنگینی دارند.

بنابراین حین مذاکره با مشتری هیچ گاه بدون خواندن کلمه به کلمه ی قرارداد و اصلاح مواردی که ناعادلانه و به ضرر شماست، آن را امضا نکنید.

خجالت کشیدن و کوتاه آمدن در کارهای جدی که پول در آن تبادل می شود، ضررهای جبران ناپذیری به شما وارد می کند.

نکته ی مهم دیگر این است که پس از انعقاد قرارداد، تا زمان دریافت اولین پیش پرداخت، کار را آغاز نکنید، همچنین این مورد را حتما در قرارداد لحاظ کنید.

نکات قرارداد

  • سعی کنید در مذاکره با مشتری پروژه را با روز کاری ببندید.

مثلا نگویید سه ماه، بگویید ۹۰ روز کاری، با این کار، تعطیلات خود را برای اجرای پروژه خراب نخواهید کرد.

  • در قرارداد برای پرداخت نکردن به موقع هزینه ی هر فاز توسط کارفرما جریمه هایی را قرار دهید، البته برای تحویل ندادن به موقع توسط خودتان هم همینطور، مثلا متوقف کردن تایم قرارداد یا متوقف کردن پروژه تا زمانی که پرداخت انجام شود.
  • روش های ارتباطی قابل استناد را در قرارداد ها عنوان کنید، مثلا ذکر کنید کلیه ی نامه نگاری های رسمی از طریق ایمیل انجام می شود، و ایمیل باید یک سرویس عمومی باشد تا نتوان در اسناد دست برد، همچنین آدرس ایمیل ها را در قرارداد ذکر کنید.
  • در قرارداد ذکر کنید تامین هزینه ی هر نوع سامانه ی دارای آبونمان مانند هاست، دامین، پنل پیامک یا … بر عهده ی کارفرماست.
  • فازها و زمان بندی ها را به طور دقیق در قرارداد ذکر کنید.
  • محاسبه ی زمان قرارداد را از زمان اولین واریز پیش پرداخت محاسبه کنید.
  • تکنولوژی و زبان برنامه نویسی را در قرارداد عنوان کنید.
  • کسورات مترتب بر قرارداد را به کارفرما محول کنید.
  • آدرس محل سکونت و اطلاعات هویتی کارفرما را با دریافت اسناد معتبر بررسی کنید.
  • شماره حساب خود را جهت واریز وجه در قرارداد ذکر کنید.
  • اتفاقات طبیعی را در قرارداد ذکر کنید، مثلا زلزله ای که باعث تخریب همه ی شهر شده است، قطعا به شما هم خساراتی وارد میکند، در این موارد باید زمان بخرید.
شاید از این مقاله خوشتون بیاد:  ۱۲ اشتباه مدیر شرکت برنامه نویسی توکاپس

مستندات ارائه دهید

پس از مذاکره با مشتری و زمانی که پروژه شروع شده است، در زمان بندی صحیح(انتهای هر فاز) به کارفرما بگویید چه کارهایی انجام داده اید.

اگر در حال طراحی سامانه ی اینترنتی هستید، سایت را تا زمان اجرای فاز آخر در حالت ” در دست ساخت ” قرار دهید.

توصیه می شود زمانی که هر فاز تکمیل شد، مدت کوتاهی به کارفرما مهلت تست بدهید، تا از صحت عملکرد شما اطمینان حاصل کند، و مجددا سایت را مسدود کنید، تا زمان تحویل فاز بعدی فرا برسد.

دلیل مسدود سازی سایت حین اجرا این است که کارفرما باگ های ریز و درشت سایت را در زمان کدنویسی گزارش ندهد

برای جلوگیری از اتلاف وقت، زمان باگ گیری را به فاز آخر موکول کنید.

مدت زمان پشتیبانی رایگان

معمولا هر سامانه ای که طراحی می شود، کارفرما از شما یک مدت گارانتی و پشتیبانی همه جانبه می خواهد.

معمولا این زمان بین ۲ تا ۳ ماه است.

در مذاکره با مشتری زمان پشتیبانی خود را تعیین کنید.

سعی کنید درخواست هایی مانند یک یا دو سال اول، پشتیبانی رایگان را قبول نکنید، چون هرگز قادر به پشتیبانی منظم و پاسخگویی در تایم بالاتر از ۳ ماه، آن هم به صورت رایگان نخواهید بود.

به طور کلی بازگشتن به پروژه ی انجام شده، آن هم زمانی که درگیر انجام پروژه ی جدید هستید کار سختی هست، پس سخت ترش نکنید.

برای ساده تر و منظم شدن خدمات پشتیبانی، سعی کنید روزهای خاصی از هفته را به دیباگ و پشتیبانی اختصاص دهید تا میان کدنویسی ها درگیر تماس های متعدد نشوید.

جمع بندی

سخن آخر اینکه مذاکره با کارفرما و شروع یک پروژه با مسئولیت های حقوقی و معنوی ای که به شما تحمیل می شود شاید در نگاه اول کار سختی باشد، اما ما سعی کردیم در این مقاله مواردی را که ممکن است نیاز داشته باشید، عنوان کنیم.

در آخر حتما از ما در مورد این مقاله انتقاد کنید و نظرات سازنده و سوالات خود را برای کامل کردن این مبحث عنوان کنید.


غلامرضا بهشتیان

من غلامرضا بهشتیان، عاشق نوشتن مقاله های مفید در حوزه ی وب هستم. امیدوارم مقالات نوشته شده نظر شما خوانندگان عزیز را جلب نماید.

1 دیدگاه

صادق سرگلزایی · فروردین ۱۸, ۱۳۹۸ در ۱۰:۴۱ ق.ظ

بله خواندن دقیق کلمات همیشه موجب جلوگیری از ضررهای جبران ناپذیر میشه و چک کردن و فکر کردن دقیق روی پروژه بسیار مهم است.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *