
يختلف التطبيق باختلاف التطبيق: فهناك تلك التي يتم استخدامها من وقت لآخر ، وهناك من يقضي الملايين من الأشخاص الكثير من الوقت يوميًا ، وتثبيتها على هاتف ذكي جديد أولاً.
يعد تطبيق فكونتاكتي أحد التطبيقات الثانية ، لذا من المثير للاهتمام أن ننظر من الداخل وفهم من يعمل عليه وكيف. أخذنا مقابلة قصيرة من مطور iOS Alexei Savin ، سألنا عن ميزات العمل والحياة.
- ماذا تفعل بالضبط؟- على مدار السنوات الثلاث الماضية ، كنت أعمل كمطور iOS على VKontakte. تشارك في المهام المتعلقة بالوسائط المتعددة: الفيديو والبث عبر الإنترنت.
"ماذا فعلت قبل بدء حياتك المهنية في مجال تكنولوجيا المعلومات؟"- مثل الكثيرين ، بدأ الأمر بحقيقة أنني حاولت في العام الأول أن أعمل بشكل حر قليلاً: كنت أقوم بإنشاء صفحات للمتاجر عبر الإنترنت. ثم حاولت أنا وأصدقائي إنشاء تطبيق الهاتف المحمول الخاص بنا. كان يطلق عليه 9 مايو. في الواقع ، كانت خريطة للمدينة ، حيث تم وضع علامة على النقاط المرتبطة بالحرب العالمية الثانية ، ويمكنك أن تقرأ عن كل منها. كان هذا أول نجاح - لوحظ التطبيق ، وظهر في جميع أنواع مجموعات الموضوعات.
ثم تحولت تدريجياً إلى العمل على الاستعانة بمصادر خارجية لتطبيقات الهاتف المحمول. وقبل ثلاث سنوات جاء إلى VK.
- وكيف جئت على وجه التحديد إلى تطوير iOS - مع شراء iPhone؟- ثم لم يكن لدي هاتف iPhone. كنت في سنتي الثانية ، وكان ذلك وقت iOS 6 ، واشتريت جهاز Mac ، وأردت تجربته. كان من المألوف ، وشاع ، وتساءلت كيف كان الأمر بالنسبة لكتابة تطبيق محمول ، ومنذ ظهور Mac ، كان اختيار النظام الأساسي واضحًا. ومع ذلك ، جربت أيضًا Android في نفس الوقت تقريبًا (كجزء من دورة جامعية في جافا). ولكن في مقارنة iOS ، أعجبني أكثر.
- في الآونة الأخيرة ، سألنا مطوري iOS عن عرض Apple التقديمي ، وسنسألك أيضًا: ما هو الهاتف الآن ، وهل تريد تغييره بعد العرض التقديمي؟- الآن iPhone X ، لا أخطط للانتقال إلى جهاز جديد بعد ، وعادة ما أفعل ذلك كل عامين. في العام المقبل ، ربما سآخذ السنة التالية.
- ما رأيك في iOS 12؟- حقيقة أن الإفراج عن الاستقرار أمر ممتع بالتأكيد. بعد التحديث ، يبدو أن عددًا كبيرًا من بعض الأخطاء الصغيرة المزعجة قد اختفى. أي أنهم قرروا أخذ استراحة لمدة عام لتحسين الاستقرار ، ويبدو أنها تحولت بشكل رائع.
- بالانتقال إلى موضوع تطبيق VK: كم كان لديك من عمل فيما يتعلق بإصدار iOS 12؟- من الغريب ، في هذا الإصدار لم يكن هناك سوى عدد قليل من الأخطاء الطفيفة. لدعم iOS 12 ، لا تحتاج إلى تغيير أي شيء تمامًا. في المرة الأخيرة كان هناك عمل أكثر بكثير ، قضينا فيه أكثر من أسبوع.
- تطبيقات VK معروفة جيدًا ، ولكن من يجعلها أقل شهرة. أخبرني ، ما هو فريقك المتنقل ، وكم عدد الأشخاص وكيف يتم ترتيبه؟- يوجد الآن 18 شخصًا في مطوري iOS. وهي تتكون من فرق منتجات مختلفة: هناك فريق يتعامل مع وسائل الإعلام ، وهناك فريق رسول ، وهناك فريق بنية أساسية يقوم بتنفيذ بعض الحلول الشائعة التي تستخدمها الفرق الأخرى. تحتوي الفرق على مطورين للهواتف المحمولة لكل من النظامين الأساسيين (2-3 أشخاص لكل منهما) ، وهناك مطورين خلفية - بشكل عام ، نحصل على مجموعة كاملة تغطي مهامهم الخاصة بالكامل. نقوم بالمزامنة بانتظام في إطار المنصة بين الفرق من أجل تبادل الأخبار والمعرفة.
- لديك عدد كبير من المستخدمين ، كيف يؤثر ذلك على التنمية؟- أي موقف تعتبره غير محتمل ولا تأخذه في الاعتبار سيظهر بالتأكيد بالتأكيد ، وعلى الفور على آلاف المستخدمين. إن اصطدام عشرات الآلاف من الناس أمر مخيف وغير عادي ، لكنه يطور مستوى كبير من المسؤولية.
- من أين تأتي أفكار الميزات ، وماذا يحدث للفكرة منذ لحظة الموافقة على الإصدار في App Store؟ كيف يتم تطوير كل هذا؟- لكل فريق منتج مؤشرات رئيسية يركز عليها. على سبيل المثال ، إذا كنت تقوم ببث مباشر ، فهذا هو عدد عمليات البث التي تم إنشاؤها شهريًا وعدد مرات المشاهدة. عند مناقشة ميزة ، نحدد كيفية تأثيرها على المقاييس ذات الصلة بنا. بعد ذلك فقط نقرر ما إذا كنا سنفعل ذلك. ثم تكون العملية قياسية جدًا. نضعها في خطتنا للوقت الحر التالي. إذا كانت هذه فكرة رائعة ، وترغب في جعلها أسرع ، يمكنك تحريك شيء ما. بعد ذلك ، نقوم بتشكيل الوثائق: ما هو مطلوب من قبل التصميم ، وما هو مطلوب من قبل API. بعد ذلك ، نبدأ في القيام به.
- بقدر ما أفهم ، لديك قطار إطلاق ، هل يمكنك إخبارنا بالمزيد؟- يتم تحرير الطلب كل أسبوعين. يجب أن يقول كل فريق في بداية الأسبوع ما يخطط لإضافته إلى هذا الإصدار. قبل الإصدار بخمسة أيام - تم تجميد الميزة ، عندما لم يعد من الممكن إضافة أي شيء جديد ، وإذا لم يتمكن شخص ما من ملء تغييراته ، فلن يتم تضمينه في هذا الإصدار.
- وكيف تبدو هذه العملية من الناحية الفنية ، وماذا عن مراجعة الكود و CI؟- لدينا رمز مراجعة ، هناك CI. ولكل إلتزام ، نحصل على تجميع ونقدم الطلب داخل طاقم بيت المغني - هناك حوالي 200 منهم في المجموع. لقد تم استخدام جميع موظفينا بالفعل لاستخدام إصدارات اختبار التطبيق. الفكرة هي أن لا شيء تم اختباره ولم يتم التحقق منه يجب ألا يدخل في مجالس الموظفين. إذا تم سكب شيء ما في Dev ، يفترض المطور أن الميزة جاهزة تمامًا: تم اختبارها ، ويمكن للموظفين استخدامها ، هذه نسخة مستقرة عادية.
وبفضل هذا ، نحصل على تعليقات حقيقية من المستخدمين الذين يستخدمون هذا التجميع على مدار الساعة تقريبًا لمدة أسبوعين بين قطارات الإصدار. بهذه الطريقة ، يمكننا تكوين ردود فعل.
- لديك تطبيق غير نمطي (ليس كل مطور مشارك في شبكة اجتماعية كبيرة) ، والبرنامج الحالي بعيد عن السنة الأولى. هل يمكنك إخباري بعدد أسطر التعليمات البرمجية ، وما مدى صعوبة العمل معها؟- كم سطر من التعليمات البرمجية ، لن أخبرك على الفور. لكن حقيقة أن المشروع عمره عدة سنوات له تأثيره: الكثير من الرموز القديمة ، هناك أماكن لا يزال فيها MRC. وتقريبا جميع الحلول مكتوبة ذاتيا: لا توجد عمليا تبعيات خارجية. يحتوي التطبيق على عتبة دخول عالية إلى حد ما ، بما في ذلك بسبب ذلك.
- مع مثل هذه العتبة ، كم من الوقت تستغرق عملية الإعداد للمطورين الجدد؟- يقع جميع المطورين الجدد في البداية في فريق البنية التحتية قبل انضمامهم إلى أحد الفرق الأخرى. يمكنك البقاء هنا. هناك يقضون شهرًا ونصفًا إلى شهرين - ربما هذه هي "فترة التكيف" ، حيث يتعرفون على التطبيق ويقومون ببعض المهام الصغيرة التي لن تؤثر على شيء ما.
- سوف تتحدث معنا على Mobius بتقرير حول بث الفيديو على iOS. أخبرني عن المشروع ، وبفضله نشأ التقرير: من أين جاءت الفكرة ، كيف حدث ذلك؟- المشروع هو ما أصبح تطبيقًا منفصلاً لـ
VK Live . جاءت الفكرة عندما كنت لا أزال في الجامعة. ثم حاولت أنا وأصدقائي في كثير من الأحيان تقديم نوع من التطبيقات التجريبية ، واختبار بعض الأفكار ، واختيار الموضوعات بشكل دوري لهذا الغرض. ذات يوم ، في 1 يناير ، بعد العام الجديد ، اعتقدنا أننا لم نفعل أي شيء منذ وقت طويل ، وعلينا اختيار موضوع. ثم عقدت VKontakte مسابقة تطوير الهاتف المحمول
VK Challenge ، كجزء من هذه المسابقة تم اقتراح عدد من المواضيع ، وكان هناك بث مباشر. كنا نظن أننا لا نعرف شيئًا عنهم ، لذلك سيكون من المثير للاهتمام المحاولة. ونتيجة لذلك ، قاموا بعمل نموذج أولي في غضون شهرين ، وبدأ VK Live في ذلك.
- قصة مثيرة للغاية: أدت مشاركة الطلاب في المسابقة إلى حقيقة أنك كنت في VK لمدة ثلاث سنوات. هل هذه حالة معزولة ، أو يتم إجراء المسابقات بشكل منهجي؟ هل لدى أولئك الذين أصبحوا للتو مطورين الفرصة لتكرار قصة نجاح مماثلة؟ هل لديك ، على سبيل المثال ، مدرسة التطوير الخاصة بك؟- تقام معنا العديد من الأحداث بانتظام ، بما في ذلك هاكاثونز وبطولات البرمجة VK Cup. تاريخيا ، كانت هناك العديد من المسابقات في التصميم والتطوير ، وأنا لست الشخص الوحيد الذي دخل في VK بهذه الطريقة. لا توجد مدرسة تطوير ، ولكن ، على سبيل المثال ، حصلنا مؤخرًا على تدريب في التعلم الآلي. في المستقبل ، نخطط لإجراء مثل هذه الأحداث في كثير من الأحيان.
- العودة إلى VK Live: ما الفرق مع المنافسين مثل Periscope؟ لماذا يجب على المستخدم استخدام التطبيق الخاص بك؟- الاختلاف الرئيسي في الرسم البياني الاجتماعي. سيكون لدى الأشخاص الذين ينشئون البث معنا مشاهدين معينين: أصدقاء VK الذين يتواصلون معهم باستمرار. ليس لديهم هذا الرسم البياني في مواقع أخرى.
- وفي أي اتجاه يتحرك المشروع الآن؟- في اتجاه زيادة التفاعل. على سبيل المثال ، هذه فرصة لإضافة مسح أثناء البث. أي طرق إضافية للتفاعل مع الجمهور.
- عندما تعمل في مشروع واسع النطاق مثل VK ، ألا يدفعك مقدار العمل الكبير؟- لا توجد مشكلة. الأشخاص الذين يعملون لدينا يحبون بجنون ما يفعلونه ، ويشعرون بالمسؤولية عنه ويحصلون على بعض الإثارة منه. بما فيهم أنا. يمكنني الجلوس في المكتب بسهولة طوال الليل وببساطة لا ألاحظ ذلك. في الوقت نفسه ، من الممكن جدًا الحفاظ على التوازن بين العمل والحياة.
"ماذا تريد أن تفعل إلى جانب كتابة الرمز؟"- السفر.
- ما هي أكثر الأماكن التي لا تنسى؟- من الأخيرة - بيرو. ماتشو بيتشو مكان ساحر وجميل جدا. بشكل غير عادي. أنا أيضا أحب جراند كانيون.
- ماذا ستفعل إذا لم تكن مطور iOS؟ج: ربما أجرب نفسي في التعلم الآلي - هذا شيء يبدو مثيرًا للاهتمام وواعدًا وسيكون ذا صلة بالعدد التاسع من السنوات.
- السؤال الأخير. من حقيقة أنك ترى كيف يجب أن يتطور مطور iOS في الحقائق الحالية؟- الآن ، يتم "سجن" الكثير من المطورين بسبب أي أطر عمل محددة. أي في عملهم ، استخدموا مكتبات كبيرة فقط من Facebook / Google ، وغالبًا لم يلمسوا الأطر الأصلية عمليًا ، ولا يفهمون دائمًا كيفية عملها. ويبدو لي ، من بين أمور أخرى ، أنه من المهم محاولة فهم أفضل لكيفية عمل المكونات الرئيسية للنظام - على سبيل المثال ، نفس UIKit.
إذا كنت مهتمًا بالمسائل الفنية للبث المباشر على iOS ، فسوف يتحدث Alexey عنها بالتفصيل في موسكو يوم 8 ديسمبر في مؤتمر Mobius .