بعد الجولة التالية من النقاش في أحد المجتمعات ، طرحت السؤال الوجودي ، والموضحة في العنوان في صياغة Grebenshchikov ، حول ما إذا كانت هناك حاجة إلى معرفة SQL بالويب لمطور مطور للواجهة الخلفية للويب أو ما إذا كان ORM سيفعل كل ذلك. قررت البحث عن إجابة أوسع قليلاً من مجرد ORM و SQL ، وأحاول من حيث المبدأ تنظيم الأشخاص الذين يذهبون الآن لإجراء مقابلات في مناصب التنمية المتوسطة والمتوسطة ، ما هو تاريخهم وما العالم الذي يعيشون فيه. بشكل عام ، كان لدي رأي ، ولكن تم تشكيله من خلال تجربة التوظيف الشخصية وتم تعديلها بشكل واضح للسوق المحلية. بشكل عام ، أصبح الفضوليين. إليكم ما تمكنت من العثور عليه.
السكان المطور العالمي
من أجل التعامل مع هذه المشكلة بطريقة ما ، قررت أن أبدأ بالبحث عن بيانات حول عدد المطورين في العالم الآن من حيث المبدأ وكيف يتغير هذا العدد بمرور الوقت.
تشير تقديرات المصادر المختلفة إلى الأرقام الموجودة في مفترق الطرق من 12 إلى 30 مليون شخص. قررت التوقف عن
البيانات من SlashData ، لأن منهجيتها بدا لي متوازنة تمامًا ومناسبة لاحتياجاتي. في التقييم ، أخذوا في الاعتبار عدد الحسابات والمستودعات على جيثب ، وعدد الحسابات على StackOverflow ، وحسابات npm والبيانات من مصادر رسمية حول التوظيف في الولايات المتحدة الأمريكية وأوروبا. كما قاموا بتعديل الأرقام باستخدام 16 دراسة خاصة بهم ، والتي غطت ما يقرب من 20،000 شخص لكل مسح.
وفقًا لـ 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 # Corner بالفعل).
بشكل عام ، سيكون هناك العديد من المبرمجين ، مهما قال أحدهم ، لأن الطلب يتزايد. الحديث عن الطلب.
ما هو الطلب على؟
لتقدير الطلب ، استخدمت بيانات 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 ، هو أنه في الشركات الكبرى هناك دور DBA مخصص ، مسؤول عن هذا الجانب ، وبالتالي فمن الممكن تخفيف متطلبات المطورين والتوظيف بشكل أسرع. ولكن مع تصميم النظام ، على العكس: 37.0 ٪ في الشركات الصغيرة ، 44.1 ٪ في الشركات الكبيرة. يبدو أنه يجب التمييز بين المهندسين المعماريين الكبار ، لكن ربما يكونون ببساطة غير قادرين على تغطية عدد الأنظمة التي تم إنشاؤها. أو في نفس الوقت يستثمرون في تصميم النظام الخوارزميات وهياكل البيانات الأساسية للغاية ، ثم يصبح أوضح قليلاً.
تحتاج الشركات الصغيرة إلى "الكفاءة الإطارية" والتصميم المذكور أعلاه بشكل أقل ، حيث يمكننا أن نستنتج أنه من المهم للشركات الناشئة أن تطلق منتجًا يعمل في أسرع وقت ممكن ، وغداً سيكون غدًا.

ماذا يتعلم الطلاب؟
أنا هنا اعتمدت على بيانات
دراسة أخرى لـ
HackerRank .
من المهم مراعاة أنه على الرغم من حقيقة أن البرمجة بشكل أو بآخر يتم تدريسها في الجامعات (أعني تخصصات علوم الكمبيوتر) ، قال أكثر من نصف المشاركين أنهم يشاركون أيضًا في التعليم الذاتي.
يفضل الطلاب المعاصرون الدراسة على موقع يوتيوب ، بينما يميل المطورون الأكبر سناً إلى البرامج التعليمية والكتب. كلا بنشاط استخدام StackOverflow. وأرجع هذا إلى حقيقة أن الفيديو هو القناة الإعلامية المعتادة للجيل Z ، بينما لا يزال ممثلو الجيل Y يكتشفون عصرهم بدون مدونين.
تعلم ما يطلبه أصحاب العمل: جافا سكريبت ، جافا ، بيثون. يشيرون إلى أنهم يعرفون لغة C / C ++ ، ولكن هذا ربما يرجع إلى أن هذه اللغات تستخدم للتدريس في الجامعات. يتعلمون أطر عمل JS ، لكن الطلب أعلى بكثير من العرض ، لذلك يبدو أنهم يتعلمون بالفعل بالفعل بعد العثور على الوظيفة الأولى.

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

