مرحباً بالجميع ، اسمي أنتون توبيكوف ، أنا قائد فريق تطوير B2B في جيت.
جيت ليست مجرد خدمة سيارات الأجرة ، ولكن سوق ديناميكية. هذا نظام محمّل بدرجة عالية: يستخدم عشرات الآلاف من السائقين والملايين من العملاء في 120 مدينة حول العالم خدمات Gett يوميًا.
في البداية كتطبيق B2C ، أطلقت Gett في السنوات الست الماضية العديد من "الشركات الناشئة داخل الشركات الناشئة". كانت هذه تجارب في التوصيل والحافلات الصغيرة ومبيعات الشركات. تحولت العديد منهم في وقت لاحق إلى خطوط تجارية ناجحة. على سبيل المثال ، يعمل حل B2B بنجاح لأكثر من 15000 شركة كبيرة ، بما في ذلك العلامات التجارية مثل Google و Visa و Gucci و LVMH و Nestle ، إلخ.
التحدي الرئيسي التالي الذي تواجهه جيت هو الحصول على الاكتتاب العام المقبل. نأمل أن يساعد منتج الجيل الجديد على الاكتتاب العام لدينا على أن يصبح ناجحًا ، ولهذا السبب تم الجمع بين جهود أفضل مهندسي Gett و Juno لتحقيق هذا الهدف. يتعلق الأمر بتطوير حلول المنتجات المبتكرة من البداية باستخدام أحدث مجموعة من التقنيات المتقدمة.
أريد دعوة الجميع لحضور الاجتماع في مينسك في 12 سبتمبر بدعم من مجتمع GoWay ، حيث سيتحدث زملائي المطورين عن التحديات التقنية التي يواجهونها يوميًا وعن القليل الذي سنواجهه في المستقبل للعمل على حلول جديدة.

