طريق الغضب: رحلة مطور الفواتير

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

الآن سأخبرك كيف أرى مسار تطوير مطور الفواتير، وبأي تسلسل تحتاج إلى إتقان المهارات المهنية.

1. تعلم لغة برمجة

بالنسبة للمبتدئين، أي شخص. الأولوية هي Java وPython وJavaScript، لكن Ruby وGo وC وC++ مناسبة لاكتساب المعرفة الأساسية. كيف تعلم؟ احصل على دورات مدفوعة ومجانية، يمكنني أن أوصي بالتدريب من Golang. إذا كان مستواك في اللغة الإنجليزية يسمح بذلك، فإن مشاهدة مقاطع الفيديو الأجنبية تعد مهارة إضافية جيدة.

طريق الغضب: رحلة مطور الفواتير

2. فهم مفاهيم نظام التشغيل

تعتمد أنظمة التشغيل على سبعة مكونات تحتاج إلى معرفتها والقدرة على شرح مبدأ التشغيل:

  • ادارة العمليات؛
  • المواضيع والكود متعدد الخيوط؛
  • المقبس (واجهة البرنامج)؛
  • إرسال الإدخال/الإخراج؛
  • الافتراضية؛
  • تخزين؛
  • أنظمة الملفات.

أوصي بأخذ دورة تدريبية أساسية في إدارة Linux. أنظمة التشغيل الثانية في الخط هي Windows و Unix.

3. التعود على المحطة

قياسا على رهاب الورقة الفارغة، هناك رهاب من شاشة سوداء فارغة مع مؤشر وامض. سيتعين عليك التغلب عليها لتتعلم كيفية كتابة أوامر جيدة في سطر الأوامر.
يجب ان يعرف:

  • قذائف باش وكورنشيل؛
  • الأوامر find، grep، awk، sed، lsof؛
  • أوامر الشبكة nslookup وnetstat.

طريق الغضب: رحلة مطور الفواتير

4. الشبكات والأمن

ترتبط الفواتير ارتباطًا وثيقًا بمتطلبات حماية الشبكة والبيانات. لا يمكنك كتابة الخدمات عبر الإنترنت دون فهم كيفية عمل الشبكة، لذلك تحتاج إلى تعلم المفاهيم والبروتوكولات الأساسية: DNS، نموذج OSI، HTTP، HTTPS، FTP، SSL، TLS. بعد ذلك، عندما تواجه خطأ تم رفض الاتصال، ستعرف ما يجب فعله.

5. الخوادم

بعد دراسة مبادئ نقل المعلومات على الشبكة، يمكنك البدء في أساسيات تشغيل الخادم. ابدأ بخوادم الويب: IIS وApache وNginx وCaddy وTomcat.

مزيد من أسفل القائمة:

  • الوكيل العكسي؛
  • خادم انترنت مجهول؛
  • التخزين المؤقت.
  • توزيع الحمل؛
  • جدار الحماية.

6. تعلم البنية التحتية كرمز

وأعتقد أن هذه المرحلة هي واحدة من أهم المراحل. سيكون عليك فهم ثلاثة مواضيع عامة:

  • الحاويات: Docker وKubernetes
  • أدوات إدارة التكوين: Ansible وChef وSalt وPuppet
  • النسخ الاحتياطي: Terraform، السحب.

7. تعلم CI/CD

هناك مهارة أخرى مفيدة لمطور الفوترة وهي أن يكون قادرًا على إعداد مسار للتكامل والتسليم المستمر. توجد في منطقة CI/CD أدوات مثل Jenkins وTeamCity وDrone وCircle CI وغيرها. المفسد: تعلم جينكينز المستخدمة على نطاق واسع سيكون كافيا في البداية.

8. التحكم بالبرمجيات والبنية التحتية

الهدف الرئيسي هو فهم أساسيات مراقبة التطبيق. وتنقسم الأدوات في هذا المجال إلى ثلاث مجموعات:

  • مراقبة البنية التحتية: Nagios، Icinga، Datadog، Zabbix، Monit.
  • مراقبة أداء التطبيق: AppDynanic، New Relic.
  • نظام إدارة التعلم: ELK Stack، Graylog، Splunk، Papertrail.

9. الخدمات السحابية

في المستقبل القريب، سيكون لكل تطبيق أو برنامج نظير سحابي. عاجلاً أم آجلاً، يواجه المطورون السحابة، لذا اقرأ عن موفري الخدمات السحابية المشهورين (AWS، وGoogle Cloud، وAzure) وأساسيات التكنولوجيا.

10. العمل مع قاعدة البيانات

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

11. تحسين مهاراتك الناعمة

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

طريق الغضب: رحلة مطور الفواتير

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

هذه هي الطريقة التي أرى بها مسار التطوير لمطور الفوترة، وهذه هي الطريقة التي نعمل بها على تنمية المتخصصين المؤهلين في فريق Forward Telecom لدينا. لا يبدو أنني أفتقد أي شيء، لكنني دائمًا ممتن للإضافات المفيدة إلى هذه النقطة.

المصدر: www.habr.com

إضافة تعليق