Programmer City «شهر برنامه‌نویس»
1.08K subscribers
4.2K photos
954 videos
159 files
1.96K links
دنیای برنامه‌نویسی و مهندسی کامپیوتر🌈

📱ارتباط با ما: پیج اینستاگراممون🎈
IG: ProgrammerCity ✅

لینک ناشناسمون:✨
https://t.me/BitnetChat_bot?start=sec-ehdiahcie
Download Telegram
💼 از دانشگاه تا شرکت | قسمت ۳۲

😈 «فقط یه تغییر کوچیک دیگه...»

یکی از خطرناک‌ترین جمله‌های فریلنسری! 😂

پروژه رو شروع کردی.

مشتری وسط کار پیام میده:

> «راستی اگه میشه این قسمتو هم اضافه کن.»

میگی:
«باشه.»

فردا:

> «اینم اگه بشه تغییر بدی خیلی خوب میشه.»

میگی:
«باشه.»

پس‌فردا:

> «یه امکان کوچیک دیگه هم یادم اومد...»

و ناگهان:

📦 پروژه‌ای که قرار بود ۱۰ روزه تموم بشه،
شده یک پروژه ۳۰ روزه!

اما قیمت؟

همون قیمت اولیه. 😐

📌 اینجاست که مفهوم Scope اهمیتشو نشون میده.

هر چیزی که بعد از توافق اولیه به پروژه اضافه میشه، لزوماً «یک تغییر کوچک» نیست.
ممکنه یک Feature جدید باشه.

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
➤ @programercity
━━━━━━━━━━━━━━━━━━
❤1🔥1
🔄 حالا اگر مشتری وسط پروژه یک قابلیت جدید خواست، چکار کنیم؟

اول مشخص کن:

❓ آیا این درخواست داخل Scope اولیه بوده؟

اگر بله:

✅ طبق توافق انجامش میدی.

اگر نه:

📝 درخواست جدیدو بررسی میکنی.

بعد مشخص میکنی:

⏱️ چقدر زمان اضافه نیاز داره؟

💰 آیا هزینه اضافه داره؟

📅 آیا زمان تحویل تغییر میکنه؟

مثلاً:

پروژه اولیه:

🤖 ربات ثبت سفارش

اما مشتری میگه:

> «میخوام سیستم تخفیف هم داشته باشه.»

این فقط یک خط کد نیست!

ممکنه نیاز داشته باشه:

🎟️ ساخت کد تخفیف
🗄️ تغییر دیتابیس
🛒 اعمال تخفیف روی سفارش
👨‍💼 مدیریت کدها در پنل
🧪 تست حالت‌های مختلف

پس قبل از اینکه بگی:

«باشه، انجامش میدم.»

اول بگو:

«بیایم بررسی کنیم این قابلیت چه تغییراتی در پروژه ایجاد میکنه.»

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
➤ @programercity
━━━━━━━━━━━━━━━━━━
❤1🔥1
🎯 چالش امشب ProgrammerCity

مشتری برای یک سایت فروشگاهی سفارش داده:

🛒 محصولات
👤 ثبت‌نام
💳 پرداخت
📦 ثبت سفارش

وسط پروژه پیام میده:

> «راستی یه سیستم کد تخفیف هم اضافه کن.»

تو چکار میکنی؟

1️⃣ بدون حرف انجامش میدم.
2️⃣ میگم اصلاً انجام نمیدم.
3️⃣ بررسی میکنم، زمان و هزینه اضافه رو مشخص میکنم و با مشتری هماهنگ میکنم.
4️⃣ پروژه رو کنسل میکنم. 😂

👇 شماره گزینه رو بفرست.

📅 فردا میریم یک مرحله جلوتر:

🤝 چطور این درخواست‌های جدیدو با مشتری مطرح کنیم که نه رابطه خراب بشه، نه حق برنامه‌نویس ضایع بشه؟

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
➤ @programercity
━━━━━━━━━━━━━━━━━━
❤1🔥1
💼 از دانشگاه تا شرکت | قسمت ۳۳

🤝 یک درخواست جدید از مشتری دریافت کردی.

حالا دو واکنش اشتباه وجود داره:

❌ «نه! اصلاً انجام نمیدم.»

یا:

