پادیوم اوایل اسفند ماه بعد از اتمام ششمین دوره از نمایشگاه الکام استارز، جوایز ویژهای را به منتخبین اهدا کرد. این پلتفرم به عنوان حامی رویداد دو جایزه به ارزش هشتاد میلیون ریال به استارتاپهای «راورو» و خشکشویی آنلاین «پاکلین» اهدا کرد.
به گزارش واحد خبر دفتر ارتباطات یکپارچه پاد (IC) اهالی تیم پادیوم گفتگویی با همبنیانگذاران استارتاپ پاکلین (مجید صادقی و فاطمه نگاری) داشتهاند و پیرامون API و نقش کاربردی آن در توسعه استارتاپها و حل پیچیدگیهای فنی داشتهاند که در ادامه مصاحبه مورد بحث را مرور میکنیم.
اولین بار چه زمانی به استفاده از API ها نیاز پیدا کردید؟ کمی از گذشته بگویید.
مجید صادقی: اولین API مورد استفاده هر استارتاپ قطعا درگاه پرداخت است. هر استارتاپ اینجا نیازمند استفاده از API ها است، چرا که هر خدمتی که ارائه دهید، باید پول آن را به صورت آنلاین از مشتری بگیرید. اما اگر این سوال را در نگاه کلانتری پاسخ دهم، باید برگردم به زمانی که در حوزه رباتیک فعالیت داشتم.
ما سامانههایی متشکل از چندین ربات داشتیم که باید اطلاعات محیط را دریافت میکردند، با یکدیگر حرف میزدند و با هم «تصمیم» میگرفتند و یک سیستم Multi-Agent را با هم تشکیل میدادند. آنجا برای ارتباط این رباتها با یکدیگر، ما از API استفاده کردیم.
وقتی وارد حوزه کسبوکار شدیم، پروژههای متعددی انجام دادیم که در هر یک از آنها به نحوی از API ها استفاده میشد. مدتی در حوزه استریمینگ و ویدئو کنفرانس در سطح ملی فعال بودیم. پس از آن، پروژههایی در حوزه پزشکی-از-دور داشتیم. کیوسکهایی ایجاد کردیم که اطلاعات فرد را دریافت میکرد و در اختیار پزشک قرار میداد و معاینه از دور انجام میشود.
راه اندازی استارتاپی در زمینه تاکسی آنلاین، پیش از شکلگیری اسنپ و تپسی و… تقریبا اولین تجربه استارتاپی ما بود که در آن زمان مشکل اساسی ما نه فنی، بلکه تأمین مالی بود.
چرا که در سالهای ابتدایی دهه ۹۰ ، هنوز اکوسیستم استارتاپی بلوغ کافی نداشت و تأمین مالی بسیار دشوار بود. پس با دیدن نشانههای شکست کسب و کار، آن را متوقف کردیم.
پس از آن، یک سرویس ذخیره سازی ابری ایجاد کردیم، که شاید بازار ایران در آن زمان هنوز پذیرش کافی برای آن نداشت و متوقف شد. در این استارتاپ با خانم نگاری همکار بودیم. و بعد وارد خشکشویی آنلاین شدیم.
از وقتی پاکلین را کلید زدیم، کفش آهنی به پا کردیم و گفتیم هر چالشی که باشد، برطرف میکنیم! از بازار بازخورد میگیریم، خود را اصلاح میکنیم و به پیش میرویم.
در حال حاضر تیم پاکلین چند نفر است؟ با چه ترکیبی کار میکنید؟
فاطمه نگاری: در حال حاضر ما تیمهای مختلفی نظیر تیم فنی، عملیات و پشتیبانی، بازاریابی و فروش داریم که نزدیک به ۲۵ نفر در این واحد ها به فعالیت مشغول هستند ولی فقط ۳ نفر در تیم عملیات فعالیت دارند.
بسیار عالی! چطور تیم عملیات اینقدر کوچک است؟
فاطمه نگاری: این ترکیب، حاصل نگاه پاکلین است. ما نگاهمان این نیست که پلتفرم را با نیروی انسانی گسترش بدهیم. ما ارزش آفرینی خود را در اتوماسیون و هوشمندسازی میبینیم. پس ترجیح میدهیم هر فرآیندی را خودکار کنیم و حداقل دخالت نیروی انسانی در عملیات را داشته باشیم.
با توجه به این گذشته پر تجربه و این ترکیب خاص نیروی انسانی، پاکلین قطعاً معماری فنی متفاوتی دارد. چه چیزی این معماری را متمایز میکند؟
مجید صادقی: معماری ما اساسا بر مبنای میکروسرویس است و با تکیه بر تجربههای که در بحث سیستمهای توزیع شده داشتیم، در حال حاضر از چارچوب بسیار پیشرفت های استفاده میکنیم. تمام زیرسیستمهای ما از طریق API و در ESB با یکدیگر در تماس هستند. ما جمعا ۱۸ زیرسیستم داریم در بخشهای پشتیبانی، لجستیک، بازاریابی، اپلیکیشن های سمت کاربران خشکشویی، راننده، مشتریان و… که همگی از طریق API با یکدیگر در ارتباط هستند.
علاوه بر این موارد، سیستمهای پرداخت متفاوتی که برای مشتریان سازمانی در نظر گرفتهایم. مثلا اگر نقطه ورود مشتری، از یک سازمان طرف قرارداد باشد، اصلا پرداخت هزینه ندارد. یا مثلا اگر از طرف یکی از بانکهای طرف قرارداد به ما مراجعه کند، فقط درگاه همان بانک برای وی به نمایش در میآید.
با توجه به قراردادهای سازمانی پاکلین، یک زیرساخت پویا برای جریانهای کاری متفاوت (Workflow Engine) ایجاد کردیم که در آن بخشهای مختلف کل سامانه مانند کدگذاری سفارش، ارسال پیامک در وضعیتهای مختلف و… قابل بازتعریف هستند.
یک سوال ناشیانه غیرفنی بپرسیم! برای همه اینها چند API تعریف شده؟
مجید صادقی: خیلی! نزدیک نیم کیلو! فارغ از شوخی، ما در برنامه نویسی یک مفهومی داریم به نام KLOC که مخفف عبارت «هزار خط کد» است. ما صدها و هزاران خط برنامه نوشتهایم. این است که میگویم یک چندصد گرمی API داریم!
خانم نگاری، از اثر API ها در مدیریت ظرفیت برایمان بگویید. آثار عملیاتی استفاده از API برای شما چیست؟
فاطمه نگاری: یکی از نقاط قوت ما، توان فنی آقای صادقی و علاقه و تخصص ایشان در حوزه اتوماسیون است. ما در دو سمت پلتفرم از API ها استفاده میکنیم.
در سمت تأمین، یکی از چالشهای مهم ما، مدیریت ظرفیت در مواقعی است که کمپین اجرا میکنیم. مثلا ما یک کمپین «جمعه پاک» یا «کلین فرایدی» داشتیم. در این کمپین گفتیم یک روز ثبت سفارش برای کل تهران رایگان باشد. هرچند ظرفیت خشکشوییها و لجستیک را با با تنظیم پنجرههای زمانی پیکاپ، مدیریت کردیم، اما باز هم در سمت لجستیک، واقعا شبکه حمل و نقل ما فشار زیادی را تحمل میکرد.
برای چنین مواقعی، با شرکتهای حمل و نقلی مانند میاره و الوپیک همکاری کردیم. ما زیرساخت خود را از طریق API به این سرویسها متصل کردیم و وقتی ظرفیت شبکه حمل ما تکمیل شد، تنها با فشردن دکمه تایید، تقاضای مازاد سیستم حمل، به طور خودکار به پلتفرم الوپیک منتقل میشود. در نتیجه، در زمانهای اوج سفارش هم برای حمل سفارشها مشکلی نداریم.
در سمت سفارشها چطور؟
فاطمه نگاری: ما در سمت ثبت سفارش هم API تعریف کردیم. این API ها را در اختیار کسبوکارهایی نظیر پلاک، آچاره، و یدو و… گذاشتیم. این شرکتها می توانند تقاضای خدمات خشکشویی خود را در فرآیندی کاملا خودکار در پلتفرم ما تعریف کنند. بدین ترتیب، هم تنوع خدمات آنها بالا میرود و هم ما میتوانیم از ظرفیت مازاد پلتفرم به بهترین شکل استفاده کنیم.
به طور کلی چه سهمی از سفارشها را از طریق API دریافت میکنید؟
فاطمه نگاری: به طور معمول بیش از ۹۰ درصد سفارشها متعلق به مشتریان مستقیم خود پاکلین هستند و کمتر از ۱۰ درصد سفارشها از طریق API ها ثبت میشوند.
این API ها پیچیدگیهای فنی هم برای شما داشتهاند؟ چطور بر این پیچیدگیها غلبه کردید؟
مجید صادقی: API همیشه دو سمت دارد. یکی از مشکلات ما این بود که در سمت دوم که پیاده سازی صورت می گرفت، از تکنولوژیهای مختلفی استفاده می شد. هر یک از اینها با فرمتها و شیوههای مختلفی دیتای خود را ارسال می کردند. پس اولین چالش ما، جفت و جور شدن با این سیستمهای متنوع بود.
چالش دوم ما امنیت بود. این دست API ها بصورت پیش فرض به شدت در معرض خطر حمل ههای DDoS هستند. در این زمینه بر تجربیات شخصی خودم در حوزه امنیت تکیه کردم. ما امنیت را هم در سطح اپلیکیشن، هم در سرور و هم در API پیگیری میکنیم.
وقتی API هایی که از نهادهای دیگر دریافت کردهاید، درست عمل نمی کنند، چه میشود؟ این وابستگی به دیگران برای شما ریسک ایجاد نمیکند؟
فاطمه نگاری: مساله این است که ما همیشه باید آمادگی برای هر شکلی داشته باشیم. وقتی یک سرویس درست عمل نکند، بار عملیاتی ما به سامانه CRM منتقل میشود. ما برای این موضوع هم آماده هستیم تا هر فشار عملیاتی نامتعارفی را به پنجرههای زمانی مختلف بشکنیم و مدیریت کنیم.
برای کسی که بخواهد یک استارتاپ راه اندازی کند، چه پیامی در زمینه API ها دارید؟
مجید صادقی: خیلی از افرادی که تازه وارد این فضا می شوند، دید فنی ندارند و خیلی به معماری فکر نمی کنند. بلکه تمرکزشان این است که یک MVP با هر معماری ممکن ایجاد کنند و زودتر کسب و کار خود را کلید بزنند. اما اگر در شروع کار، با API معماری خود را ایجاد کنند، هم سرعت بالاتری خواهند داشت، هم میتوانند مدل کسبوکار خود را محک بزنند.
فرصت برای توسعه داخلی سرویس ها همیشه وجود دارد. در حالی که شما میتوانید یک API را به سرعت پیاده سازی کنید. این موضوع باعث میشود معماری فنی شما نیز بیشتر ماژولار باشد.