بعد از حدود 53 اسپرینت که در خدمت تیم رسمیو بودم، امروز یه جلسه رترو واقعی داشتیم و خستگی از تنم درومد، قسمت خوبش اینه که من راهنمایی کرده بودم، ولی هیچ فشار و پافشاری روی این پارامتری که میخواستم نگذاشتم و خود تیم به بلوغ رسید و آپگرید شد.
لذت میبرم از رشد تیم. خستگی خیلی از سال ها از تنم درومد امروز.
لذت میبرم از رشد تیم. خستگی خیلی از سال ها از تنم درومد امروز.
❤17👍4🔥4
Forwarded from iCodeNext
🍽️ Dogfooding
🌀اصطلاح Dogfooding مخفف عبارت "Eating your own dog food" هست، که به معنای استفاده از محصولاتیه که خودت تولید کردی. برای توسعهدهندگان نرمافزار، این یعنی کار کردن با برنامههایی که خودشون ساختن، اونم بهعنوان یک کاربر واقعی؛ یا حداقل همکاری نزدیک با کسانی که از اون نرمافزار دارن استفاده میکنن.
🧶 البته dogfooding فقط این نیست که از محصول خودت استفاده کنی؛ بلکه به این معنیه که از نسخههای اولیه و آزمایشی محصولاتت هم استفاده سنگین و پیشرفته تری داشته باشی، تا فیدبک مفیدتری برای بهبود محصولت بدی.
خیلی از شرکتها به کارمندانشون دسترسی زودهنگام به نسخههای جدید یا نمونههای اولیه سختافزاری و نرم افزاری میدن برای تست که دقیقاً نشون دهنده همین موضوع هست.
😀 از نظر فنی، وقتی توسعهدهندهها از نرمافزاری که خودشون ساختن استفاده میکنن، مستقیماً با تجربهی کاربری نرمافزارشون روبرو میشن. این تجربه خیلی وقتها برای بار اول کاملاً عجیبه و باعث میشه بپرسیم که خداییش چرا این داره اینطوری کار میکنه یا وقتی میخوای اون کارو انجام بدیم چرا باید کلی چرخ بزنیم تا بهش برسیم.
ادامه در کامنت👇👇
🌀اصطلاح Dogfooding مخفف عبارت "Eating your own dog food" هست، که به معنای استفاده از محصولاتیه که خودت تولید کردی. برای توسعهدهندگان نرمافزار، این یعنی کار کردن با برنامههایی که خودشون ساختن، اونم بهعنوان یک کاربر واقعی؛ یا حداقل همکاری نزدیک با کسانی که از اون نرمافزار دارن استفاده میکنن.
🧶 البته dogfooding فقط این نیست که از محصول خودت استفاده کنی؛ بلکه به این معنیه که از نسخههای اولیه و آزمایشی محصولاتت هم استفاده سنگین و پیشرفته تری داشته باشی، تا فیدبک مفیدتری برای بهبود محصولت بدی.
خیلی از شرکتها به کارمندانشون دسترسی زودهنگام به نسخههای جدید یا نمونههای اولیه سختافزاری و نرم افزاری میدن برای تست که دقیقاً نشون دهنده همین موضوع هست.
😀 از نظر فنی، وقتی توسعهدهندهها از نرمافزاری که خودشون ساختن استفاده میکنن، مستقیماً با تجربهی کاربری نرمافزارشون روبرو میشن. این تجربه خیلی وقتها برای بار اول کاملاً عجیبه و باعث میشه بپرسیم که خداییش چرا این داره اینطوری کار میکنه یا وقتی میخوای اون کارو انجام بدیم چرا باید کلی چرخ بزنیم تا بهش برسیم.
ادامه در کامنت👇👇
👍7
Forwarded from Code With HSN
Media is too big
VIEW IN TELEGRAM
معرفی Roadmap تست نرمافزار با QA Lead اکالا برای دولوپر ها 🚀
اگر نمیدونید چطوری تست نرمافزار را به صورت اصولی و حرفهای یاد بگیرید؛ این ویدئوی آموزشی، در قسمت اول راهنمای جامع و کاربردی از صفر تا صد تست نرمافزار میخواهد بیان کند که توسط من و علی حاجی خالویی تهیه شده است.
🔥 چرا این ویدئو را ببینیم؟
⬅️ آشنایی با مفاهیم کلیدی مثل Black Box vs White Box Testing
⬅️ یادگیری طراحی تستهای مؤثر با روشهای مختلف Test Design
⬅️ معرفی الگوهای تستنویسی مثل AAA Pattern و Four Phase Pattern
⬅️ مقایسه رویکردهای توسعه (TDD, BDD, TLD) و کاربرد هرکدام
⬅️ نحوه Mock کردن سرویسها و تست متدهای Internal
⬅️ دیتابیس های فیک و استفاده از Mock Server برای تست یکپارچگی
قسمت اول
لینک ویدئو: https://youtu.be/10SKSmI7nV0
اگر نمیدونید چطوری تست نرمافزار را به صورت اصولی و حرفهای یاد بگیرید؛ این ویدئوی آموزشی، در قسمت اول راهنمای جامع و کاربردی از صفر تا صد تست نرمافزار میخواهد بیان کند که توسط من و علی حاجی خالویی تهیه شده است.
🔥 چرا این ویدئو را ببینیم؟
⬅️ آشنایی با مفاهیم کلیدی مثل Black Box vs White Box Testing
⬅️ یادگیری طراحی تستهای مؤثر با روشهای مختلف Test Design
⬅️ معرفی الگوهای تستنویسی مثل AAA Pattern و Four Phase Pattern
⬅️ مقایسه رویکردهای توسعه (TDD, BDD, TLD) و کاربرد هرکدام
⬅️ نحوه Mock کردن سرویسها و تست متدهای Internal
⬅️ دیتابیس های فیک و استفاده از Mock Server برای تست یکپارچگی
قسمت اول
لینک ویدئو: https://youtu.be/10SKSmI7nV0
😍2
Forwarded from Dev Dastan
➖➖➖➖➖➖
➖➖➖➖➖➖
#AI #LLM #MCP
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
یه رزومه ناب پیدا کردم از سال ۲۰۱۲ 😂
حس میکردم خیلی خفنم 😂😂😂
حس میکردم خیلی خفنم 😂😂😂
🤣12👍3❤1👎1🔥1
به نظرم واقعا Vibe Coding عالیه!
اما نه برای ساخت یک محصول برای پروداکشن، بلکه برای تست و تمرین به نظرم خیلی کمک کننده ست.
فرض کنید نشستید کنار یک نوجوان باهوش که چند تا کتاب خونده و کد بیس دیده، ولی هنوز فراموشکار و کم دقته، بهش تسک میدین و نتیجه هر تسک رو بررسی میکنید و مدام تلاشتون اینه که روی یک خط نگهش دارین.
تجربه این چند وقت تست و تمرین من اینو نشون داد که خیلی از نکات که موقع کد زدن خودمون ممکنه فراموش کنیم رو اینجا یادمون میاد و منطقا ارزشمنده این یادآوری و تلاش برای حل مشکلات.
اما نه برای ساخت یک محصول برای پروداکشن، بلکه برای تست و تمرین به نظرم خیلی کمک کننده ست.
فرض کنید نشستید کنار یک نوجوان باهوش که چند تا کتاب خونده و کد بیس دیده، ولی هنوز فراموشکار و کم دقته، بهش تسک میدین و نتیجه هر تسک رو بررسی میکنید و مدام تلاشتون اینه که روی یک خط نگهش دارین.
تجربه این چند وقت تست و تمرین من اینو نشون داد که خیلی از نکات که موقع کد زدن خودمون ممکنه فراموش کنیم رو اینجا یادمون میاد و منطقا ارزشمنده این یادآوری و تلاش برای حل مشکلات.
👍5
Forwarded from tech-afternoon (Amin Mesbahi)
Please open Telegram to view this post
VIEW IN TELEGRAM
Google
Real-time meetings by Google. Using your browser, share your video, desktop, and presentations with teammates and customers.
tech-afternoon
بعضی از شما واقعا نمیدونید ارزش هر دقیقه صحبت امین مصباحی چقدر میتونه باشه در مسیر شغلی تون، حتما هم کانالشون رو عضو باشید و فرصت شنیدن نظراتشون رو از دست ندین، واقعا حیفه که از دست بدین این فرصت ها رو ...
https://t.me/techafternoon
https://t.me/techafternoon
Telegram
tech-afternoon
مطالب تِکافترنون حول AI، معماری و توسعه نرمافزار؛ و موضوعات مرتبط با تکنیکال لیدرشیپ است.
https://mesbahi.net/fa/
youtube.com/@AminTechTalks/videos
امین مصباحی
https://mesbahi.net/fa/
youtube.com/@AminTechTalks/videos
امین مصباحی
🔥4👍2👎1
: داری چیکار میکنی ؟
- با سندروم ایمپاسترم کشتی میگیرم، نفسشو بریدم :)) ولی ممکنه دوباره کامبک بزنه :))
- با سندروم ایمپاسترم کشتی میگیرم، نفسشو بریدم :)) ولی ممکنه دوباره کامبک بزنه :))
👍8🤣5🔥1
Forwarded from tech-afternoon (Amin Mesbahi)
📝 روشهایی برای اولویتبندی نیازمندیها
وقتی یه تیم محصول یا توسعه تصمیم میگیره یه چیزی بسازه یا بهبود بده، معمولاً با کلی پیشنهاد و نیازمندی (requirement) مواجه میشه: از باگهای کوچیک گرفته تا فیچرهای کوچیک و بزرگ.
ولی واقعیت اینه که زمان، نیرو و بودجه محدوده (منابع محدود، در مقایسه با نیازهای نامحدود!). پس مهمه بدونیم چی رو باید اول انجام بدیم، چی رو میتونیم بذاریم برای بعد، و چی رو فعلاً انجام ندیم.
اینجاست که تکنیکهای اولویتبندی میان وسط. اینا ابزارهایی هستن که کمک میکنن:
*️⃣ خواستههای کاربر، کسبوکار و تیم توسعه رو دستهبندی کنیم.
*️⃣ تصمیمهای درستتری بگیریم.
*️⃣ روی چیزهایی تمرکز کنیم که بیشترین تأثیر رو دارن.
دو تا روش محبوب رو اینجا معرفی میکنم که میتونن کمک کنن. Kano Model و MoSCoW
🔍 مدل اول: Kano – وقتی رضایت کاربر مهمه
مدل Kano از اسم یه پروفسور ژاپنی به اسم «نوریآکی کانو» الهام گرفته شده. ایده اصلی اینه که همه فیچرها تأثیر یکسانی روی رضایت کاربر ندارن. بعضیاشون اگه نباشن، کاربر عصبانی میشه. بعضیا اگه باشن، خیلی خوشحال میشه. بعضیا هم بودن یا نبودنش براش فرقی نداره! (کاربر رو ذینفع (stakeholder) هم تعبیر میکنیم)
دستهبندی ویژگیها توی Kano:
*️⃣ گروه Basic Needs (Must-be): چیزایی که انتظار میره حتماً باشن. نبودش فاجعهست ولی بودنش کسی رو شگفتزده نمیکنه.
*️⃣ گروه Performance Needs: هرچی بهترش کنی، رضایت بیشتر میشه (مثلاً سرعت سایت یا دقت جستجو).
*️⃣ گروه Excitement Needs (Delighters): قابلیتهایی که کاربر انتظار نداره، ولی وقتی میبینه خوشحال میشه. (مثل auto-save هوشمند یا تم تیره پیشفرض)
*️⃣ گروه Indifferent: بودن یا نبودنش خیلی فرقی نمیکنه.
*️⃣ گروه Reverse: بعضیا ممکنه یه فیچر رو نخوان!
🔧 کاربرد: این مدل خیلی برای مصاحبه با کاربر و طراحی تجربه کاربری خوبه. کمک میکنه روی فیچرهایی تمرکز کنی که "دل کاربر رو میبره"، نه فقط اونایی که لازمه.
——————————————————-
📦 مدل دوم: MoSCoW – برای اولویتبندی سریع و پروژهمحور
اشتباه نشه؛ MoSCoW یه مخففه و ربطی به شهر مسکو نداره! 😄:
*️⃣ گروه Must have: اگه اینا نباشن، محصول کار نمیکنه.
*️⃣ گروه Should have: مهمن، ولی میتونن تاخیر بخورن.
*️⃣ گروه Could have: اگه وقت شد اضافهشون میکنیم.
*️⃣ گروه Won’t have (this time): الان انجامش نمیدیم، شاید بعداً.
🔧 کاربرد: MoSCoW بیشتر توی مدیریت پروژه و جلسههای برنامهریزی اسپرینت استفاده میشه. وقتی میخوای با تیم تصمیم بگیری که توی این بازه زمانی رو چی تمرکز کنید.
🧠 اگه خواستی بیشتر بدونی...
اولا هر کاری رو اگر «روشمند» یعنی بر اساس یک مدل بریم جلو، ولو کارهایی که بدیهی به نظر میان، عموما شانس موفقیت بالاتری داریم.
دوما، فقط این دو تا نیست؛ اگه دوست داری مدلهای بیشتری رو بررسی کنی یا روشهای دیگهای برای تصمیمگیری داشته باشی، اینا هم ارزش وقت گذاشتن دارن:
💬 شما از چه روشی برای اولویت دادن به نیازها و کارها استفاده میکنی؟
جلسه «مرور مهارتهای مورد نیاز و مسیر رسیدن به مهندس ارشد نرمافزار» رو بر اساس چرخه توسعه نرمافزار (SDLC) طرح کردم، و بخش اولش «نیازمندیها و تحلیل (Requirements & Analysis)» بود. چون از روشهای MoSCoW و Kano Model برای اولویتبندی نیازمندیها (Prioritization Techniques) اسم بردم، گفتم شاید بد نباشه برای دوستانی که آشنایی ندارن، کمی توضیح بدم.
وقتی یه تیم محصول یا توسعه تصمیم میگیره یه چیزی بسازه یا بهبود بده، معمولاً با کلی پیشنهاد و نیازمندی (requirement) مواجه میشه: از باگهای کوچیک گرفته تا فیچرهای کوچیک و بزرگ.
ولی واقعیت اینه که زمان، نیرو و بودجه محدوده (منابع محدود، در مقایسه با نیازهای نامحدود!). پس مهمه بدونیم چی رو باید اول انجام بدیم، چی رو میتونیم بذاریم برای بعد، و چی رو فعلاً انجام ندیم.
اینجاست که تکنیکهای اولویتبندی میان وسط. اینا ابزارهایی هستن که کمک میکنن:
دو تا روش محبوب رو اینجا معرفی میکنم که میتونن کمک کنن. Kano Model و MoSCoW
🔍 مدل اول: Kano – وقتی رضایت کاربر مهمه
مدل Kano از اسم یه پروفسور ژاپنی به اسم «نوریآکی کانو» الهام گرفته شده. ایده اصلی اینه که همه فیچرها تأثیر یکسانی روی رضایت کاربر ندارن. بعضیاشون اگه نباشن، کاربر عصبانی میشه. بعضیا اگه باشن، خیلی خوشحال میشه. بعضیا هم بودن یا نبودنش براش فرقی نداره! (کاربر رو ذینفع (stakeholder) هم تعبیر میکنیم)
دستهبندی ویژگیها توی Kano:
🔧 کاربرد: این مدل خیلی برای مصاحبه با کاربر و طراحی تجربه کاربری خوبه. کمک میکنه روی فیچرهایی تمرکز کنی که "دل کاربر رو میبره"، نه فقط اونایی که لازمه.
——————————————————-
📦 مدل دوم: MoSCoW – برای اولویتبندی سریع و پروژهمحور
اشتباه نشه؛ MoSCoW یه مخففه و ربطی به شهر مسکو نداره! 😄:
🔧 کاربرد: MoSCoW بیشتر توی مدیریت پروژه و جلسههای برنامهریزی اسپرینت استفاده میشه. وقتی میخوای با تیم تصمیم بگیری که توی این بازه زمانی رو چی تمرکز کنید.
🧠 اگه خواستی بیشتر بدونی...
اولا هر کاری رو اگر «روشمند» یعنی بر اساس یک مدل بریم جلو، ولو کارهایی که بدیهی به نظر میان، عموما شانس موفقیت بالاتری داریم.
دوما، فقط این دو تا نیست؛ اگه دوست داری مدلهای بیشتری رو بررسی کنی یا روشهای دیگهای برای تصمیمگیری داشته باشی، اینا هم ارزش وقت گذاشتن دارن:
روش RICE Scoring – برای اولویتبندی عددی و دادهمحور
روش WSJF – مخصوص تیمهای اجایل و SAFe
روش Opportunity Scoring – مبتنی بر نیازهای پنهان کاربر
روش Feature Buckets – دستهبندی فیچرها براساس تأثیر و استراتژی
روش Eisenhower Matrix – ساده ولی کاربردی برای تصمیمگیریهای روزمره
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5