❌ «باشه، هرچی شما بگید.»

هیچ‌کدوم حرفه‌ای نیست.

بهتره اول درخواستو بررسی کنی و بعد خیلی شفاف توضیح بدی:

💬 «این قابلیت در Scope اولیه پروژه نبوده. برای اضافه کردنش حدود X ساعت زمان نیاز داریم و زمان تحویل پروژه هم X روز تغییر میکنه. هزینه این بخش هم X تومان خواهد بود.»

نه دعوا کردی.

نه مشتری رو رد کردی.

نه مجانی کار کردی.

فقط شرایط تغییر پروژه رو شفاف کردی.

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
➤ @programercity
━━━━━━━━━━━━━━━━━━
❤1👏1
💬 بیایم یک نمونه واقعی ببینیم.

مشتری:

> «میشه امکان کد تخفیفو هم اضافه کنی؟»

پاسخ ضعیف:

❌ «باشه.»

پاسخ بهتر:

💬 «حتماً، امکان اضافه کردن سیستم کد تخفیف وجود داره. این قابلیت در Scope اولیه نبود، بنابراین نیاز به توسعه بخش جدیدی در سیستم داره. برآورد من حدود ۶ ساعت زمان توسعه و تست هست و زمان تحویل پروژه یک روز افزایش پیدا میکنه. اگر تأیید کنید، این قابلیت رو به پروژه اضافه میکنیم.»

🎯 این پاسخ سه چیزو مشخص کرده:

⏱️ زمان
💰 هزینه
📋 تغییر Scope

و مهم‌تر از همه:

مشتری دقیقاً میدونه بابت چه چیزی هزینه پرداخت میکنه.

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
➤ @programercity
━━━━━━━━━━━━━━━━━━
❤1👏1
🎯 حالا تو جواب بده!

مشتری وسط پروژه میگه:

> «این قابلیتو هم اضافه کن، چیز خاصی نیست.»

اما تو میدونی اضافه کردنش حدود ۲ روز زمان میبره.

کدوم پاسخ حرفه‌ای‌تره؟

1️⃣ «باشه، چشم.»
2️⃣ «نه، اصلاً انجام نمیدم.»
3️⃣ «این قابلیت خارج از Scope اولیه است؛ اجازه بدید زمان و هزینه اضافه‌اشو بررسی کنم و جزئیاتو خدمتتون اعلام کنم.»
4️⃣ «اگر پول بیشتری بدید انجام میدم.» 😐

👇 شماره گزینه رو بنویس.

📌 یک برنامه‌نویس حرفه‌ای فقط بلد نیست کد بزنه؛
بلده انتظار مشتریو هم مدیریت کنه.

و حالا یک سؤال مهم‌تر:

اگر مشتری با قیمت تغییر موافقت نکرد، چکار کنیم؟

🤔 آیا باید پروژه رو متوقف کنیم؟
یا راه دیگری وجود داره؟

📅 قسمت بعدی دقیقاً میریم سراغ همین موضوع...

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
➤ @programercity
━━━━━━━━━━━━━━━━━━
❤1👏1
💼 از دانشگاه تا شرکت | قسمت ۳۴

😐 مشتری با هزینه‌ی تغییرات موافقت نمیکنه؛ حالا چی؟

تصور کن داری یک ربات تلگرام میسازی.

امکانات اولیه مشخص شده:
🤖 ثبت سفارش
📦 مدیریت محصولات
👨‍💼 پنل مدیریت

وسط پروژه، مشتری درخواست سیستم تخفیف میده.

تو بررسی میکنی و میگی اضافه کردنش زمان و هزینه‌ی جداگانه داره.

اما مشتری جواب میده:

💬 «مگه چقدر کار داره؟ همینو هم روی پروژه انجام بده دیگه!»

اینجا سه انتخاب داری:

❌ بدون توافق، رایگان انجامش بدی.

❌ وارد بحث و دعوا بشی.

✅ یا حرفه‌ای مذاکره کنی!

یادت باشه: مشتری حق داره درخواستشو مطرح کنه؛ تو هم حق داری محدوده‌ی توافق‌شده‌ی پروژه رو حفظ کنی.

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

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
➤ @programercity
━━━━━━━━━━━━━━━━━━
❤1👏1🏆1
🤝 اگر مشتری هزینه‌ی تغییرات رو قبول نکرد، این سه راه رو امتحان کن:

