Использование результатов опроса разработчиков для ответа на три вопроса, связанных с возрастом обучения программированию

«… К тому времени, когда я закончу школу, мне будет пятьдесят? Он улыбнулся.
"Тебе все равно будет пятьдесят"

- Эдит Ева Эгер, Выбор: примите возможное

Все мы проходим через разные фазы, когда стремимся заново изобрести себя или начать что-то, что может полностью изменить направление нашей жизни. Естественно, резкое изменение такого масштаба не только ошеломляет, но может потребовать много времени и, возможно, ТЯЖЕЛОЙ работы.

Поскольку мне было за тридцать и которая в настоящее время переходит в науку о данных, этот вопрос был особенно актуален.

Данные

S tackOverflow Survey - это ежегодное мероприятие, предназначенное для разработчиков и людей, которые пишут код по всему миру.

В этой статье я буду использовать данные опроса 2020 года и попытаюсь ответить на три вопроса;

  • Вы слишком стары, чтобы писать код?
  • Какие факторы больше всего способствуют опозданию к написанию кода?
  • Каковы тонкие или очевидные последствия тех, кто поздно перешел на стиль жизни кодирования?

1. Вы слишком стары, чтобы научиться программировать?

Ниже представлена ​​столбиковая диаграмма распределения по возрастным группам.

Если вы попадаете в одну из возрастных групп на изображении выше и думаете о том, чтобы начать писать код, вы не одиноки.

70% респондентов начали программировать в подростковом возрасте, а 25% - в возрасте 20 лет. Те, кто начал после 30 лет, составляют меньшинство.

Так что же отличает тех, кто начал позже, от остальных? Это было основной темой моего второго вопроса.

2. Какие факторы способствуют опозданию к написанию кода?

«В большинстве случаев успех зависит от знания того, сколько времени нужно для достижения успеха».

- Шарль де Монтескье

В этом вопросе я искал общие факторы среди поздних последователей кода, которые, возможно, способствовали этому. Итак, я разделил данные на две части; те, кто начал программировать младше 30 лет, и те, кто старше 30 лет.

Четыре характеристики показали существенные различия между двумя группами.

  • Географический регион

Согласно диаграмме выше, большинство разработчиков родом из Европы, за которой следует Северная Америка, а на третьем месте - Азия.

Из двух диаграмм выше видно, что большая часть американцев начала программировать после 30 лет. Это могло произойти из-за повышения квалификации для работы, требующей программирования, или из-за того, что вы взяли ее в качестве хобби.

Еще одно интересное замечание касалось того, что Азия оказалась на третьем месте на левом графике (те, которые начинали менее 30 лет). Видя, что более 90% респондентов в этом опросе в настоящее время были моложе 30 лет, мы можем сделать вывод, что многие азиаты, особенно индийцы, начинают программировать в молодом возрасте.

Фактически, по данным Progressive Policy Institute, Evans Data сообщает, что к 2024 году Индия обгонит США в качестве крупнейшего в мире центра застройки.

  • Пол

Из своего анализа я заметил, что женщины написали свой первый код позже, чем мужчины. В среднем женщины писали свой первый код в 17 лет, а мужчины - в 15 лет.

Основа карьеры STEM закладывается в раннем возрасте. Этот журнал рекомендует прилагать больше усилий для привлечения женщин к программированию, ориентируясь на них в более молодом возрасте. Это происходит за счет создания атмосферы поощрения в семьях и школах, которая разрушает негативные стереотипы о возможностях женщин в этих сложных областях.

На диаграмме ниже показано, как пол распределяется между двумя интересующими нас группами.

Мы видим, что доля женщин выше среди тех, кто поздно научился программировать. Это может означать, что женщины, которые становятся разработчиками, делают это позже, чем их коллеги-мужчины.

  • Уровень образования

Из диаграммы выше мы видим, что степень бакалавра доминирует среди участников как высший уровень образования.

Мы также отмечаем более поздно кодировщиков продвинутых сертификатов, таких как степени магистра, младшего специалиста и доктора. Время, потраченное на получение этих ученых степеней, может способствовать тому, что респонденты поздно начнут программировать.

  • Бакалавриат

Этот сюжет имел наибольшее различие между двумя группами. Мы видим, как степени информатики и программного обеспечения преобладают над специальностями колледжа для начинающих программистов - 63%, в то время как только 22% поздних программистов изучали эту специальность.

Мы также отмечаем, что дисциплины, связанные с бизнесом, занимают третье место среди тех, кто поздно принимает код. Это еще раз демонстрирует, как принятие мажоров, не связанных с кодированием, задерживает время, необходимое для перехода к активному кодированию.