في الاجتماع ، سيتحدث المتحدثون عن التحديات التقنية التي يتم حلها في Gett باستخدام لغة Go.
المتحدثون:
- ساشا جرونين ، Gett ، مهندسة خلفية أولى في فريق تطوير B2B - تاريخ التطوير في Go in Gett 2018-2019.
Gett هي قصة كلاسيكية ، بعد عدة سنوات من تطوير متراصة ، اتضح أنها أكثر ملاءمة لتقسيم المتراصة إلى خدمات بدلاً من إعادة تشكيلها. الانتقال إلى Go ليس عملية فورية: إلى جانب تطور التكنولوجيا ، تطورت العمليات المحيطة.
في هذا التقرير ، ستتحدث ساشا عن كيفية تطوير الشركة للتطوير على Go وكيف يتم ترتيب عمليات التطوير والتقنيات الآن.
- ساغي كريتشبيتس ، Gett ، كبير مهندسي الخلفية في فريق التسعير - أحدث التقنيات (تحدث باللغة الإنجليزية)
في Gett ، يعتمد الكثير من الوظائف على الموقع. أثناء كل طلب ، هناك حاجة لاسترداد بيانات التكوين استنادًا إلى مواقع GPS. تعالج الخدمات الجغرافية عددًا كبيرًا من الطلبات وهي في مسار حاسم في تدفق الأعمال. مطلوب أن تستجيب الخدمة بسرعة وتكون قابلة للتطوير. كانت خدمة المنطقة القديمة في Gett تعتمد بالكامل على PostGIS ، والتي تؤدي إلى اختناق على قاعدة البيانات. يتحدث ساغي عن خدمة منطقة جديدة وعن توزيع ذاكرة التخزين المؤقت الجغرافية في الذاكرة على أساس شبكة hex و redis pubsub. سوف ساغي خوارزميات الهندسة الأساسية المستخدمة في الحل والتحديات التي كان علينا التغلب عليها.
- رون لودمر ، Gett ، مطور خلفية أقدم في فريق Matching & Ride Exchange - الإشارة المستندة إلى Redis (التحدث باللغة الإنجليزية)
مع ازدياد شعبية أسلوب هندسة خدمات microservices ، تزداد المخاطر الناتجة عن العمل مع نظام موزع. تتمثل إحدى المشكلات الشائعة في الوصول إلى مواردنا المشتركة من حالات متعددة في وقت واحد ، مما يؤدي إلى عدم تناسق البيانات. ما هي أفضل طريقة لضمان صحة مع الحد الأدنى من الضرر للكفاءة؟ يمكن القول ، إن أبسط طريقة هي استخدام آلية قفل. سيتحدث رون عن طرق مختلفة للقفل الموزع ، والطرق التي عالجوا بها هذه المشكلة في جيت ، مما أدى إلى حلنا الحالي: تطبيق القفل الموزع القائم على Redis في جولانج.
بالإضافة إلى تقارير مفيدة من مكبرات الصوت الرائعة ، ستجد بحرًا من التواصل ، وبطبيعة الحال ، بعد الاحتفال! للمشاركة ،
التسجيل مطلوب.
والآن القليل عن السبب ، في الوقت الحالي ، قررنا توحيد جهودنا مع جونو.
نظرًا لأنه من البداية ، كان قطاع Gett B2B مربحًا من الناحية التشغيلية (ويخضع لاستراتيجية لتحقيق الربحية الإجمالية) ، مما دفع Gett إلى إعادة هيكلة عروض القيمة الخاصة به حول العملاء من الشركات واحتياجاتهم.
في أبريل 2017 ،
اشترت Gett Juno ، وهي شركة ناشئة تعمل في نيويورك مع مركز تطوير في مينسك. Juno هي خدمة مشاركة في ركوب الخيل تأسست في عام 2015. منذ البداية ، أدلى جونو ببيان بصوت عالٍ عن نفسه: تم إطلاق الخدمة في نيويورك في مايو 2016 ، وفي سبتمبر 2016 ، تجاوز عدد الرحلات نصف مليون شهريًا. في سبتمبر 2017 ، تجاوز عدد الرحلات الناجحة مليون رحلة. اليوم ، جونو لديه واحد من المناصب الرائدة في سوق نقل سيارات الأجرة عبر الإنترنت في نيويورك.
تتمتع Gett الآن بأولوية في التحديث التكنولوجي لحلول B2B ، ولهذا الغرض تقرر دمج جهود مكتب مينسك في جونو وفريق Gett RnD في موسكو.
تغلق منصة B2B جميع مشكلات الشركات المتعلقة بالرحلة: من طلب سيارة ومراقبتها إلى مراقبة النفقات من قبل الإدارة المالية وإنشاء التقارير.
سيعمل فريق Juno مع Gett على مجالات متعددة من الخدمة:اتصال الموظففي كثير من الأحيان ، لا يمكن للموظفين في الشركات استخدام سيارات الأجرة وخدمات التوصيل بشكل مستقل: في بعض الأحيان يتم نشر طلب رحلة من خلال موظف / خدمة منفصلة. كل شركة لديها سياسات سفر خاصة بها ، ومهمة Gett B2B هي التكيف قدر الإمكان مع تفاصيل كل عميل: تخصيص حسابك الشخصي ، مع مراعاة جميع القواعد والسياسات.
التحكم في التكاليفواحدة من أكثر المشاكل الملموسة للعميل التي تحلها Gett B2B هي شفافية تكاليف النقل للشركات. لا تتعلق الشفافية بتفاصيل حسابات كل رحلة فحسب ، بل تتعلق أيضًا بإمكانية التجميع في مكان واحد لجميع النفقات التي تتحملها الشركة في كل مدينة أو بلد. في المستقبل ، يتم استخدام هذه التقارير ، على سبيل المثال ، لاسترداد ضريبة القيمة المضافة.
Gett B2B يحل هذه المشاكل من خلال أتمتة العمل اليدوي للمسؤولين والخدمات المالية. لم تعد بحاجة إلى جمع الشيكات ، ومعرفة تفاصيل الرحلة ، وتقديم طلبات التكلفة إلى الإدارات المختلفة ، وإدخال المعلومات لكل موظف يدويًا والتحقق من عدة مرات. يمكن للعملاء مزامنة بيانات SFTP أو إنشاء رحلات API.
بالإضافة إلى ذلك ، ستعمل Juno و Gett معًا في مجالات الفوترة وخدمات المستهلك واتصال البائعين.
يهدف اختيار
تقنيات B2B Solution إلى حل المشكلات التي تواجه منتج رقمي حديث بكفاءة:
- تساعد AWS و Kubernetes على التكيف مع الحمل العائم المعتاد في سوق ركوب الخيل والتوسع بشكل فعال
- لتكون قادرًا على إسعاد العملاء بالوظائف الجديدة كل يوم يتم الحصول عليه من خلال التسليم المستمر للعمليات المرتبطة بـ Jenkins
- في أعلى نقاط تحميل النظام ، استخدم الموارد بكفاءة ومرونة ، ومواكبة العصر ممكن مع Go و Redis
- الاستجابة بسرعة وتنفيذ تغييرات المنتج ، وتقديم تجربة مستخدم رائعة ، ربما بفضل React / Redux & Ruby
- لتكون جزءًا من بنية الخدمات المصغرة مع الحفاظ على تناسق البيانات ، بفضل CloudAMQP
- راقب أداء المنتج وتأكد من جودته العالية وهو ممكن بمساعدة نظام بيئي لرصد الحالات الشاذة والبحث عنها ، بما في ذلك PagerDuty و Airbrake و New Relic و Datadog وعمليات التكامل المستمر مع وحدة مدمجة ومكون واختبارات تكامل لـ Java / testNG / Selenium
إذا كانت لديك أسئلة ، سأكون سعيدًا بالإجابة عليها في التعليقات على هذا المنشور. ونراكم في الاجتماع!