۱. ارزش تغییر رو توضیح بده.

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

۲. گزینه‌ی ساده‌تری پیشنهاد بده.

مثلاً به‌جای سیستم تخفیف پیشرفته با کلی شرط، در نسخه‌ی اول فقط امکان ثبت یک کد تخفیف ساده رو ارائه کن.

البته باید مشخص باشه این نسخه دقیقاً چه امکاناتی داره.

۳. پروژه رو مرحله‌بندی کن.

میتونی امکانات ضروری رو طبق توافق فعلی تحویل بدی و قابلیت جدید رو به فاز بعدی منتقل کنی.

📌 یک نکته‌ی مهم:

اگر درخواست مشتری از قبل جزو توافق بوده، نمیتونی صرفاً به دلیل سخت‌تر شدن کار، اونو تغییر جدید محسوب کنی.

اول توافق اولیه رو بررسی کن؛ بعد تصمیم بگیر.

👨‍💻 حرفه‌ای بودن یعنی هم از حق خودت محافظت کنی، هم راه‌حل مناسبی جلوی مشتری بذاری.

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
➤ @programercity
━━━━━━━━━━━━━━━━━━
❤1⚡1👏1
🎯 چالش امشب ProgrammerCity

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

وسط پروژه میخواد سیستم تخفیف هم اضافه بشه.

تو اعلام میکنی که این قابلیت خارج از توافق اولیه است و هزینه‌ی جداگانه داره.

مشتری میگه:

💬 «من بیشتر از این بودجه ندارم!»

تو چکار میکنی؟

1️⃣ قابلیتو رایگان اضافه میکنم تا مشتری ناراحت نشه.

2️⃣ محترمانه توضیح میدم و یک نسخه‌ی ساده‌تر یا اجرای مرحله‌ای پیشنهاد میکنم.

3️⃣ بدون توضیح پروژه رو متوقف میکنم.

4️⃣ اصرار میکنم حتماً باید هزینه‌ی کامل رو پرداخت کنه.

👇 شماره گزینه‌اتو بنویس و اگر تجربه‌ای داشتی، تعریف کن!

📅 فردا میریم سراغ مرحله‌ی بعد:

🚀 وقتی مشتری با شرایط پروژه موافقت کرد، قبل از شروع کدنویسی چه کارهایی باید انجام بدیم؟

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
➤ @programercity
━━━━━━━━━━━━━━━━━━
❤1⚡1🔥1
💼 از دانشگاه تا شرکت | قسمت ۳۵

🚀 مشتری تأیید کرده!
قیمت مشخصه.
امکانات مشخصه.
زمان تحویل هم مشخصه.

بالاخره وقت کدنویسیه؟ 😍

تقریباً! اما هنوز چند قدم مهم باقی مونده.

تصور کن بدون آماده‌سازی شروع به کدنویسی میکنی و بعد متوجه میشی:

😐 اطلاعات لازم برای پروژه رو نداری.
😐 مشتری هنوز محتوای سایت رو آماده نکرده.
😐 دسترسی سرور یا API مشخص نیست.
😐 معلوم نیست چه کسی باید امکاناتو تأیید کنه.

نتیجه؟

توقف پروژه، اتلاف وقت و احتمالاً اختلاف با مشتری!

پس قبل از شروع، یک چک‌لیست راه‌اندازی پروژه داشته باش.

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

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
➤ @programercity
━━━━━━━━━━━━━━━━━━
❤1
📋 چک‌لیست قبل از شروع پروژه

قبل از اینکه اولین خط کدو بنویسی، این مواردو بررسی کن:

✅ ۱. توافق نهایی

امکانات، محدوده، زمان‌بندی، هزینه و شرایط تغییرات مشخص باشن.

✅ ۲. پرداخت اولیه

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

✅ ۳. اطلاعات و دسترسی‌ها

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

✅ ۴. ابزارهای مدیریت پروژه

کارها رو به بخش‌های کوچیک‌تر تقسیم کن و مشخص کن هر بخش چه زمانی باید انجام بشه.

✅ ۵. محیط توسعه

