

ما تا همین چند سال پیش، اگه میتونستیم یه کد تر و تمیز بنویسیم و روی یکی دو تا فریمورک مسلط بودیم، کارمون راه میافتاد و راحت پیشرفت میکردیم. ولی بیاید روراست باشیم؛ با اومدن این مهمون خونده عزیز که هوش مصنوعی نام داره دیگه قوانین بازی داره تغییر میکنه.توی این پست میخوام از دید یه مدیر فنی تازه کار یه استارتاپ خیلی تازه کار تر، تجربیاتی که توی این مدت سر و کله زدن با هوش های مصنوعی و طبیعی داشتم رو بگم.
این تغییرِ جایگاه، تجربههای خیلی جالبی برام داشت. تو این مدت با پوست و استخونم حس کردم که الان دیگه عیارِ یه برنامهنویس، فقط به سرعتِ «کد زدنش» نیست. هوش مصنوعی الان میتونه تو چند ثانیه پیچیدهترین الگوریتمها رو برامون بنویسه، اما یه کار هست که هیچوقتِ هیچوقت نمیتونه انجام بده:
مسئولیتِ کدی که نوشته رو گردن بگیره!
این ۸ موردی که در ادامه میخونید، صرفاً درددلها و تجربههای ملموسِ من از این مسیرِ جدیدن. اگه میخواید تو این عصرِ هوش مصنوعی، تو هر تیمی(علل خصوص استارتاپی) که هستید یه مهرهی کلیدی و غیرقابلجایگزین بمونید، پیشنهاد میکنم این چند تا ویژگی رو تو خودتون تقویت کنید:
۱. تعصب روی زبان و ابزار؟ بندازش دور!
یادتونه قدیما چقدر تو گروههای تلگرامی سر اینکه پایتون بهتره یا پیاچپی، ریکت خفنتره یا ویو ، با هم کلکل میکردیم؟ راستش رو بخواید تو دنیای پرسرعت و بیرحم استارتاپیِ امروز، جملهی «من فقط فلان کاره هستم» دیگه یه مزیت تخصصی نیست؛ بلکه یه ترمز دستیِ بزرگه!
استارتاپ یعنی تغییر مداوم و دستوپنجه نرم کردن با چالشهای جدید. ممکنه امروز کل بکاند رو با Node.js بالا آورده باشیم، اما ماه بعد برای یه میکرو سرویسِ خاص که نیاز به پردازش وحشتناک سریع داره، مجبور بشیم بریم سراغ Go .برنامهنویسِ خفنِ امروز، کسی نیست که سینتکس و توابعِ یه زبان خاص رو مثل طوطی حفظ باشه؛ کسیه که «مفاهیم پایه» و «معماری» رو با گوشت و خونش درک کرده. میدونه ساختار دادهها چیه، شیگرایی چطور کار میکنه، یا مثلا کی باید از صف (Queue) استفاده کرد.
اینجاست که این مهمون عزیز (هوش مصنوعی) وارد عمل میشه. فرض کنید شما سالها پایتون زدید و حالا تیم گیر افتاده و باید یه تسک سمت فرانتاند (با جاوااسکریپت) زده بشه. قدیما باید میرفتید یه دوره ۴۰ ساعته میدیدید یا دو هفته داکیومنت میخوندید. اما الان؟ کافیه به ChatGPT یا Claude بگید: «ببین، من منطق این کار رو با پایتون بلدم. میخوام دقیقاً همین حلقه و شرطها رو تو جاوااسکریپت پیاده کنم. معادلش برام بنویس و سینتکسش رو توضیح بده.»
بوم! هوش مصنوعی تو چند ثانیه ابزارِ جدید رو به زبونی که شما میفهمید یادتون میده. شما با تکیه بر همون دانشِ الگوریتمیِ پایهتون، تو یکی دو روز میشید یه برنامهنویسی که کارِ تیم رو راه میندازه. پس ابزارها و زبانها رو فقط به چشم «آچار» نگاه کنید.
برنامهنویسی که انعطافپذیر باشه و با کمک هوش مصنوعی سریع خودش رو با تکنولوژیِ روز وفق بده، تو هر استارتاپی رو هوا میزننش!
۲. گلیمت رو از آب بکش بیرون!


