في الجامعة ، أحببت البرمجة. الآن أصبح روتينيا. كيفية العودة إلى الصمامات السابقة؟



التأمل شيء غريب. أكثر إثارة للاهتمام إذا كان يستند إلى سنوات عديدة من الخبرة. تحت القص ، قصة عن مصير مبرمج من خلال شفاه مدير تطوير Parallels RAS Igor Marnat في أول شخص. استمتع!
"إذا لم تتحرك إلى الأمام ، فلا تقف ساكناً. العالم يتقدم ، لكنك لست كذلك. وبالتالي ، أنت تتراجع! " © (شخص ذكي جدًا)


كتابات

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

إذا أصبحت البرمجة عملًا روتينيًا بالنسبة لك ، فقد تكون تجربتي مفيدة لك. هل تريد تغيير شيء ما؟ يجب تغيير شيء ما على الأقل (التفكير العميق ، أليس كذلك؟). يجب أن ننتقل إلى مكان ما. والآن ، في أوقات مختلفة ، حاولت أن أتحرك إلى الداخل ، وأن أتحرك جانبًا ، وأن أتحرك باتساع.

حركة عميقة


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

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

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

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

من الواضح أن أي منتج برمجي هو نتيجة عمل الفريق بأكمله ، ولكن مع مستوى مشاركتي في المشروع ، شعرت بأنني مشارك في إنشاء ليس المكونات الفردية ، ولكن المنتج بأكمله. في نفس الوقت ، تحصل على قيادة لا تصدق ، وهناك أيضًا المزيد من المسؤولية.

بشكل عام ، كلما كان المبرمج أعمق في مجال الموضوع الذي يعمل معه ، كلما كان يعرف السياق بشكل أفضل ، كلما كانت آفاقه أوسع ، كلما كان بإمكانه القيام بعمله.
هذا لا ينطبق فقط على الترتيب الداخلي لمكونات المنتج. كلما عرفت مستخدميك بشكل أفضل ، وكيف يستخدمون المنتج ، ولماذا ، وليس خلاف ذلك ، ما هي المشاكل التي يواجهونها ، وكيف يتم ترتيب منتجات المنافسين ، سيكون الأمر أكثر إثارة للاهتمام بالنسبة لك للعمل.

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

بالمناسبة ، هناك ملاحظة أخرى حول تنظيم سير العمل نفسه ، والتي تلتزم بها ، على وجه الخصوص ، فلسفة DevOps ونهج التطوير والعمليات المعروفة باسم SRE ، والتي جاءت في الأصل من Google. من الضروري السعي للقضاء على الفصل بين فرق التطوير والتنفيذ والدعم والتحرك نحو التعاون.

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

حركة جانبية


من نواح عديدة ، يتم تحديد اهتمام المبرمج بعمله من خلال اهتمامه بمجال الموضوع الذي يعمل فيه. على سبيل المثال ، قد تشعر بالملل من التطبيقات المالية ، ولكن سيكون من المثير للاهتمام العمل على البنية التحتية لهذه التطبيقات.

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

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

الحركة في العرض


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

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

كالعادة ، بدأت مع Google. لقد وجدت العديد من المقالات التي كتبها جويل سبولسكي ، ابتلعها ، قرأت الكتب التي أشار إليها ، ثم ذهبت الروابط من هذه الكتب ، ذهبت للدراسة بشكل أكثر منهجية ، وهكذا بدأت تدريجياً في الغوص في موضوع جديد - إدارة المشاريع ، فريق ، إدارة عملية التطوير نفسها.

عملية تطوير البرمجيات ، مثل أي عملية إنتاج أخرى ، لها باحثون خاصون بها ، وتاريخ التطوير ، وأفضل الممارسات ، ومناهج التنظيم. العديد من جوانبها المتعلقة مباشرة بالتنمية ، وأفضل الممارسات الهندسية ، هي من الشباب.

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

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

بشكل عام ، يعد مجال زيادة كفاءتك في مجال الإدارة ضخمًا ، كما أن المهام مختلفة جدًا. يمكنك البدء بتنظيم عملك الخاص ، من خلال تقديم أفضل الممارسات الهندسية مثل اختبارات الوحدة ، ومراجعات الكود ، والتكامل المستمر ، والتسليم المستمر ، يمكنك التوقف بعيدًا جدًا. ومن الأفضل عدم التوقف :)

الخاتمة


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

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

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

إذا شعرت أن الوقت قد حان لتغيير شيء ما - يمكنك البدء بخطوات صغيرة. للقيام بذلك ، لا تحتاج إلى إذن من فوق ، أو ميزانية أو عمل في منظمة كبيرة. كل الخطوات التي كتبت عنها ، ذهبت في شركة صغيرة ، في فرق من شخصين إلى عشرة أشخاص.

بعض الكتب الجيدة ، والكثير من الرغبة وقليل من الحركة يمكن أن تحدث فرقا كبيرا. حظ موفق

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

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


All Articles