تأتي تطبيقات الويب أولاً مع ما يقدر بنحو 16.9 مليون مطور. هذا هو مرة أخرى بيانات SlashData. فيما يلي خدمات الخلفية (13.6 مليون) ، وتطبيقات الهاتف المحمول (13.1 مليون) ، وسطح المكتب (12.3 مليون). تكتسب قطاعات AR / VR و IoT شعبية تدريجية ، وقد نمت AI / ML / Data Science بشكل ملحوظ على مدار العامين الماضيين.
ينمو جافا سكريبت الأسرع ، مجتمعه هو الأكبر بالفعل ، فقط في عام 2018 نما بنسبة 2.5 مليون. حتى أنهم يحاولون الكتابة عليه في قطاعي إنترنت الأشياء وقطاع الأعمال.
نمت بيثون في عام 2018 بنسبة 2.2 مليون بسبب تنامي شعبية ML ، حيث أنها قوية تقليديا ، وكذلك بسبب سهولة التطوير وراحة اللغة.
تنمو Java و C / C ++ و C # بمعدل أبطأ من السكان المطور العام. إنها الآن نادرًا ما تكون لغة البرمجة التي يفضل الناس البدء بها. الطلب على المطورين هنا هو أكثر أو أقل توازنا مع العرض. أعتقد أن جافا سوف ينمو بشكل أبطأ إن لم يكن لنظام أندرويد.
تعد لغة PHP ثاني أشهر لغة برمجة تطبيقات الويب كما أنها تنمو بشكل كبير (بنسبة 32٪ في عام 2018). ويقدر مجتمعها بنحو 5.9 مليون مطور. على الرغم من الرأي القطبي حول سمعة PHP ، إلا أنه من السهل للغاية التعلم وعلى نطاق واسع.
كيف يدرس المرشحون الشباب الحديث مقارنة بالأجيال الماضية
بيانات HackerRank مرة أخرى. أولئك الذين تتراوح أعمارهم الآن من 38 إلى 53 يشيرون إلى الألعاب بمشاريعهم الأولى.
بالمناسبة ، أؤكد ، بالمناسبة ، كان أول مشروع لي يعمل أكثر أو أقل هو "tic-tac-toe" حتى خمسة متتالية مع حقل غير محدود ، والثاني - لعبة في 15. لقد كتبت كل هذا في
BC 010-01 ، كان هناك
Vilnius BASIC ، المعروف أيضًا باسم BASIC- 86 والتنسيق. إيه.
يكتب المبرمجون المبتدئون الجدد (قبل سن 21 عامًا) الآلات الحاسبة ومواقع الويب كأول مشاريعهم.
من بين ممثلي الجيل العاشر ، بدأ نصفهم تقريبًا كتابة التعليمات البرمجية قبل سن 16 عامًا ، والكثير منهم بشكل عام من 5 إلى 10 سنوات (معظمهم من عمر 35 إلى 45 عامًا). من المفهوم إلى حد ما لماذا: كانت هناك مصادر قليلة للمعلومات ، ولكي تصبح مبرمجًا ، كان من الضروري حقًا أن ترغب في ذلك حقًا ، وأولئك الذين أرادوا حقًا البدء في البرمجة في وقت مبكر. أولئك الذين لا يريدون الكثير ، الآن ، على الأرجح لديهم مهنة مختلفة ، وبالتالي فإن الصورة في علم الاجتماع هي تلك الحقيقة.