هوش مصنوعی خیلی باهوشه، ولی یه نقطهضعف بزرگ داره: به شدت «پاستوریزه» است! یعنی برای اینکه یه خروجیِ درستوحسابی بهت تحویل بده، باید دقیقترین، شفافترین و ترتمیزترین دستور (Prompt) رو براش بنویسی.بنابراین، اگه قراره با دیدنِ اولین ارورِ ناشناخته، یا شفاف نبودنِ یه تسک، سریع دست از کار بکشید و منتظر بمونید تا یکی بیاد مثل یه معلم خطبهخط راهنماییتون کنه، عملاً دارید با ابزاری رقابت میکنید که تو صدمِ ثانیه جوابها رو پیدا میکنه؛ و تو این رقابت، رباتها از پیش برندهن!
به دنیای واقعیِ استارتاپها خوش اومدید؛ جایی که اصلاً از پرامپتهای شُستهرُفته خبری نیست! تو یه استارتاپِ واقعی (مخصوصاً اونایی که تازه دارن شکل میگیرن)، صورتمسئلهها همیشه گنگ، نامفهوم و پر از ابهامن. مدیر فنی یا لیدِ تیم (که الان مثلاً من باشم و هزار تا دغدغهی دیگه رو سرم ریخته) اصلاً وقت نداره یه تسک رو مثل یه ماشین براتون دیکته کنه.
فرض کنید داریم روی یه محصول مدیریت داراییهای شبکه کار میکنیم. تسکی که به شما داده میشه صرفاً یه جملهست تو گروه شرکت یا یه تیکتِ نصفهنیمه تو جیرا: «بچهها، یه سرویس بکاند میخوایم که شبکه داخلی رو مدام اسکن کنه، سیستمها رو پیدا کنه و اگه پورت خطرناکی باز بود یا آسیبپذیری داشت، تو سیستم ثبتش کنه.»
همین!
اگه اینو دقیقاً به هوش مصنوعی بگی هنگ میکنه، چون پر از ابهامه. رنج آیپیها رو از کجا بخونه؟ با چه پروتکلی اسکن کنه؟ بریم سراغ ابزارهای اوپنسورس و اسکریپتها یا خودمون لاجیکش رو بنویسیم؟ کلمهی «پورت خطرناک» اینجا یعنی چی؟ اگه اسکنِ یه آیپی تایماوت (Timeout) داد، برنامه کرش کنه یا لاگ بندازه و بره سراغ بعدی؟ معماری دیتابیس چطور باشه که مدام دادهی تکراری ذخیره نکنیم؟
اینجاست که مرز بین یه «کدنویسِ ساده» و یه «توسعهدهندهی حرفهای» مشخص میشه. برنامهنویسِ خفن کسیه که:
- این ایدهی خام رو تحویل میگیره و خودش با سر میره تو دلِ ابهام.
- معماری رو تو ذهنش حلاجی میکنه.
- میره ابزارهای اوپنسورسِ اسکنِ شبکه رو بررسی میکنه.
- داکیومنتها رو شخم میزنه.
- دو سه تا سوالِ کلیدی و دقیق از تیم میپرسه تا نیازمندیها رو شفاف کنه.
- و تهش یه خروجی کار راهانداز تحویل میده.
شما زمانی غیرقابلجایگزین میشید که بتونید تو تاریکیِ ابهاماتِ یه پروژه، خودتون مسیر رو روشن کنید.
۳. ناجی روزهای بحرانی: وقتی سرور میخوابه!
عیارِ شما تو روزهای آفتابی و وقتی کدهاتون روی سیستم خودتون (Localhost) مثل ساعت کار میکنه، مشخص نمیشه. عیار واقعیِ یه برنامهنویس دقیقاً همون لحظهای معلوم میشه که یه دیپلوی جدید رفتیم و یهو سرور ارور ۵۰۰ میده، دیتابیس قفل (Deadlock) کرده، نوتیفیکیشنهای خطا داره رگباری میاد و گوشی مدیرعامل داره زنگ میخوره!
تو این لحظاتِ پرالتهاب و اورژانسی، هوش مصنوعی فقط یه صفحه چتِ بیخیاله! اون نمیتونه استرسِ تیم رو حس کنه یا مدیریت بحران کنه. یه «کدنویسِ ساده» تو این شرایط دستپاچه میشه، میترسه، یا بدتر از اون، شروع میکنه به مقصر پیدا کردن: «کد من رو سیستم خودم درست بود، حتماً مشکل از سرور و بچههای زیرساخته!» یا «تقصیر فلانیه که کد منو تایید کرد!».
اما اینجاست که میرسیم به همون جملهی طلاییِ مقدمه: گردن گرفتنِ مسئولیت! یه توسعهدهندهی خفن و مسئولیتپذیر، تو روزِ بحران دنبال مقصر نمیگرده. آستینها رو بالا میزنه، نقشِ یه مدیر بحران رو بازی میکنه، سریع میره سراغ ابزارهای مانیتورینگ و لاگها، ریشهی خرابی رو پیدا میکنه و تا سیستم رو دوباره سر پا نکنه و یه نفس راحت نکشه، بیخیال نمیشه (حتی اگه باگ رو یکی دیگه از بچههای تیم نوشته باشه).
شما با نوشتنِ الگوریتمهای خفن قهرمان نمیشید، بلکه روزی که سایت رو از کما درمیارید، تبدیل میشید به همون مهرهی کلیدیای که هیچ رباتی نمیتونه جاش رو بگیره.
۴. فن بیان و دمو کردن: مترجمِ کدهات برای آدمیزاد باش!


