"أين الأشرار الشباب الذين سيمحووننا من على وجه الأرض؟"

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

عدد المطورين العالميين

من أجل التعامل مع هذا السؤال بطريقة أو بأخرى، قررت أن أبدأ بالبحث عن بيانات حول عدد المطورين الموجودين في العالم اليوم وكيف يتغير هذا العدد بمرور الوقت.
وتشير التقديرات في مصادر مختلفة إلى أن الأرقام تتراوح بين 12 إلى 30 مليون شخص. قررت التوقف عند البيانات من SlashDataلأن منهجيتهم بدت متوازنة تمامًا ومناسبة لاحتياجاتي. في تقييمهم، أخذوا في الاعتبار عدد الحسابات والمستودعات على Github، وعدد الحسابات على StackOverflow، وحسابات npm والبيانات من المصادر الرسمية حول التوظيف في الولايات المتحدة وأوروبا. وقاموا أيضًا بتعديل الأرقام الناتجة باستخدام 16 دراسة خاصة بهم، والتي شملت ما يقرب من 20 ألف شخص لكل استطلاع.

وفقًا لـ SlashData، كان هناك ما يقرب من 2018 مليون مطور في العالم في الربع الرابع من عام 18.9، 12.9 مليون منهم كانوا مطورين محترفين، أي أنهم يكسبون عيشهم من البرمجة. أولئك الذين ليسوا مطورين محترفين حاليًا هم الأشخاص الذين تعتبر البرمجة هواية بالنسبة لهم، بالإضافة إلى أولئك الذين يدرسون حاليًا مهنة (طلاب مختلفون وعلموا أنفسهم). حسنًا، هذا تلميح لحجم المجموعة التي تهمني - 6 ملايين شخص. لأكون صادقًا، هذا أكثر مما توقعت.

والمفاجأة الثانية بالنسبة لي كانت معدل نمو عدد المبرمجين: فمن الربع الثاني من عام 2017 إلى الربع الرابع من عام 2018 ارتفع من 14.7 إلى 18.9 مليون مبرمج المذكور، أو ارتفع بنسبة 21% في عام 2018! ولو طلب مني تقدير معدل نمو عدد المبرمجين لقلت إنه حوالي 5% سنويا مع زيادة طفيفة في المعدل سنويا. وهنا اتضح أن ما يصل إلى 20٪.