3. Какие тонкие или очевидные последствия характерны для тех, кто поздно перешел на стиль жизни кодирования?

Мой третий вопрос касался того, чем сложилась жизнь разработчика для поздних кодировщиков по сравнению с ранними. Я рассматривал такие переменные, как количество и типы приобретенных навыков, распределение заработной платы и удовлетворенность работой профессиональных разработчиков.

  • Текущая профессия

В этом вопросе респондентам предлагалось выбрать сегодняшнюю ситуацию разработчика.

Результаты показали, что 75% были профессиональными разработчиками, 10% были студентами, обучающимися программированию, и 2% вышли на пенсию. Ниже приведена диаграмма распределения людей, которые начали программировать до 30 лет, по сравнению с остальными.

Что касается поздних кодировщиков, то мы видим, что все больше непрофессиональных разработчиков работают с кодом из-за рабочих требований.

Мы также видим намного больше любителей, не являющихся профессиональными программистами. Это могут быть люди, которые рано научились программировать, но позже сменили профессию на некодирующую.

  • Всего приобретенных навыков

В этом вопросе опроса респондентам предлагалось выбрать свой тип (ы) или навыки разработчика, такие как разработчик полного цикла, веб, мобильные устройства, базы данных, инженеры данных и многие другие. Участники могли выбрать несколько типов из 23 предложенных вариантов.

В среднем большинство разработчиков выбирают из списка 2 вакансии.

Блок-схема ниже показывает количество навыков, приобретенных двумя группами.

В группе «Нет» (ранние кодировщики) 75% респондентов имели 4 типа работы по сравнению с 3 типами для поздних кодировщиков.

  • Типы приобретенных навыков

Глядя дальше на данные, я заметил, что типы разработчиков немного различались для ранних кодировщиков и поздних кодировщиков.

Мы видим, что back-end и full-stack разработчики доминируют в группе ранних программистов, в то время как front-end и full-stack Разработчики возглавляют группу покойных программистов.

Ниже представлена ​​диаграмма взаимосвязи (корреляции) возраста, когда участники начали активно программировать, и типа приобретенных навыков. Длина линий показывает силу взаимосвязи в положительном (зеленый) или отрицательном (красный) направлении.

Мы видим, что аналитики данных, маркетологи и интерфейсные разработчики более склонны к позднему обучению, поскольку они положительно коррелируют с возрастом активного кодирования ».

С другой стороны, DevOps специалисты , серверные разработчики , и настольные или корпоративные разработчики - менее вероятно для них. Это может означать, что некоторые профессиональные навыки требуют многолетнего опыта, поэтому те, кто начал рано, имеют преимущество.

Люди, которые начинают программировать поздно, могут начать с менее технических навыков, чтобы получить работу кодировщика, а затем углубиться в другие области по мере накопления опыта.

  • Удовлетворенность работой

Эта функция спрашивала, насколько респондент удовлетворен своей текущей работой.

В целом мы видим, что многие люди в целом удовлетворены своей работой, и между этими двумя группами нет особых различий.

  • Годы профессиональному разработчику

Это относится к годам, которые требуются, чтобы научиться программировать и получить работу разработчика. Ниже приведена сводная таблица распределений для ранних и поздних программистов.

График выше показывает, что поздним кодировщикам требуется значительно меньше времени, чтобы начать профессиональную работу в качестве кодировщиков. Среднее время для поздних кодировщиков составляет около 2 лет, а для начинающих - 5 лет.

Опять же, работающие люди могут начать программировать как часть работы и легко поменяются ролями после приобретения новых навыков. Они также могут использовать нетрадиционные каналы онлайн-обучения или учебных лагерей, которые занимают меньше времени, чем получение степени в колледже, когда они были моложе.

  • Распределение заработной платы

Заработные платы в этих двух группах кажутся равными. Средняя годовая зарплата составляла 102 000 долларов США для группы «Нет» и 121 000 долларов США для группы «Да».

Заключение

В этой статье мы рассмотрели ежегодный опрос для программистов, чтобы получить представление о людях, которые учатся программировать после 30 лет.

Мы узнали, что большинство профессиональных разработчиков начали программировать в подростковом возрасте, но у нас все еще есть другие, которые начинают писать позже. Некоторыми способствующими факторами были бакалавриат и пол, а некоторые эффекты были короче времени на профессиональном уровне и меньше навыков.

Я надеюсь, что идеи, представленные в статье, воодушевят любого, кто желает стать частью сообщества разработчиков в любом возрасте, и проливают свет на то, чего ожидать.

Ознакомьтесь с полным кодом здесь на GitHub.