يبدأ المرشحون الشباب اليوم في 20٪ فقط من الحالات البرمجة قبل سن 16 ، ومعظمهم في مكان ما بين السادس عشر والعشرين. لكن من الأسهل بالنسبة لهم أن يتعلموا ، والآن أصبح الوصول إليه أكثر سهولة.
النتائج
لم أجد إجابة ملموسة على السؤال عما إذا كانت هناك حاجة إلى مطور الواجهة الخلفية للمبتدئين SQL اليوم ، لكنه قام بتصحيح فكرته عن السكان الحديث للمبرمجين.
أفسدهم الجيل القادم من المطورين - الأشخاص العاديين ، الذين يذكرون إلى حد ما
بقضية الإسكان السابقة. أنها تلبي الطلب الذي أنشأه أرباب العمل. أصبحت عتبة الدخول في المهنة أقل بسبب الأدوات والأطر الأكثر ملاءمة التي تتيح لك تحقيق النتائج بسرعة. أصبح الكثير من الناس الآن مبرمجين ، فالجيل الرقمي (الجيل Z) يعيشون في التكنولوجيا منذ ولادتهم ، فهي مهنة منتظمة لهم ، وليس أسوأ من غيرها.
أولئك الذين يعرفون أن ذاكرة التخزين المؤقت Lensi L1 هي 4 دورات تقريبًا ، وأنه من الأفضل عدم إطلاق خطوط ذاكرة التخزين المؤقت دون داع ، يصبحون أصغر كنسبة مئوية من إجمالي حجم السكان. ومع ذلك ، لا ينبغي أن يقلقوا بشأن التوظيف ، فعلى شخص ما في النهاية أن يكتب أشياء منخفضة المستوى حيث لا يزال ذلك ضروريًا. كما يجب أن لا تقلق ، أولئك الذين لديهم معرفة أساسية عميقة في تصميم النظام واكتسبوها في معارك عملية دموية ، وليس فقط اتباع عبادة الشحن. لأن أولئك الذين سيكونون قادرين على "مجرد كتابة الكود" و "فقط" استخدام الأطر في الفرق سيصبحون أكثر ، ومن أجل "ألا يكونوا مؤلمين للغاية لسنوات يقضونها بلا هدف" (ج) سوف يحتاجون إلى موازنة من قبل هؤلاء الأشخاص فقط.
تهاجر المهارات اللينة من فئة المرغوبة تدريجياً إلى إلزامية (لتأكيد هذا ، ليس لدي بيانات موضوعية ، مجرد ملاحظة عملية). يتزايد عدد المبرمجين ، ويجب توجيههم جميعًا لتحقيق النتيجة ، وإن كان ذلك عن طريق التحكم المباشر ، وإن كان بشكل غير مباشر ، ولكن لهذا يحتاج فقط إلى مهارات ناعمة.
يبدو لي أن "أدخل تقنية المعلومات" هو تاريخ إقليمي محلي ، وهو مميز لتلك المواقع التي يختلف فيها دخل المبرمج اختلافًا كبيرًا عن دخل اختصاصي مشابه في التأهيل إلى "ليس تكنولوجيا المعلومات". في مينسك ، حيث أعيش ، هذه حركة جماهيرية بشكل عام ، أرى كل يوم إعلانات للدورات القادمة حول كيفية الوصول إلى تكنولوجيا المعلومات المطلوبة ، وتستهدف شركات التنظيف المبرمجين برسالة "هل تفهم الرمز في هذه الصورة؟ لذلك لا يمكنك تحمل تكلفة تنظيف الشقة ، وسنفعل كل شيء من أجلك ". نفس الشيء يحدث على ما يبدو في الهند. لإثبات هذا ، ليس لدي أي منهما.
بشكل عام ، سكان المبرمجين ليسوا في رأيي مهددين. لا يستحق الأمر القول أن المبرمجين الحقيقيين غير راضين عن النهار والليل ، وأن المرشحين طوال الوقت "لا يعرفون شيئًا". إنهم أذكياء وقدرة ، وربما أكثر ذكاءً وقدرة من "مبرمجين حقيقيين" ، فهم ببساطة يكتسبون المعرفة التي يتطلبها السوق المزدهرة ويضعون جانباً لاحقًا ما لم يحتاجوا إليه بعد ولن يجلبوا المنفعة في الوقت الحالي. سيتعلمون عند الضرورة ، لأنهم ما زالوا يريدون التعلم. ربما لن يكون الجميع قادرين على ذلك ، ولكن لن يحتاج الجميع إلى ذلك ، فإن السوق في المستقبل المنظور سيجعل من السهل قبول الأشخاص الذين يمكنهم تجميع مفهوم تطبيق آخر بسرعة في بعض الأطر.