إيفان شاماتوف: كيف تكتب المال

تحية!

نحن نستعد لمؤتمر RubyRussia 2019 القادم (هل قمت بالفعل بتمييز 28 سبتمبر في التقويم؟) ونتحدث مع متحدثينا عن الحياة والمجتمع والبرمجة. في مقابلة اليوم ، يتحدث فيليكس ياسنوبولسكي من إيفرون إلى إيفان شاماتوف: زعيم مجتمع سانت بي روبي ( هنا يمكنك الانضمام إلى الدردشة المجتمعية المريحة على Telegram) ونائب رئيس الهندسة في Cybergizer.

صورة

ماذا سيكون خطابك في المؤتمر القادم؟

أريد أن أثبت أن المال في البرمجة سهل! بمساعدة المال ، نعبر عن بعض قيمة المنتج أو الخدمة. بشكل عام ، يمكن وصفها على أنها مجموعة من البعد 2 ، الذي يتكون من قيمة رقمية (على سبيل المثال ، 100) وقيمة حرف (على سبيل المثال ، USD ، $). في حالة المعاملات المالية التي تحمل نفس الرموز ، يكون الجهاز الرياضي بسيطًا نسبيًا ، ولكن حتى هنا يمكنك العثور على مطبات. ماذا يمكن أن نقول عن سيناريو تحويل الأموال من عملة إلى أخرى. هنا ينهار العالم الرياضي المثالي وتبدأ المحاسبة التجارية. سأوضح كيفية فهم بعض السيناريوهات والأخطاء التي يمكن أن تكون في أمثلة الممارسات من مشاريع fintech.

لماذا اخترت هذا الموضوع؟

شاركت في تطوير نظام دفع لمترو الأنفاق ، Aeroexpress ، وهو نظام لدفع فواتير الخدمات العامة لبعض الولايات في الولايات المتحدة الأمريكية والعديد من الدول الأخرى. البرنامج النصي الأول الذي كتبته من أجل المال هو برنامج نصي php لدفع ثمن الإنترنت من خلال المحطات الطرفية في بوشكين. في المرة التالية التي صادفت فيها موضوع المال عندما عملت في Cryptopay - كانت هناك أيضًا عمليات تحويل ومعاملات هناك. ثم ذهبت للعمل في Toptal ، حيث كنت جزءًا من فريق الفوترة. أثناء الاستعداد للمؤتمر ، اعتقدت أن الكثير من الناس يمكنهم التحدث عن ميزات روبي ، لكن قلة من الناس يفهمون كيفية كتابة النقود وكيفية القيام بذلك بشكل صحيح. وهذا موضوع نواجهه غالبًا في مجموعة متنوعة من المشاريع.

ما هي التقنيات إلى جانب روبي التي تحبها؟

أنا حقا أحب جافا سكريبت. استمتع بسهولة الكتابة على ES6. أنا أحب النماذج التي تأتي إلى روبي من لغات أخرى: في هذه الحالة ، يصبح من الضروري بالنسبة لنا استخدام هذه اللغات الأخرى. يمكنك فتح جوهرة متزامنة ومشاهدة مجموعة من الأدوات من Go و Clojure و Java و JavaScript. يعجبني ذلك بلغات مختلفة من الضروري استخدام طرق مختلفة للتفكير. هناك أناس ينتقلون من روبي إلى جو للحفاظ على مبادئ التفكير روبي. أو تعال إلى روبي بمبادئ من PHP. هذا لا يعمل في البرمجة: كل لغة لها نهجها الخاص ، سير العمل الخاص بها ، عقليتها الخاصة. تحتاج إلى فهم كيفية كتابة البرامج على وجه التحديد في إطار تقنية معينة.

أنا مهتم جدًا بتطوير الأجهزة المحمولة: نفس الأنماط ونفس MVC ، لكن كل شيء يعمل بطريقة مختلفة تمامًا. كان من المثير للاهتمام للغاية دراسة React و Redux - ريبو كبير للسكك الحديدية النموذجية :)