خیلی از ما برنامهنویسها فکر میکنیم وظیفهمون فقط اینه که هدفون بذاریم تو گوشمون، خیره بشیم به مانیتور تاریکِ ادیتورمون و با زبون ماشینها حرف بزنیم. اما بذارید یه حقیقت تلخِ بیزینسی رو بهتون بگم:
خفنترین، بهینهترین و تمیزترین کدی که نتونید ارزشش رو به آدمهای غیرفنی ثابت کنید، دوزار نمیارزه!
هوش مصنوعی میتونه تو چند ثانیه یه اسکریپت عالی بنویسه که پرفورمنس رو ببره بالا، اما اون رباتِ بیچاره اصلاً نمیفهمه «بیزینس» یا «کسبوکار» یعنی چی! اون نمیفهمه کدی که نوشته چطور قراره برای استارتاپ پول دربیاره، هزینهی سرورها رو کم کنه یا تجربه کاربر رو بهتر کنه. ولی شما به عنوان یه انسانِ هوشمند، باید اینو بفهمید.
فرض کنید یه ماهِ تمام روی یه معماری پیچیده برای سیستم کشینگ (Caching) یا تغییر ساختار دیتابیس کار کردید تا سرعت ریکوئستها بالا بره. روزی که قراره خروجیِ کار رو برای کارفرما، سرمایهگذار یا حتی مدیرعاملِ غیرفنیتون دمو (Demo) کنید، اگه بخواید براشون از پیچیدگیهای Redis، میکروسرویسها و Big O الگوریتمتون حرف بزنید، همون دقیقه اول وسط حرفاتون خوابشون میبره (یا کلافه میشن)!
شما باید بتونید اون منطقِ پیچیدهی فنی رو به یه زبونِ ساده، جذاب و تجاری ترجمه کنید. مثلاً باید با اعتمادبهنفس بگید: «با این تغییری که ما تو زیرساخت دادیم، سرعت لود شدنِ سایت برای کاربرِ نهایی ۳ برابر شده؛ و این یعنی ریزش مشتریهامون تو صفحهی پرداخت قراره نصف بشه و فروشمون بره بالا.»
برنامهنویسی که بتونه بیاد پای تخته یا تو یه جلسه آنلاین، محصول رو به زیبایی دمو کنه و از دستاوردش دفاع کنه، به مدیرهاش ثابت میکنه که صرفاً یه «تایپیستِ کد» نیست؛ بلکه میتونه تصویرِ بزرگتر و «ارزش تجاریِ» محصول رو ببینه.
کسی که بتونه هم با کامپیوترها عالی حرف بزنه و هم ارزشِ کارش رو به آدمها ثابت کنه، مهرهایه که هیچ استارتاپی جرئت نمیکنه از دستش بده.
۵. احترام به وقتِ تیم
یه توسعهدهندهی پخته، کدی تحویل میده که خوندنش برای بقیه راحت باشه. قبل از تحویلِ کار، خودش رو جای یوزر میذاره و سناریوهای مختلف رو تست میکنه، لاجیکِ پیچیدهش رو کامنتگذاری میکنه و مستنداتِ تر و تمیزی مینویسه. بلوغِ حرفهای یعنی همکارتون با دیدنِ PR شما، خیالش راحت باشه که یه کدِ قرص و محکم قراره به پروژه اضافه بشه، نه یه بمبِ ساعتی!
تو دنیای واقعیِ استارتاپها، ما تو یه جزیرهی متروکه و تو خلأ کد نمیزنیم. کدی که امروز شما مینویسید، فردا قراره توسط یه همکارِ دیگه خونده بشه، تو جلسات Code Review بررسی بشه یا اصلاً چند ماه بعد یکی دیگه بیاد روش یه فیچرِ جدید توسعه بده.
بذارید خیالتون رو راحت کنم؛ هوش مصنوعی میتونه تو یه چشم به هم زدن صدها خط کد براتون جنریت کنه. ولی آیا اون ربات میفهمه که همکارتون (که قراره این کد رو بخونه) چقدر ممکنه از دیدن متغیرهای بیمعنی یا منطقهای درهمپیچیده (Spaghetti Code) سردرد بگیره؟ معلومه که نه! هوش مصنوعی هیچ دغدغهای برای «خستگیِ ذهنیِ بچههای تیم» نداره، اما شما به عنوان یه انسان و یه همتیمی، باید داشته باشید.
فرض کنید یه تسک داشتید و باید فیلترهای بخش جستجوی سایت رو میزدید. میرید از یه ابزار هوش مصنوعی کمک میگیرید، یه تیکه کد کپی میکنید و بدون اینکه خودتون با دقت بخونیدش یا یه بار درستوحسابی تستش کنید، میفرستید واسه تایید و میرید سراغ کار بعدی. بعد همکارِ ارشدِ شما باید دو ساعت وقت بذاره تا رمزگشایی کنه ببینه اصلاً اون متغیر temp2 اون وسط داره چیکار میکنه، یا چرا این کد رو حالت موبایل کرش میکنه!
اینجاست که دوباره میرسیم به همون بحثِ «گردن گرفتن مسئولیت». وقتی کدی که فرستادید مدام به خاطر ارورهای پیشپاافتاده، نداشتنِ کامنت یا رعایت نکردنِ استانداردهای کدنویسیِ تیم برگشت میخوره، پیامش برای مدیرتون این نیست که «تسک سخت بود»؛ پیامش اینه که «من احترامی برای وقت بقیه قائل نیستم».
۶. هوش مصنوعی دلسوزِ کاربر نیست، تو باش!


