گزارش مفتا از نخستین کنفرانس تکنولوژی دیجی کالا
دجی کالا نخستین کنفرانس تکنولوژی خود را در کتابخانه مرکزی تهران برگزار کرد و چندین توسعهدهنده فعال در این شرکت، تجربیات خود را در اختیار جامعه برنامهنویسان گذاشتند. از طرفی، دجی کالا و برنامهنویسانش تلاش میکردند دلایل تصمیمات خود برای ایجاد پلتفرم سوپرنوا و استفاده از ابزارهای متنباز را تشریح کنند. فروشگاه اینترنتی دجی کالا مدتی است که تغییر بزرگی در پلتفرم و زیرساختهای خود ایجاد نموده و زیرساختی را به کمک چند مدیر و توسعهدهنده خارجی برای خود تولید کرده است؛ زیرساختی که نام «سوپرنوا» روی آن گذاشته شده و دجی کالا انتظار دارد این زیرساخت بتواند میزبان ۱۰۰ هزار کسبوکار ایرانی و ۲۰۰ میلیون کاربر در ایران و منطقه باشد. در این کنفرانس، به جای ارائه مدیرعامل و مدیران ارشد، دجی کالا از مدیران فنی و برنامهنویسانش دعوت کرد تا درباره آنچه ساختهاند برای دیگران توضیخ دهند؛ اقدامی که کمتر میتوان آن را در رویدادهای کنونی داخل کشور دید.
«لوکاش لاتو»، معاون مهندسی دجی کالا (نیروی فنی لهستانی) در این رویداد بیشتر از هر چیز، از اهمیت «تیم» و راهبری آن گفت و توصیههایی هم برای توسعهدهندگان داشت. برای مثال او اشاره کرد بهتر است فرد همیشه در مکانی مشغول به کار شود که افراد باتجربهتری از خودش در آن کار میکنند. لاتو، از برنامهنویسان خارجی دجی کالا که نقش موثری در شکلگیری پلتفرم سوپرنوا داشت، به اهمیت «اشتباه کردن» هم اشارهای کرد و گفت: «همه برنامهنویسان روزانه اشتباه میکنند. اشتباه کردن مشکلی ندارد، اما باید از آن درس بگیریم، سریع آن را حل کنیم و اجازه ندهیم تکرار شود.» او بیشتر از هرچیز در ارائه خود، از کار تیمی گفت و راهکارهایی را بیان کرد که یک تیم بتوانند با هم تعامل بهتری داشته باشند: «هیچوقت نگویید این کد میتواند بهتر باشد. بگویید من میتوانم نشان دهم که چطور میتوانیم کد را بهتر بنویسیم.»
از سوی دیگر «امیر حسنی»، برنامهنویس و ارائه دهنده دیگری که در این مراسم صحبت کرد، از سختگیری دجی کالا برای انتخاب تیم اولیه سوپرنوا و ورود به آن گفت. حسنی اشاره کرد که حتی توسعهدهندگان داخلی دجی کالا برای اضافه شدن به این پروژه باید سه مرحله آزمون را طی میکردند تا صلاحیت آنها مشخص شود.
هیراد نیکو درباره تستهای سریع تراکنشهای پیچیده در کنفرانس تکنولوژی دجی کالا سخن گفت.
علیرضا حسین زاده که قبل از ملحق شدن به دجی کالا، تخصصش در front – end – php بود با عنوان “چرا دیجی کالا بر روی open source سرمایه گذاری کرد” بر روی صحنه رفت. همچنین از مزایا و معایب متن باز سخن گفت که عناوین زیر در صحبت های او بیشتر به چشم می آمدند:
– بسیاری از مشکلات متن باز حل شده است و نیازی به اختراع نیست
– تیم های متن باز به سختی تشکیل و به کندی پیش می روند
– متن باز آینده توسعه نرم افزار را رقم خواهد زد.
– محبوب ترین ابزار یک توسعه دهنده گوگل می باشد.
Krasimir Ivanov از بلغارستان با عنوان(چگونه سورس کد را به اشتراک بگذاریم بدون اینکه کانفلیکتی ایجاد بشود) ارائه داد.
فرامرز معینی (مدیر ارشد DevOps دجی کالا : ترفند ایجاد فرهنگ DevOps را با عنوان DevOps zero to hero آموزش داد
آرش شمس(متخصص Devops دجی کالا) با عنوان “چگونه ابزارهای پایدار blue/green deployment را با استفاده از لینوکس کلاسیک و مفاهیم جدید بسازید” بر روی صحنه رفت.
«معصومه کردیان»، توسعه دهنده دجی کالا نیز به شکل خلاصه در پاسخ به این سوال که چرا دجی کالا ORM اختصاصی خودش را نوشته است گفت: «بخش جالب موضوع برای ما این بود که در ORM سوپرنوا همه چیز به شکلی کامل با هم ادغام و بر اساس نیاز دجی کالا طراحی شده است. بسیاری از ORMها سنگین هستند و کار کردن با آنها سخت است؛ ویژگیهایی دارند که نیازی به آنها پیدا نمیکنید. سوپرنوا بهینه است و اجزای آن به بهترین شکل با هم کار میکنند.»
«علیمحمد فروتنزاد»، توسعه دهنده و مهندس نرمافزار در ارائهاش که بیشتر در مورد بیگدیتا بود، از نحوه گزارشگیری در پلتفرم جدید گفت و عنوان کرد که راهکارهای سابق پاسخ نیازهای دجی کالا برای گزارشگیری را نمیداد، چراکه دجی کالا میخواهد تصمیمات کلیدیاش را بر اساس گزارشهای دقیق بگیرد. به گفته او اکنون روندی وجود دارد که رفتار کاربران در یک ماه اخیر ذخیره میشود تا این شرکت بتواند به آنها پیشنهادات مرتبط و بهتری را نمایش دهد.
برخی نکات مهم اشاره شده در این کنفرانس:
• برای داشتن پلتفرم خوب، به تیم خوب نیازه. بقیه چیزا خیلی راحت پیدا میشه
• لوکاش: وقتی تیم فنی از platform راضی باشند قطعا همه راضی خواهند بود. منظورش از نظر سخت گیری در معیارهاست.
• چرا این ابزارها رو انتخاب کردیم؟ elasticsearch MogoDB چون اینا رو بلدیم. به نظرم هم خیلی مهم است که متخصص با ابزاری که باش راحت هست کار کنه.
• دانش عمیق در لینوکس لازم است، بقیه همه ابزار است که تاریخ انقضا دارند
• در این کنفرانس، به جای ارائه مدیرعامل و مدیران ارشد، دجی کالا از مدیران فنی و برنامهنویسانش دعوت کرد تا درباره آنچه ساختهاند برای دیگران توضیخ دهند
• مفهومی به نام Freedome در دجی کالا وجود دارد بدین معنی که در حین کار من هیچی چیزی مانع نخواهد شد. حتی انتخاب ابزار و نحوه کدزنی توسط خود توسعهگر نرمافزار(کدنویس) انتخاب خواهد شد و کسی دخالت نخواهد کرد.
• در توسعه به سبک DevOps کل تیم می بایست به صورت Flat طراحی شوند و هیچ نیرویی با دیگری در تفاوت در سطح نخواهد داشت.
• اگر تکنولوژی وجود داشته باشد که سرعت و دقت را بتواند بالاتر ببرد، می بایست اولین نفری باشیم که از آن استفاده می کنیم.
• در توسعه به سبک DevOps اگر در سازمان، روند توسعه، نحوه اداره شرکت، تغییرات سیستمی یا سازمانی و هر اطلاعات جدید دیگری تغییر بوجود بیاید، تمامی اعضا می بایست از آن اگاه شوند.
• Reactive Automation : در روند جلسات می بایست کسی که ایده را مطرح می کند و کسی که اجرا می کند کاملا پایبند به انجام آن از همان لحظه ارائه ایده باشند و تعیین زمان برای اجرای آن نکنند.
• در سوپرنوا کسی حق join زدن ندارد و می بایست راه حل متفاوتی برای این امر پیدا کند.