مخزن Git، ساختار پروژه، فایل تنظیمات و محیط تستو آماده کن.

✅ ۶. معیار تحویل

از قبل مشخص کن چطور میفهمین هر قابلیت درست کار میکنه و آماده‌ی تحویله.

مثلاً برای قابلیت ثبت سفارش:

📌 سفارش ثبت بشه.
📌 اطلاعات در دیتابیس ذخیره بشه.
📌 کاربر تأییدیه دریافت کنه.
📌 مدیر بتونه سفارشو مشاهده کنه.

این یعنی تبدیل یک خواسته‌ی کلی به معیار قابل آزمایش.

حالا شروع پروژه فقط یک هیجان لحظه‌ای نیست؛ یک برنامه‌ی مشخص پشتشه. 💪

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
➤ @programercity
━━━━━━━━━━━━━━━━━━
❤1
🧠 چالش امشب ProgrammerCity

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

توافق انجام شده و مشتری هم آماده‌ی شروعه.

اما هنوز نمیدونی:

* محصولات چطور وارد ربات میشن.
* سفارش‌ها کجا ذخیره میشن.
* مدیر چطور سفارش جدیدو میبینه.

به نظرت اولین قدم درست چیه؟

1️⃣ مستقیم کدنویسیو شروع کنم و وسط کار تصمیم بگیرم.

2️⃣ قبل از شروع، جریان سفارش، اطلاعات موردنیاز و نقش مدیرو مشخص کنم.

3️⃣ اول ظاهر رباتو بسازم، بعداً به بقیه‌ی موارد فکر کنم.

4️⃣ همه‌ی امکاناتو یک‌جا پیاده‌سازی کنم.

👇 انتخابتو بنویس!

🎯 تمرین اضافه: اگر جای تو بودم، قبل از کدنویسی یک نمودار ساده از مسیر سفارش میکشیدم:

شروع ← انتخاب محصول ← ثبت سفارش ← ذخیره‌سازی ← اعلان به مدیر

این نمودار ساده میتونه جلوی کلی دوباره‌کاریو بگیره.

📅 در قسمت بعد میریم سراغ یک مهارت مهم دیگه:

🧩 چطور یک پروژه‌ی بزرگو به تسک‌های کوچیک تقسیم کنیم تا هم پیشرفتمون قابل اندازه‌گیری باشه، هم بدونیم دقیقاً قدم بعدی چیه؟

━━━━━━━━━━━━━━━━━━
°⋆⸜ 𝙋𝙧𝙤𝙜𝙧𝙖𝙢𝙢𝙚𝙧'𝙨 𝘾𝙞𝙩𝙮 ⸝⋆°
➤ Code • Learn • Build
➤ @programercity
━━━━━━━━━━━━━━━━━━
❤1
🤩اشتراک های هوش مصنوعی رو با بهترین قیمت تهیه کن!! @GptPluserBot

▪️▪️▪️▪️▪️▪️▪️▪️
🎒پکیجهای آموزشی به ارزش 8میلیون بگیر
@Computer_IT_Engineering

🎒انگلیسی از مبتدی تا پیشرفته
@Eng_Online

🎒رایگان استخدام شو (تعداد محدود!!)
@JOB_FREELANCER

🎒ثانیه ای پول دربیار!! (مهلت:امشب)
@UNII_KAR

🎒آموزش 0 تا 100مهدی هک
@Mahdiihack

🎒سفارش پروژه و اسنخدامی
@prozhebegir_ir

🎒یادگیری تخصصی برنامه نویسی
@programmer_best

🎒کامپیوتر رو حرفه‌ای یادبگیر
@spcware

🎒عکسای دکوراسیون داخلی
@Design_groooup

🎒ترفندهای روز کامپیوتر
@ChilliTech

🎒آمورش رندرینگ در معماری
@Arch_referece

🎒انگلیسی حرفه ای کودک و بزرگسال
@EnglishSlangFa

🎒فیلترشکن و کانفیگ رایگان
@AxonShop_VPN

🎒گروه معماری نورمحمدیان
@autocad70

🎒گروه كافه گرافيست
@cofegraph

🎒گروه معماری
@Archreferece

🎒هک و امنیت | با گوشی رایگان
@ParsiCyber

🎒عمران و معماری
@Master_Civil0