أخبرنا عن أكبر إخفاقاتك وأسباب الفخر.

أستطيع أن أفتخر بالمشاريع التي شاركت فيها والتي كان لي يد. على سبيل المثال ، مشروع يجعل من الممكن الدفع عن طريق بطاقة Aeroexpress في موسكو. يتم استخدام نفس النظام في مترو قازان. لقد كتبت عميلًا للباب الدوار على JRuby ، ​​وخلفية Rails التي تعمل معاملات النقل هذه مع مختلف واجهات برمجة التطبيقات. لقد كان مشروعًا مثيرًا للاهتمام ، حيث شارك فيه ثلاثة مطورين فقط.

فاكابوف لا تخجل ، حتى عندما تحدث. الشخص لديه الحق في ارتكاب خطأ. خطأ - وأنت لا تفعل ذلك بعد الآن.

أحد أنشطتك هو التوجيه. لماذا تفعل هذا؟

أنا نفسي دائماً كان لدي مرشدين اقترحوا ماذا وكيف يفعلون. هؤلاء هم أشخاص من دردشات مختلفة ، أشخاص تحدثت إليهم في مؤتمرات واجتماعات. عندما وصلت إلى مستوى معين ، بدأت في التوجيه سواء في وضع عدم الاتصال أو عبر الإنترنت. الآن أتعامل مع أشخاص أتوا إلينا من روبيز . هذا هو واحد من المشاريع الرئيسية لي لهذا اليوم ، دراسة عملية مكثفة لروبي للمبتدئين. يحصل الأطفال على أقصى درجات حرية التصرف والحق في ارتكاب الأخطاء. وفقط بعد أن تكون الأكواز ممتلئة ، يشرح المعلم سبب هذا الخطأ ولماذا يجب عليك عدم القيام بذلك. أعتقد أن هذا هو النهج الصحيح: لا يمكن فهم بعض الأشياء حتى تقوم بجمع هذه أشعل النار بنفسك. إذا لم تستخدم عمليات الاستدعاء بشكل غير صحيح ، فلن تفهم ما يمكن أن يكون مشكلة معهم. ولماذا يكره الكثير من الناس في المجتمع عمليات الاستعادة.

سمعت أنك حاولت الانضمام إلى فريق Toptal ست أو سبع مرات. هل هذا صحيح؟

نعم ، هذا صحيح ، لقد تحدثت عن هذا مرات عديدة. اتبعت Toptal سياسة توظيف نشطة أو أكثر نشاطًا واستباقية منذ بداية الشركة. لقد دعيت لإجراء مقابلات مرة واحدة في السنة. بعد محاولات فاشلة المتكررة ، قررت ألا أحاول مرة أخرى. لكن صديقي ، الذي بدأنا معه رحلتنا في روبي ، حصل على وظيفة هناك واقترح أن أحاول مرة أخرى. وهذه المرة كنت قادراً على استعراض جميع مراحل المقابلة. يوجد اختبار تقني كبير عند المدخل ، ثم مقابلة ، ثم مقابلة أخرى ، وأكثر من ذلك ... والآن أعتقد أن إجراء 5-6 مراحل من المقابلات يعد ممارسة رائعة للغاية. بهذه الطريقة فقط ، يمكنك فهم من أمامك ، ما إذا كنت تريد العمل مع هذا الشخص ، وما إذا كان سيدخل في الفريق. وأنا أفهم لماذا لم يأخذوني للمرة الأولى ، لم أكن قد سحبت ذلك حقًا.

كيف ، في رأيك ، ينبغي ترتيب مقابلة عمل مثالية وعملية التوظيف؟