بالإضافة إلى ذلك، تقدر SlashData أن عدد السكان سيصل إلى 2030 مليونًا بحلول عام 45. ومن السهل أن ندرك أن هذا يعني نمواً يزيد قليلاً عن 8% سنوياً، وليس 20%، ولكن هذا يشير إلى تعديل لمراعاة معدل انتشار الإنترنت (حالياً حوالي 57% على مستوى العالم). بحسب ستاتيستا) والعديد من العوامل الأخرى، مثل عدد المطورين للفرد. جغرافيا، ينمو عدد المطورين بقوة في الهند والصين؛ ومن المتوقع أن تتفوق الهند على الولايات المتحدة في عدد المطورين بحلول عام 2023 (وهذا بالفعل بيانات ركن C#).

بشكل عام، سيكون هناك الكثير من المبرمجين، بغض النظر عن نظرتك إليه، لأن الطلب في تزايد. بالمناسبة، حول الطلب.

ما هو في الطلب؟

لتقدير الطلب، استخدمت بيانات HackerRank لـ 2018 и 2019 العام.

فيما يتعلق بلغات البرمجة، فإن الطلب الأكبر هو على JavaScript وPython وJava في جميع الصناعات تقريبًا، باستثناء أجهزة الكمبيوتر. في الأخير، يكون الطلب الأكبر على C/C++، وهو أمر مفهوم؛ لا تزال مشاريع الأجهزة تتطلب متطلبات لكثافة الموارد وأداء البرامج المقابلة.

"أين الأشرار الشباب الذين سيمحووننا من على وجه الأرض؟"

فيما يتعلق بالأطر، فإن AngularJS وNode.js وReact هي الأكثر طلبًا، ولديها أكبر فجوة بين العرض والطلب، والتي يبدو أنها تفسر بالسرعة التي يتغير بها نظام JavaScript البيئي، لأنه على سبيل المثال، بالنسبة لـ ExpressJS ، العرض يتجاوز الطلب بالفعل.

"أين الأشرار الشباب الذين سيمحووننا من على وجه الأرض؟"

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

يحتاج تصميم قواعد البيانات إلى 23.2% من الشركات التي يقل عدد أفرادها عن 100 شخص، و18.8% من الشركات التي يزيد عدد أفرادها عن 1000 شخص. نعم، يبدو أن الأمر يتعلق بـ ORM وSQL! التفسير المنطقي، IMHO، هو أنه في الشركات الكبيرة يوجد دور مخصص لمسؤول قواعد البيانات، وهو المسؤول عن هذا الجانب، وبالتالي من الممكن تخفيف متطلبات المطورين والتوظيف بشكل أسرع. ولكن مع تصميم النظام، يكون الأمر على العكس من ذلك: 37.0% في الشركات الصغيرة، و44.1% في الشركات الكبيرة. يبدو أن الشركات الكبيرة يجب أن يكون لديها مهندسون معماريون متخصصون، ولكن ربما ببساطة غير قادرين على تغطية عدد الأنظمة التي يتم إنشاؤها. أو يتم وضع نفس الخوارزميات الأساسية وهياكل البيانات في تصميم النظام، ثم يصبح الأمر أكثر وضوحًا.

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

"أين الأشرار الشباب الذين سيمحووننا من على وجه الأرض؟"

ماذا يتعلم الطلاب؟

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

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

إنهم يعلمون ما هو مطلوب من قبل أصحاب العمل: JavaScript، Java، Python. ويشيرون إلى أنهم يعرفون لغة C/C++، ولكن ربما يرجع ذلك إلى استخدام هذه اللغات في التدريس في الجامعات. إنهم يقومون بتدريس أطر JS، لكن الطلب أعلى بكثير من العرض، لذلك يبدو أنهم يتعلمون بنشاط بعد العثور على وظيفتهم الأولى.

"أين الأشرار الشباب الذين سيمحووننا من على وجه الأرض؟"

بشكل عام، كما هو متوقع، يعلمون ما هو مطلوب.

يتوقع الطلاب النمو المهني من وظيفتهم الأولى، ويأتي التوازن بين العمل والحياة في المرتبة الثانية (في بعض البلدان أولاً)، وتأتي المهام المثيرة للاهتمام في المرتبة الثالثة.

ديناميكيات مجتمع المطورين حسب لغات البرمجة وأنواع البرامج

"أين الأشرار الشباب الذين سيمحووننا من على وجه الأرض؟"

تطبيقات الويب تحتل المركز الأول مع ما يقدر بنحو 16.9 مليون مطور. هذا هو SlashData مرة أخرى. تليها خدمات الواجهة الخلفية (13.6 مليونًا)، وتطبيقات الهاتف المحمول (13.1 مليونًا)، وسطح المكتب (12.3 مليونًا). تكتسب قطاعات الواقع المعزز/الواقع الافتراضي وإنترنت الأشياء شعبية تدريجيًا، كما شهد الذكاء الاصطناعي/التعلم الآلي/علوم البيانات نموًا ملحوظًا خلال العامين الماضيين.

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

تنمو Java وC/C++ وC# بمعدل أبطأ من إجمالي عدد المطورين. نادرًا ما أصبحت الآن لغة البرمجة التي يختار الأشخاص البدء بها. الطلب على المطورين هنا متوازن إلى حد ما مع العرض. أعتقد أن Java كانت ستنمو بشكل أبطأ لولا نظام Android.

PHP هي ثاني أكثر لغات برمجة تطبيقات الويب شيوعًا وهي تنمو أيضًا بشكل ملحوظ (بنسبة 32٪ في عام 2018). يقدر مجتمعها بـ 5.9 مليون مطور. على الرغم من السمعة الاستقطابية التي تتمتع بها لغة PHP، إلا أنها سهلة التعلم وتستخدم على نطاق واسع.

كيف يدرس المرشحون الشباب اليوم مقارنة بالأجيال السابقة؟

بيانات HackerRank مرة أخرى. أولئك الذين تتراوح أعمارهم الآن بين 38 و 53 يدرجون الألعاب كمشاريعهم الأولى.

بالمناسبة، أؤكد أن أول مشروع عملي أكثر أو أقل كان "تيك تاك تو" يصل إلى خمسة على التوالي مع حقل غير محدود، والثاني كان لعبة 15. لقد كتبت كل هذا على BC 010-01، كان يوجد فيلنيوس الأساسية، ويعرف أيضًا باسم BASIC-86 والتنسيق. إيه.

يقوم المبرمجون المبتدئون المعاصرون (حتى سن 21 عامًا) بكتابة الآلات الحاسبة والمواقع الإلكترونية كمشاريعهم الأولى.

من بين ممثلي الجيل X، بدأ نصفهم تقريبًا في كتابة التعليمات البرمجية قبل سن 16 عامًا، والعديد منهم فعلوا ذلك من 5 إلى 10 سنوات (معظمهم أولئك الذين تتراوح أعمارهم الآن بين 35 و 45 عامًا). السبب واضح إلى حد ما: كانت هناك مصادر قليلة للمعلومات، ولكي تصبح مبرمجًا، كان عليك حقًا أن ترغب في ذلك بشدة، وأولئك الذين أرادوا ذلك حقًا بدأوا البرمجة مبكرًا. أولئك الذين لم يرغبوا في ذلك كثيرًا على الأرجح لديهم الآن مهنة مختلفة، وبالتالي فإن الصورة في علم الاجتماع هي هكذا تمامًا.

"أين الأشرار الشباب الذين سيمحووننا من على وجه الأرض؟"

يبدأ المرشحون الشباب اليوم البرمجة قبل سن 20 عامًا فقط بنسبة 16% من الوقت، والأغلبية تتراوح أعمارهم بين 16 و20 عامًا. ولكن التعلم أصبح أسهل بكثير بالنسبة لهم، والآن أصبح الوصول إليه أكثر سهولة.

النتائج

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

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

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

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

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

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

يمكن للمستخدمين المسجلين فقط المشاركة في الاستطلاع. تسجيل الدخول، من فضلك.

هل تتطلب مقابلات الويب الخلفية معرفة SQL؟

  • نعم، أطلبه لأنني أحتاجه في العمل

  • نعم، أفعل ذلك، على الرغم من أنه نادرًا ما تكون هناك حاجة إليه في العمل.

  • لا، أنا لا أطلب ذلك، لدينا NoSQL

  • لا، لا أطلب ذلك، ORM سيفعل كل شيء

صوت 320 مستخدمين. امتنع 230 مستخدما عن التصويت.

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

إضافة تعليق