هوش مصنوعی دقیقاً همون چیزی رو براتون کد میزنه که بهش میگید؛ مثل یه سربازِ بینهایت مطیع! اما هیچوقتِ هیچوقت برنمیگرده بگه: «رئیس، اگه این دکمهی انصراف رو با این رنگ قرمز بذاریم دقیقاً بغلِ دکمهی تایید، کاربر تو حالت موبایل با انگشت شستش اشتباهی میزنه روش و کل فرمش پاک میشه!»
تو یه استارتاپ، ما قرار نیست فقط «ماشینِ تبدیل قهوه به کد» یا «تیکتبندِ حرفهای» باشیم! هوش مصنوعی دغدغهی تجربهی کاربر (UX) و موفقیت بیزینس رو نداره، ولی شما باید داشته باشید. شما مسئول این هستید که فیچری که زدید، واقعاً به دردِ آدمی که پشت مانیتور نشسته بخوره.
اما چطور این «دید محصولی» رو تو خودمون تقویت کنیم؟ این ۴ تا کار رو به روزمرهتون اضافه کنید:
- قبل از «چگونه؟»، بپرسید «چرا؟»: تا یه تسک میاد زیر دستتون، سریع نرید سراغ اینکه “با کدوم لایبرری بزنمش؟”. اول از مدیر محصول یا لیدِ تیم بپرسید: “این فیچر اصلاً قراره چه دردی از بیزینس دوا کنه؟” وقتی هدف بیزینسی رو بدونید، خودتون راهحلهای سادهتر و بهتری براش پیشنهاد میدین.
- غذای سگ خودتون رو بخورید (Dogfooding): محصول رو فقط تو محیط لوکال و لپتاپهای قدرتمند خودتون تست نکنید. اپلیکیشن خودتون رو بریزید رو گوشیتون و تو مترو با اینترنتِ ضعیف باهاش کار کنید. اونجاست که تازه با گوشت و خونتون میفهمید فلان فرمِ ثبتنام چقدر رو اعصابه!
- با بچههای پشتیبانی رفیق بشید: ما برنامهنویسها معمولاً تو غار خودمونیم. ولی اگه هفتهای نیم ساعت برید تیکتهای پشتیبانی یا کامنتهای کافهبازار/گوگلپلی رو بخونید و ببینید ۲۰ نفر سر پیدا کردنِ یه دکمه گیج شدن، دفعهی بعد کدها رو بیخودی پیچیده نمیکنید.
- کالبدشکافیِ رقبا: اپهای موفق رو نصب کنید و اصلاً به این فکر نکنید که استکِ تکنولوژیشون چیه؛ فقط به «مسیر کاربر» (User Flow) دقت کنید. ببینید چطور با کمترین کلیک، کاربر رو به هدف میرسونن و همون الگوها رو تو کار خودتون پیاده کنید.
کسی که این دید رو داشته باشه، فقط کد نمیزنه، بلکه دلسوزانه مسئولیتِ محصولی که ساخته رو گردن میگیره.
۷. نگهبانِ لبههای پرتگاه (Edge Cases) باش، کد پاستوریزه به درد روز مبادا نمیخوره!
هوش مصنوعی استادِ بیبدیلِ نوشتنِ کدهای «مسیر سبز» یا همون Happy Path است. یعنی کدی تحویلت میده که اگه همهچیز تو ایدهآلترین حالتِ ممکن باشه، کاربر دقیقاً همون دکمهای رو بزنه که ما میخوایم و اینترنت هم سرعتش نور باشه، عین ساعت کار میکنه.اما تو دنیای بیرحم استارتاپها، کاربران اصلاً شبیه رباتهای منظم نیستن و سرورها هم همیشه حالشون خوب نیست!
بذارید یه مثال بزنم. فرض کنید یه API ساختی برای اعمالِ کد تخفیف کمپینِ شب یلدا. هوش مصنوعی کدش رو تر و تمیز برات مینویسه: «چک کن کد معتبر باشه، تخفیف رو روی سبد خرید اعمال کن، و یکی از ظرفیتِ کدهای مجاز کم کن.» عالیه نه؟
اما یه برنامهنویسِ باتجربه که ذهنش برای گیر دادن به «لبههای پرتگاه» و سناریوهای وحشتناک تربیت شده، همون لحظه ترمز رو میکشه و میگه: «اگه یه کاربرِ زرنگ بیاد و تو یه هزارم ثانیه ۵۰ تا ریکوئستِ همزمان برای یه کد تخفیف بفرسته چی؟ (همون باگِ معروفِ Race Condition). آیا سیستم ما قبل از اینکه دیتابیس آپدیت بشه، هر ۵۰ تا تخفیف رو اعمال میکنه و استارتاپمون رو تو یه شب به خاک سیاه میشونه؟»
یا مثلاً اگه ترافیک سایت یهو ۱۰ برابر شد چی؟ اگه کاربر به جای اسمش، تو فیلدِ ثبتنام یه تیکه اسکریپتِ مخرب (XSS یا SQL Injection) وارد کرد چی؟
هوش مصنوعی این «پارانویا و ترسِ سازنده» رو نداره. اون سناریوهای مرزی و بحرانی رو پیشبینی نمیکنه، مگه اینکه شما خطبهخط بهش دیکته کنید. اینجاست که دوباره برمیگردیم به همون اصلِ گردن گرفتنِ مسئولیت. مدیرِ شما (و کلِ بیزینس) ازتون انتظار نداره فقط کدی بنویسید که تو روزهای آفتابی کار کنه؛ ازتون توقع دارن سیستمی طراحی کنید که تو بدترین طوفانها، ترافیکهای یهویی و زیرِ دستِ عجیبترین کاربرها هم دوام بیاره.
پیشبینی کردنِ این سناریوهای عجیبوغریب و زرهپوش کردنِ سیستم، کارِ یه ذهنِ انسانِ باتجربه، خلاق و دلسوزه که فراتر از یه خروجیِ سادهی چتبات فکر میکنه.
۸. دستِ بقیه رو بگیر: گرگ تنها نمیخوایم!