عندما ساعدت في اختيار أشخاص للفريق السابق ، Cryptopay ، كان لدينا مرحلتان. كمهمة اختبار ، قدمنا ​​جزءًا من التعليمات البرمجية لإعادة البناء. بناءً على هذا الكود ، قمنا بتقييم أولي للمرشح. ثم أجرينا مقابلة في شكل الترميز المباشر من أجل فهم ما إذا كان هذا الشخص مناسبًا لنا. يسمح لك الترميز المباشر بفهم طريقة تفكير الشخص. يمكنك تقييم ليس فقط ما هو مكتوب ، ولكن أيضا كيف يستخدم المطور نظام التشغيل ، IDE ، هل يعرف هوتكي مدى عمق فهمه لبعض الموضوعات ، التي تقترب منه ، والأسئلة التي يسأل زملائه في هذه العملية. يوفر هذا النهج معلومات أكثر بكثير عن الشخص من اختبار أو مقابلة حول الخوارزميات.

لكنني أعتقد أن هذا لا يكفي. الآن ، في Cybergizer ، كثيراً ما أوظف أشخاصاً عملت معهم بالفعل. هناك أشخاص لم نعمل معهم ، لكنهم كتبوا معًا نوعًا من المصادر المفتوحة. يتيح لك هذا النشاط المشترك رؤية كيف يكتب الشخص الرمز. كما أنك تفهم أيضًا كيف يتطابق سير عملك مع مدى قربك عقلياً.

أنا لا أعتبر نفسي خبيرًا في التوظيف ، كما أن مقاربي غير صحيحة. أحد أخطائي الأخيرة: لم أكن أرغب في أخذ الشخص بعد جلسة الترميز المباشر لإجراء مقابلة معه ، ولم يثر إعجابي. لكن أعضاء الفريق الآخرين صوتوا لصالحه ، وبدأنا العمل معًا. وبالتعاون ، أدركت أن هذا متخصص من الدرجة العالية. كانت هناك حالة معاكسة تمامًا عندما كنت رجلاً بكل يدي ، وكمطور ، لم يكن شيئًا. بعد هاتين الحالتين ، لست مستعدًا للحكم على صحة أي طريقة توظيف معينة. ربما محظوظ ، ربما ليس محظوظا. لإعادة صياغة نكتة مشهورة:
- كيف يمكنك إدارة توظيف مثل هؤلاء المطورين الجيدين؟
- هذه هي كل تجربة توظيف مطورين جيدين!
- وكيف تحصل على هذه التجربة؟
- نحن بحاجة إلى توظيف مطورين مختلفين.

يبدو غريبا بالنسبة لي أن الكثير من المهتمين في كيفية جذب المتخصصين جيدة. لكن قلة من الناس مهتمون بكيفية أن تصبح شركة يرغب فيها المختصون الجيدون في العمل. أو ربما يجب عليك التفكير في الأمر أولاً؟

أنت تقوم بتنظيم اجتماعات واجتماعات Saint P Rubyconf في سانت بطرسبرغ. لماذا ولماذا تفعل هذا؟

هذا جزء من ثقافة روبي - مساهم مجتمع. شخص ما يدمج الكود ، يكتب openource. أنا أساهم في ما أحصل عليه. كثير من الناس يعتقدون أنه من أجل تقديم أي مساهمة ، تحتاج إلى أن تكون سبعة يمتد في الجبهة. لكن هذا ليس كذلك! منذ ما يقرب من 10 سنوات ، عندما كنت في بداية رحلتي إلى روبي ، قمت مع فريق من الرجال بترجمة إلى RailsCasts الروسية. لذلك يمكن للجميع أن يكونوا مفيدين للمجتمع بأسره: لا يهم إذا قمت بتحديث قفص الاتهام في جوهرة ، أو كتابة مقالة أو تنظيم mitap.

نراكم في RubyRussia 28 سبتمبر!

شاهد البرنامج والانضمام إلى هنا ، ومن المتوقع أن الزيادة القادمة في الأسعار بعد 15 سبتمبر.

شكرا للشركات التي تدعمنا:

المنظم - إيفرون
الشريك العام - توبتال
الشريك الذهبي - Gett
شركاء الفضة - JetBrains ، Bookmate و Cashwagon
الشريك البرونزي - InSales

Source: https://habr.com/ru/post/ar466881/


All Articles