Agile بهترین روش مدیریت منابع انسانی (برنامه نویس ها)
اگر کتاب های مدیریت پروژه را مطالعه فرموده باشید و یا در زمینه مدیریت پروژه فعال باشید حتما با این قضیه آشنا هستید که اصلی ترین رکن هر پروژه نیروی انسانی آن پروژه می باشد . به عبارتی این منابع انسانی پروژه می باشند که مهر موفقیت و یا شکست پروژه را می زنند پس یکی از دغدغه های اصلی مدیران پروژه مدیریت منابع انسانی می باشد . مدیریت منابع انسانی در پروژه های توسعه نرم افزار یکی از سخت ترین کارهای مدیر پروژه می باشد.
چرا مدیریت منابع انسانی پروژه های توسعه نرم افزار مشکل تر است ؟
به این دلیل که نرم افزار تولید نمی شود بلکه توسعه داده می شود و این توسعه کلید این معما است. اگر دقت کرده باشید در همه کتاب های مرجع و اصلی به جای واژه Production از Development استفاده شده است که کاملا درست است . البته اینکه نرم افزار قابلیت تولید ندارد بسیار خوب است چرا که اگر اینگونه نبود همه ما باید به دنبال شغلی غیر از توسعه نرم افزار می گشتیم زیراکه شرکت جاه طلبی مانند مایکروسافت همانند شرکت های تولید خودرو خط تولید راه مینداخت و همه را از کار بیکار می کرد بدلیل اینکه هر چه که مشتری درخواست میکرد می توانست با اضافه کردن یک خط تولید جدید تولید و عرضه نماید.
فرق توسعه و تولید را با بیان یک مسئله توضیح می دهم . فرض کنید یک فست فود داریم که در آن غذای آماده برای ملت سرو می شود . خوب این فست فود تولید است بدلیل اینکه شما یک سری آدم که نیاز نیست متخصص باشند را به عنوان یک ماشین تولید دور هم جمع کردید و این ماشین تولید می کند . این ماشین تولید دارای خصوصیات زیر می باشد :
- این ماشین خطایی در تولید ندارد (در ساخت ساندویچ همبرگر error ای وجود ندارد) .
- شما به افرادی که متشکل دهنده ماشین تولید هستند به عنوان یک چرخه دنده نگاه می کنید که هر وقت لازم شد می توانید عوضش کنید و یک چرخ دنده بهتر بگیرید .
- کاری که این ماشین و یا یک ساندویچ درست کن انجام می دهد یکنواخت و پایدار است (مثلا معلوم است محمود یک ساندویچ همبرگر را در عرض ۲ دقیقه به خورد مشتری می دهد ) .
- رویه کاریشان استاندارد است ( مثلا معلوم است برای تولید پیتزای قارچ به چه موادی نیاز است و چگونه باید این مواد با هم مخلوط و پخته شود).
- نیازی به تست نیست (ساندویچ رو اگر تست بکنید مشتری ناراحت خواهد شد ) .
ولی در توسعه نرم افزار ما به هیچ وجه چنین خصوصیاتی نداریم . اعضای تیم ما حتما باید متخصص امور توسعه نرم افزار باشند . در توسعه می توان خطاهای مهلکی داشت به نحوی که کل پروژه Fail شود . اعضای تیم توسعه به آسانی و همیشه قابل تعویض نیستند . کاری که انجام می دهند همیشه یکنواخت و پایدار نیست . رویه کاری استانداری که بتوان برای همه توسعه گران نرم افزار پیچید وجود ندارد و باید نسبت به اقتضای پروژه و محصول کار شود . ۱۰۰% محصول و یا برآیند پروژه باید تست شود .
با مقایسه بین تولید و توسعه می توان به اهمیت نیروی کار پی برد . در چنین شرایطی که نیروی کار بسیار مهم می باشد و در واقع کل پروژه نیروی کار است آیا نیاز به مدیریت صحیح بر روی این منبع احساس نمی شود؟
شرکت های توسعه نرم افزار در ایران معمولا و اکثرا در مقوله مدیریت منابع انسانی با مشکل مواجه هستند. به همین دلیل است که اکثر برنامه نویس ها در محیط کاری خود احساس راحتی نمی کنند و همیشه عذاب می کشند و اکثرا فکر می کنند که در حال حیف شدن می باشند و باید در شرکت هایی مثل گوگل و یا مایکروسافت کار کنند .
دلیل اینکه برنامه نویس در محیط کار احساس راحتی نمی کند بدلیل مدیریت اشتباه می باشد . مدیریت جوی را درست می نماید که برنامه نویس در آن جو نمی تواند نفس بکشد و همیشه دوست دارد در جای دیگری جز آنجا کار کند . به نظر من مدیران باید به قول مدیران آمریکایی به نیروی انسانی کلک بزنند (کلک به منزله ترغیب به کار است و نه چیز دیگر) . کلک به این صورت که کاری بکنیم نیروی کار علاقه مند به پروژه بشود . گفتم به پروژه و نه برنامه نویسی به این دلیل که خوشبختانه اکثر برنامه نویس های ما به برنامه نویسی علاقه شدیدی دارند ولی متاسفانه به خود پروژه و یا محصول علاقه چندانی ندارند . برنامه نویس کاری ندارد که پروژه به کجا میرود آیا Fail می شود یا نه ؟ آیا پروژه سر وقت تمام می شود یا نه ؟ و این خیلی بد است که برنامه نویس فقط می خواهد رفع تکلیف کند .
برای اینکه بتوانیم برنامه نویس ها را از حالت رفع تکلیف خارج نماییم باید انگیزه و علاقه در آنها به وجود بیاوریم . شاید بعضی از مدیران فکر می کنند انگیزه فقط با حقوق بیشتر به وجود می آید ! بلی این مورد هم بی تاثیر نیست ولی اگر یک شرکت به برنامه نویس شما ۱۰ هزار تومان هم بیشتر بدهد او خواهد رفت . پس یک انگیزه دهنده قویتر و بهتر نیاز است . به نظر بنده مهم ترین انگیزه درگیر کردن برنامه نویس به کل پروژه و ایجاد جو دوستانه (و نه ارباب رعیتی ) بین برنامه نویسان و مدیران است . به نظر شما چگونه می توان برنامه نویس ها را درگیر کل پروژه کرد به صورتکی که خودشان را مسئول بدانند ؟
بلی با رجوع به عنوان مقاله حتما خواهید توانست به این سوال پاسخ دهید . Agile به ما کمک خواهد کرد که انگیزه لازم را در تیم توسعه ایجاد نماییم . همانطور که در مقالات در مورد اسکرام عرض کرده ام و بر آن تاکید کرده ام در همه جلسات اسکرام باید تمام اعضای تیم توسعه حضور داشته باشند و هیچ کس شهروند درجه دوم نیست و همه برای ما یک سوپر من هستند .
ما در Sprint Planning کل تیم را درگیر پروژه می کنیم چراکه همه نظر می دهند که Story A چند روز کار می برد و این یعنی همه درگیر Story A هستند در حالیکه شاید یک نفر Story A را انجام خواهد داد. در نوبت بعدی بر روی Daily Scrum تاکید کردم که این جلسه در نوع خود یک انگیزه دهنده ناب می باشد .
در روش سنتی اول صبح هیچ کس حوصله ندارد و به محض رسیدن پشت کامپیوتر مستقر می شود و شروع به تق و توق می کند , انگار همه با هم قهرند . ولی در اسکرام اینگونه نیست , در اول صبح قبل از شروع به تق و توق تیم توسعه جلسه روزانه اسکرام را تشکیل می دهد. این جلسه که معمولا با بگو و بخند همراه است باعث می شود تیم روز را به صورت Active شروع نماید.
مورد دیگر Self-Organize بودن تمام متدلوژی های Agile مانند اسکرام می باشد . به طوریکه نیاز به سازماندهی آنچنانی اعضای تیم توسعه نیست و اعضای تیم بدلیل آشنایی با کل پروژه و شناخت کافی از نیازمندی های پروژه سازماندهی می شوند. و این هم می تواند باز در انگیزه بخشیدن به نیروی کار موثر باشد.
خلاصه تمام مطالب اینکه Agile می تواند یک جو دوستانه و از همه مهمتر یک جو فعالانه (جوی که همه فعالند و نتیجه پروژه برای همه اعضای تیم مهم است ) برای پروژه های توسعه نرم افزار به ارمغان بیاورد.
یاشیاسیز
برچسب:Agile, HR, چابک, مدیریت پروژه, مدیریت منابع انسانی
21 نظر
تشکر : به خاطر مطالب مفیدتون با رویکرد مهندسی نرم افزار
من تازه توی چنین محیطی قرار گرفته ام.
سلام
ممنون از اینکه مقالاتی در مورد اسکرام و اجایل می نویسید یا ارائه می دهید
من تقریباً اکثر مقالات شما را در این وبلاگ خوانده ام و از خواندن اکثر آنها لذت برده ام (سعی کرده ام در زمینه شغلی خودم به کار گیرم ) منتظر مقالات جدید شما در زمینه مهندسی نرم افزار (توسعه نرم افزار به شیوه اسکرام و اجایل ) هستم
هنوز نخوندم ولی میدونم مثل همیشه عالیه
خواهش میکنم بیشتر در مورد محصولات موفق و کسب درآمد از برنامه نویسی بنویسید
سلام آقای حسین , شما همیشه بنده را با نظرهای خودتون مورد لطف قرار داده اید .
در مورد در خواستتون عرض کنم که بنده هم همین قصد رو دارم و تمام تلاشم در سمت و سوی توسعه و توسعه گران است و نه در جهت روش. هه ما مطلع می باشیم که بیشتر وبلاگ های مهندسی نرم افزار و برنامه نویسی فقط روش های توسعه سطحی که معمولا در ایران سازگار نیستند رو نشون می دهند ولی کسی راهی نشون نمی دهد که چگونه بهتر توسعه بدهیم , چگونه راحتتر توسعه بدهیم , چگونه مدیریت کنیم , چگونه بفروشیم و … . البته من هم ادعا نمی کنم که توانسته ام چنین کاری بکنم ولی حداقل سعی ای در این وادی کرده ام .
خواسته شما را هم اجابت و سعی خواهم کرد بعد از این بیشتر و بهتر به این مقوله بپردازم.
موفق باشید
ما دو تا روش جدید هم اختراع کردیم به اسم های Fast Agile++ و Remote Agile . فکر کنم اسمشون خودش رو نشون میده!!
بسیار عالی آقای میثم , یادم میآد شما یه بار در یک کامنتی از Agile انتقاد کرده بودید . خوشحالم که در راه Agile یک چیزهایی رو هم اختراع کردید . می تونم شرح اختراعتتون رو بدونم تا اگر خوب بود و واقعا یک نوع آوری بود به دوستان دیگر هم معرفی کنیم تا آنها هم مورد استفاده قرار بدهند.
گروه شرکتهای رایان نظم جهت پست مدیر ارشد منابع انسانی ، استخدام می نماید.از متقاضیان تقاضا می شود رزومه خود را به آدرس ایمیل [email protected] ارسال نمایید.پس از مطالعه جلسه مصاحبه حضوری تعیین می شود.
وضایف پست مدیر منابع انسانی:
۱- توانایی طراحی نظام جبران خدمت مدیران
۲- توانایی طراحی نظام پاداش
۳- توانایی طراحی نظام های انگیزشی
۴- توانایی طراحی و اداره ی نظام های مشارکت کارکنان در سود
۵- توانایی طراحی و مدیریت بر برنامه های تأمین سلامت و رفاه کارکنان
۶- توانایی همراستا سازی استراتژیک برنامه های جبران خدمت با سود و عملکرد مالی شرکت
۷- توانایی تحلیل هزینه
۸- داشتن مهارت های ارائه مطلب، ارتباطات و تحلیل در سطح عالی
۹- داشتن مهارت های پیشرفته ی کامپیوتری در بکارگیری نرم افزارهای مرتبط
۱۰- داشتن مهارت های نیرومند در تفکر و برنامه ریزی استراتژیک
۱۱- طراحی و اجرای مکانیزم های توسعه ی شغل به ویژه شامل مربی گری فردی، آموزش رسمی وE- Learning
۱۲- نیاز سنجی، طراحی و اجرای دوره های آموزشی
۱۳- آشنایی و توانایی به کارگیری ابزارهای ارزیابی عملکرد (مثل بازخور ۳۶۰ درجه)
۱۴- تخصص در طراحی، توسعه، اجرا و مدیریت بر ابتکارات مربوط به بهبود عملکرد، ارزیابی، توسعه رهبری و برنامه ریزی جانشین پروری
۱۵- توانایی ایجاد و حفظ هم رأیی، اتفاق نظر و ارتباطات مستحکم در سازمان
۱۶- توانایی برقراری روابط مؤثر با دانشگاهیان، مشاوران و رهبران فکری
۱۷- داشتن تجربه در مورد سازماندهی و ساختار سازمانی
۱۸- توانایی ارایه ی مشاوره برای بهبود عملکرد داخلی سازمان
۱۹- تجربه در آموزش دهی
۲۰- تجربه در متدولوژی ها و تکنولوژی های آموزشی
۲۱- توانایی طراحی و اجرای طرح های نظرسنجی از کارکنان
۲۲- توانایی طراحی و توسعه نظام های پیشنهادهای کارکنان
۲۳- داشتن مهارت های سطح بالا در ارتباطات شفاهی و ارتباطات کتبی
۲۴- آشنایی با سیستم های اطلاعاتی کامپیوتری منابع انسانی
۲۵- داشتن روحیه و رویکردی قوی برای ارایه ی خدمت
عالی بود …
واقعا استفاده کردم
ممنون
انشاا… باز هم مطالب مفیدتون را برامون بنویسید
باسلام من مطالبی درمورد ویژگیها و معایب و مزایای متدولوژهای LDو kanban نیاز دارم آیا می توانید در اختیار من بگذارید . باتشکر
چوخ یاشا
با سلام و احترام
ممنون از مقاله خوب شما
خواستم اگر مقاله ای در خصوص به کارگیری اسکرام در آموزش، تولید محتوا و بخش پشتیبانی دارید معرفی نمایید .
با تشکر