سرعت کد زدنِ شما هر چقدر هم بالا باشه، به گرد پای هوش مصنوعی نمیرسه. هوش مصنوعی میتونه جوابِ یه ارورِ پیچیده رو تو یه ثانیه بده، اما آیا میتونه بشینه کنارِ یه کارآموز (Junior) تازهکار که از استرسِ پاک شدنِ دیتابیسِ تستی دستاش داره میلرزه، آرومش کنه و با حوصله بهش یاد بده چطور مشکل رو قدمبهقدم دیباگ کنه؟ نه! هوش مصنوعی فقط «کد» میده، ولی یه همتیمیِ خفن، «طرزِ فکر مهندسی» رو یاد میده.
تو دنیای مهندسی نرمافزار یه اصطلاحِ خیلی معروف (و البته یه خورده دارک) داریم به اسم «Bus Factor». مفهومش اینه:
حداقل چند نفر از اعضای تیم باید برن زیر اتوبوس (یا یهو استعفا بدن، مریض بشن و غیب بشن) تا کلِ پروژه متوقف بشه و استارتاپ به خاک سیاه بشینه؟
بعضی از برنامهنویسها فکر میکنن اگه فوتِ کوزهگری رو پیش خودشون نگه دارن، مستندات ننویسن و تنها کسی باشن که میدونه فلان میکروسرویسِ حیاتی چطور کار میکنه، برای خودشون «امنیت شغلی» خریدن. یعنی تلاش میکنن Bus Factor تیم رو روی عددِ خطرناکِ ۱ نگه دارن! اما واقعیت اینه که از دید مدیریت، این آدما نه تنها یه مهرهی ارزشمند نیستن، بلکه در درازمدت تبدیل میشن به یه گلوگاه (Bottleneck) و یه بمبِ ساعتی برای بیزینس.
یه مهندسِ نرمافزارِ پخته، کسیه که وقتی یه تکنولوژی یا پترنِ جدید رو یاد میگیره (حتی به کمک همون هوش مصنوعی)، با داکیومنت نوشتن، بررسی کدهای همدیگه (Code Review) و آموزش دادن به جونیورها، دانشش رو تو کل تیم پخش میکنه تا سیستم به یک شخصِ خاص وابسته نباشه.
این دقیقاً همون نقطهی اوجِ گردن گرفتنِ مسئولیته. شما تو یه تیمِ موفق، فقط مسئولِ کدهای خودتون نیستید؛ شما در قبالِ رشدِ تیمی که توش کار میکنید هم مسئولید. یادتون باشه، یه برنامهنویسِ خفن و ۱۰ ایکس (۱۰x Developer) واقعی، کسی نیست که ۱۰ برابر بقیه کد میزنه؛ کسیه که با آموزش و منتورینگ، سطحِ بقیهی بچههای تیم رو میکشه بالا و از خودش یه «رهبرِ فنیِ» غیرقابلجایگزین میسازه.
???? حرف آخر
دوستان عزیزم، در این دوره و زمانه، «سینیور شدن» به تعداد سالهای کاریِ شما ربطی ندارد؛
به میزانِ باری بستگی دارد که میتوانید از روی دوشِ سیستم و مدیرتان بردارید.
لوح بقا در عصر هوش مصنوعی





