يتحدث مؤلف كتاب " بناء مهنة" ، رومان تشيخاريف ، مع المدير الفني لـ G-Core Labs ، فاسيلي ميخاليني ، حول ما تتوقعه الشركات الحديثة من موظفيها.- ما رأيك في مفهوم قيمة المطور يبدو؟لزيادة القيمة ، عليك القيام بثلاثة أشياء:
- لدراسة التقنيات المطلوبة في السوق اليوم وغدا.
- تطوير المهارات العالمية (المهارات اللينة).
- تحمل المزيد من المسؤولية.
- لنبدأ مع أبسط. ما التقنيات لإتقان؟الاتجاهات اليوم تتغير بسرعة مذهلة. لذلك ، أود التعبير عن بعض المبادئ العامة ، بدلاً من وصف الاتجاهات أو عمل تنبؤات. التكوين المثالي للخبرة والمهارات ، أنا أعتبر شخصًا يتمتع بخبرة على شكل حرف T (أشخاص على شكل حرف T). جوهر المصطلح هو أنه كخبير في مجال تقني معين ، ينبغي أن يكون لديه فكرة عما يحدث في المجالات المجاورة.
على سبيل المثال ، مطور الواجهة الخلفية ، بالإضافة إلى المعرفة العميقة بميزات اللغة (على سبيل المثال ، Python) والأطر الشائعة ، تحتاج بالتأكيد إلى معرفة ، ويفضل أن تكون قادرًا على بناء عملية الاختبار والتجميع والنشر (خط أنابيب CI / CD ، في Jenkins مثلاً). يجب أن يعرف ميزات البيئة التي ستعمل بها الشفرة ، وكيفية ضمان التسامح مع الخطأ فيها. على سبيل المثال ، للتعامل مع تثبيت AWS / Azure / GCE أو التثبيت الداخلي لملفات k8 ، يمكنك تصحيح الخطأ في أدوات النشر المكتوبة بلغة golang.
في بعض المناطق ، تزيد القيمة من توفر الشهادات. عند تعيينك ، تهم محفظتك ، فمن الأسهل إظهار مهاراتك ورمزك من خلال المشاركة في مشاريع مفتوحة المصدر أو نشر مشاريعك الأليفة على جيثب.
- لقد ذكرت العديد من الحلول التكنولوجية الشعبية. اتضح أننا بحاجة إلى معرفة ما هو في الاتجاه؟ليس بالضرورة. يمكنك الذهاب للضجيج في السوق ، أو يمكنك الذهاب في الاتجاه المعاكس. إذا كنت مهتمًا بالتكنولوجيا النادرة ولا ترغب في الركض بعد الموضة ، فهناك فرصة لزيادة قيمتها بسبب المعرفة الفريدة.
عمالقة التكنولوجيا الحديثة تتسم بالمرونة الكافية ويمكنهم تحمل تكاليف ترقية أنظمتهم بنجاح. وبقدر ما يمكن للمرء الحكم ، ليس لدى Yandex و Google تراث مثير للإعجاب من الحلول القائمة على التقنيات القديمة.
ولكن هناك المزيد من القطاعات المحافظة:
البنوك الدولية ، عمالقة الصناعة والطاقة ، وصناعة الدفاع. من الصعب جدًا عليهم العثور على متخصصين في مجموعتهم وأنهم مستعدون لدفع أموال جيدة. مثال جيد على ذلك هو استخدام "الموت" Perl على booking.com و mail.ru. أو
COBOL ، وضعت في 60s ، وما زالت تستخدم في بعض المؤسسات المالية الأمريكية.
- ثم ما المقصود بالمهارات العالمية؟تزيد القدرة على التواصل مع الأشخاص الآخرين بشكل كبير من قيمة المطور للشركة. في الممارسة العملية ، هذا يعني أنه يمكن لأي شخص إثارة مشكلة ، إثبات رأيه ، اقتراح حل ، تحديد أصحاب المصلحة بشكل صحيح ، معرفة كيفية التفاعل الفعال مع مختلف الأشخاص (المرونة) ، حل النزاعات بشكل بناء ، التفاوض ، التدريب ، التوجيه والإرشاد. وحتى التحدث علنا أو الحاضر.
ويشمل ذلك أيضًا القدرة على التحدث بنفس لغة المصمم وفهم دوافع قائدهم. أفكر في معرفة اللغة الإنجليزية ، وبالتالي كل شيء واضح.
- ماذا يعني تحمل المزيد من المسؤولية؟نحن نسعى جاهدين لتوظيف أشخاص ينظرون إلى أبعد من أداة العمل (التكنولوجيا) والتركيز على القيم للمستخدم النهائي. على سبيل المثال ، أولئك الذين يقدمون خيارات لتحسين عمليات التطوير ، يبحثون عن حلول لمشكلة العميل ، ومستعدون لبذل جهود لمناقشة التغييرات وتنفيذها.
لسوء الحظ ، يمكنك غالبًا رؤية المطورين الذين يقومون بإنشاء عبادة حول أدواتهم. لكن عليك أن تفهم أنه إذا لم تدخل الشفرة في الإنتاج في الوقت المحدد ، فلن تكون جودتها أو الأدوات المستخدمة مهمة. هذا الكود لم يحقق ربحاً للشركة.
"هذا يذكرني بقيم رشيقة." هل هناك اتصال؟نعم هناك مجموعة من
الممارسات تسمى DevOps التي تطور قيم Agile. إنها تساعد الشركة على تحويل تركيزها من إضفاء الطابع الرسمي على العمليات إلى التفاعل داخليًا لإنشاء قيمة. لكن هذا مستحيل دون تحمل المسؤولية عن النتيجة النهائية من قبل جميع أعضاء الفريق.
مطور جيد يفهم ثقافة DevOps ويعرف كيفية تطبيقها في فريقه ، وفي الشركة بشكل مثالي. أو حتى النبات. على سبيل المثال ، واحدة من ممارسات DevOps هي CI / CD (الإصدارات الأكثر شيوعًا). وإذا كنت تريد حقًا إنشاء إصدارات متكررة (مرة واحدة على الأقل يوميًا) ، فلن تكون قادرًا على القيام بذلك في غياب أتمتة التكامل والاختبار والتشغيل الآلي وتحقيق الاستقرار في عملية النشر وفصل الإصدار عن النشر (تبديل الميزات) ، والذي يكون فعالًا ويتضح للمطورين والمحافظة عليه التوافق مع الإصدارات السابقة ، تغيير آلية الاستعادة ، إلخ. سيصبح من الواضح لك أن مسؤولية المطور الجيد لا تنتهي عند نقل المهمة إلى قسم ضمان الجودة.
تبدو قيمة الإصدارات المتكررة واضحة للجميع.
Anti-DevOps عبارة عن قسم من عملية الإنتاج إلى بئرين وظيفيين أو أكثر: التطوير والاختبار والتشغيل والأمن. نتيجة لذلك ، كل وظيفة تحل فقط مشاكلها الخاصة.
المعنى العام هو أن الفريق يجب أن يتحمل مسؤولية جودة المنتج ، وقيمة الميزات للعميل ، والتوقيت ، والى حد أقل بكثير الامتثال الرسمي للمتطلبات في وصف المهمة. لا ينبغي أن يكون لدى المطور تحيزات تجاه الحد من مسؤوليته: "لقد قمت بالفعل بنقل المهمة إلى الاختبار. لا يمكنني مساعدة أي شيء آخر. "
لمزيد من المسؤولية ، كلما زاد التأثير على نتائج الشركة. في شركة جيدة ، يرتقي الأشخاص الذين يؤثرون في نموه إلى السلم الوظيفي.
تتطلب مسؤولية الفريق التواصل الجيد. من المستحيل تقريبًا بناء كل ما سبق دون مهارات التواصل البناء والعمل الجماعي.
- في كل مكان هكذا؟في شركة كبيرة ذات عمليات ناضجة محددة بالفعل ، فإن قبول المسؤولية يعني القيام بشيء يتجاوز العمل في مشروعك: تنظيم الاجتماعات ، المحادثات التقنية ، الهاكاثون ؛ المشاركة في التدريب العملي أو التدريبي.
- الاستنتاجات؟خلاصة القول ، يمكننا القول أن
أفضل استراتيجية للتنمية الشخصية هي
اكتساب مهارات الاتصال لتوسيع حدود المسؤولية بشكل أكثر فعالية عما يحدث لمنتجك وفي فريقك أو شركتك.