🎒هک امنیت
@Shadow_Acadmey

🎒استخدامی های استان گلستان
@est_golestan

🎒فریلنسری پروژه
@freelancergold

🎒آشنایی با روش‌های دفاعی هک
@Steam_Hack85

🎒پروژه استخدامی برکه | استخدام فوری
@prozhehBARKEH

🎒موزیکای دور دور و مهمونی
@Musicyab3

🎒پروژه گرام
@proje_gram

🎒یونیک استخدام ادمین
@porozhYONK

🎒معماری با ChatGPT
@promtArch

🎒استخدام تدوین گر و ادیتور
@VLink_venusteam

🎒منابع استخدامی با تخفیف
@estekhdamifouri

🎒کاریابی ماهلین
@karyabimahlin1

🎒متخصص برنامه‌نویسی شو
@ProgramerCity

🎒پروژه ساحل / استخدام
@porojeSahel

🎒جامعـــــه کتابخوان | کتاب YAR
@Azsefr_beyek_ketab

🎒ضرب المثل | آرایــــــه FARSI
@Azsefr_beyek_farsi

🎒فرهنگیـــــان | تست test
@Azsefr_beyek_text

🎒پروژه بدون هزینه ثبت نام
@porozh_ronak

🎒جملات انگیزشی
@Mokhytoo

🎒خریدوفروش کتاب کنکور|دانشگاه
@konkordast2

🎒پروژه های رایگان اینجا ثبت میشن
@projekarr

🎒انگلیسی بدون دردسر
@englishwoorld

🎒استخدام شرکتی وادمین های واقعی
@porojakar

🎒پروژه سفید
@PorozhSeFiD

🎒ربات تلگرام
@TechBot_1

🎒استخدام و جذب نیروی کار
@Projeeland

🎒پروژه های میلیونی
@poro_ad

🎒با Reex همیشه وصل باش
@ReexProxy

🎒کامپیـــــوتر | شبکـــــه ICDL
@Azsefr_beyek_test

🎒آموزش پیشرفته آیلتس
@IELTS_Brilliance

🎒اینترنت بدون محدودیت
@sarvaring_mood85

🎒پاتوق معماران آرک‌تاک
@arch_talk1405

🎒صفر تا صد ISI
@Ut_techwritingg

🎒آگهی کارجو اینجا رایگان
@melliprojects

🎒انگلیسی کاربردی برای همه
@be_translator

🎒سرزمین پروژه های ادمینی
@SarzaminAdmini

🎒توییت لند | بهترین توییت ها
@TweetLnad

🎒آموزش کامپیوتر هک
@Victor_hacker_Steam

🎒مـلودی‌ های نـیمه‌ شـب
@RamaMusic_ir

🎒ابزارهای رایگان هوش مصنوعی
@LearnDotfar

🎒پروژه آنلاین استخدام
@porje_online

🎒استخـــــدام | مشاوره شغلـــــــی
@Azsefr_beyek

🎒فیلم سینمایی | دوبله فارسی
@H_Plu3

🎒کانفینگ V2RAY ➕ v2BOX
@v2rayenn

🎒حال خوب کن ها بیان
@ours_life2026

🎒ترفندهای هوش مصنوعی عکاسی
@farhadiacademy

🎒استخدامی تهران و سراسری
@estekhdami_fouri

🎒تست های زبان انگلیسی
@en_quizztour

🎒دانلود آبجکت های رویت
@VoxelObjectRevit

🎒آرشیو تخصصی آبجکت 3DMax
@Voxel3DDVray

🎒آموزش شبکه های Cisco و مایکروسات
@modirshabake

🎒دانلود پروژه های معماری
@CHAHAR_SOOGH_archi_gp

🎒فونت های کمیاب فتوشاپ
@bmaxarchive

🎒از 0 تا 100 چاپ مقاله ❖ISI❖
@akhtar_electronic_group

🎒اموزش هک غیرقانونی با (موبایل)
@EngineeringReverse

🎒پکیج پریمیوم گرافیکاران
@bmaxdesign

🎒دانلود جزوه پولی رایگان!!(فقط امشب)
@UNIVERSITY_BOOKSS

➖➖➖➖➖➖➖
🟥
@Tab_Mohandesi24
.