Создание удаленной работы ведет к гораздо большему количеству кандидатов (часть 1 из 3: обработка данных и EDA)
Неудивительно, что возможность удаленной работы вместо работы на месте вызывает больший интерес к ней. Наряду с расширенным пулом кандидатов предпочтения также, вероятно, в значительной степени определяют эту разницу. По данным Gallup , 6% сотрудников, способных работать удаленно, предпочитают работать исключительно на месте, а 34% предпочитают работать полностью удаленно. (60% предпочитают гибридную схему.)
Но каков размер этого эффекта? Что может ожидать компания на данном рынке, в данной отрасли, нанимая на конкретную должность, если она открывает возможность трудоустройства кандидатам, работающим практически из любого места, а не только тем, кто живет поблизости? Я попытался ответить на этот вопрос, собрав и проанализировав данные о вакансиях из LinkedIn.
Коллекция
Чтобы решить вышеуказанную тему эмпирически, я определил LinkedIn как полезный источник данных. В настоящее время большинство компаний, публикующих вакансии на сайте, указывают, является ли организация работы на месте, гибридной или удаленной, а также значения других поясняющих переменных, таких как название должности, рынок и продолжительность публикации. Важно отметить, что он также предоставляет премиальным подписчикам информацию об интересе соискателей в виде числа соискателей.
Я оптимизировал процесс сбора данных с помощью нескольких библиотек программирования Python, включая инструмент автоматизации веб-браузера Selenium и pandas, модуль обработки и анализа данных. Систематическая идентификация и регистрация значений вышеупомянутых переменных происходила с помощью XPath, языка, который можно использовать для запроса содержимого HTML.
Хотя мои первоначальные усилия по сбору данных были очень широкими (единственное ограничение заключалось в том, что сообщения должны были быть о вакансиях, базирующихся в Соединенных Штатах), вначале я решил сосредоточиться на более крупных компаниях, где, казалось, была большая неоднородность в моей переменной обработки (т.е. несколько распределенное сочетание публикаций для локальных, гибридных и удаленных рабочих мест). Такой подход сделал мою конечную выборку гораздо более репрезентативной для сообщений от компаний с более чем 10 000 сотрудников, как я покажу позже ниже.
Уборка
После сбора данные требовали тщательной обработки и очистки. К счастью, однако, моя переменная обработки, удаленность, была очень надежно доступна с одним предположением — что вакансии для объявлений, не указывающих на договоренность о работе, на самом деле находятся на месте — и дополнительный этап обработки. Для большинства объявлений об организации работы надежно указывалось в одном стандартном месте в объявлении, рядом с названием должности. Однако в некоторых сообщениях указывалось только на организацию работы.в самом названии должности, например, «Инженер-программист (удаленно)». Поэтому данные обрабатывались таким образом, чтобы этот тип информации в конечном итоге надлежащим образом отражался в векторах лечения. Распределения этой переменной в данных до и после выполнения этих и многих других шагов обработки (остальные из которых описаны ниже) приведены непосредственно ниже.
Другие предпринятые шаги обработки включали удаление наблюдений, в которых отсутствовали значения для определенных ключевых переменных. Объявления о вакансиях, для которых не было собрано значение длительности публикации, были удалены, так как эта переменная была необходима для стандартизации подсчета заявок как дневных ставок. Аналогичным образом, сообщения, для которых не было собрано число кандидатов, также были исключены. Соответственно, данные о вакансиях, появившихся всего через несколько секунд после их публикации, также не учитывались.
Также была проделана работа по отсеиванию дубликатов. Некоторые публикации либо встречались несколько раз в процессе сбора данных, либо несколько раз публиковались в LinkedIn. Чтобы решить эту проблему, я идентифицировал дубликаты на основе названия должности, компании, значения удаленности и местоположения, оставив только тот дубликат, который был опубликован дольше всего, и исключив все остальные.
Наконец, было предпринято много других шагов для извлечения переменных из относительно неструктурированных данных, таких как текст описания работы. К ним относилась более стандартизированная информация, такая как уровень опыта (указанный, если вообще есть, как стажировка, начальный уровень, ассоциированный, средний уровень, директор или руководитель), размер компании (указанный как один из 1–10 сотрудников, 11–50 сотрудников). , 51–200 сотрудников и т. д., вплоть до 10 001+ сотрудников), отрасль и местоположение. В то время как последние три были в значительной степени нетронутыми, уровень опыта не был таким: около трети сообщений не указывало ни одно из перечисленных выше значений, предоставленных LinkedIn.
Требуемый многолетний опыт для данной роли был переменной, полученной из текста описания работы, которая в конечном итоге послужила лучшим способом включить уровень квалификации в мой окончательный план исследования. Для извлечения этих данных было использовано несколько шагов и предположений, наиболее важные из которых проиллюстрированы в приведенной ниже части кода. Например, одна вещь, которую мне нужно было сделать, это преобразовать текстовые представления чисел в описаниях вакансий в цифры. Кроме того, я использовал упрощающее предположение, что компаниям не требуется более 17 лет опыта для должности. В моих данных, скорее всего, есть несколько исключений из этого, но они, вероятно, очень редки. Более того, это позволило мне избежать путаницы в требованиях к возрасту в тексте описания работы — которые часто даются как «должен быть 18 лет» — за требования к опыту. Окончательно, Я также стремился обнаружить как можно больше способов выражения этого требования к опыту с помощью приведенных ниже шаблонов регулярных выражений. Мой подход к описаниям должностей, содержащим несколько шаблонов (например, «три с лишним года опыта управления продуктом и пять с лишним лет в разработке программного обеспечения»), заключался в том, чтобы взять максимальное количество лет. Мой код полностью связанздесь .
Я никак не могу учесть все способы, которыми требуемая квалификация может быть указана в должностной инструкции, поэтому результат, вероятно, лучше всего называть оценками. Тем не менее, он прошел многочисленные проверки различных описаний вакансий, а также довольно хорошо отслеживается с помощью предоставленной LinkedIn, но неполной переменной уровня опыта. Например, я считаю, что для должностей начального уровня в LinkedIn в среднем требуется около 2,5 лет опыта, в то время как для должностей уровня директора или выше, как правило, требуется более 6 лет опыта.
Я также проанализировал информацию о местоположении из единого местоположения в объявлениях о вакансиях и смог вывести стандартизированные географические рынки труда. В некоторых случаях требовалось специальное рассмотрение и суждение, например, рассматривать ли Миннеаполис и Сент-Пол, штат Миннесота, как один рынок или два, и следует ли стандартизировать ссылки на конкретный город (например, Лос-Анджелес) и ссылки на его общую территорию (например, столичный район Лос-Анджелеса). ). В случаях, подобных этим двум примерам, я обычно определял рынки более широко, чем менее.
Наконец, я также разработал переменные, отражающие любую информацию о зарплате, предоставленную объявлением о вакансии. Если он присутствует, он указывается в виде почасового или годового диапазона или, в небольшой части случаев, в виде гарантированной ставки (например, «20 долларов США в час»). В результате я смог разобрать минимальную, максимальную и медианную переменные диапазона оплаты для использования в своем анализе. В большинстве сообщений не содержалась информация о зарплате, поэтому для этих переменных были присвоены значения 0.
Хотя были предприняты усилия для восстановления другой информации, такой как требования к профессиональному образованию и упоминания о льготах (как показано в моем полном коде ), я описываю только вышеперечисленное, потому что именно эти переменные послужили моему окончательному плану исследования, который я объясню позже.
Исследовательский анализ данных
Сначала легко просмотреть сводную статистику по стоимости лечения. Мы можем быстро увидеть, что удаленность работы действительно, по крайней мере, коррелирует с большим количеством соискателей в день. Мы также видим ниже, что приложения в день сильно перекошены.
Но локальные, гибридные и удаленные рабочие места также различаются другими соответствующими переменными, по крайней мере, в моем наборе данных. Например, ниже мы видим, что объявления о вакансиях с разными условиями работы также имеют разную информацию о зарплате. Удаленные объявления о вакансиях содержат гораздо более высокий процент информации о зарплате, чем объявления о вакансиях на месте, и по какой-то причине среди объявлений, которые действительно предлагают информацию о зарплате, гибридные объявления, как правило, имеют гораздо более высокие цифры.
Существуют также пробелы в среднем требуемом стаже работы в зависимости от значений лечения. В частности, я считаю, что для удаленной работы требуется примерно на год больше опыта, чем для работы на месте.
Локальные, гибридные и удаленные объявления о вакансиях также различаются по важным категориальным переменным. Вот какая часть выборки каждой группы лечения представлена каждой из пяти наиболее часто встречающихся компаний, категорий размера компаний, отраслей и рынков в наборе данных. Например, удаленные публикации непропорционально подходят для вакансий в PwC, а смешанные публикации — непропорционально для вакансий в Deloitte. (Кстати, на самом деле в моем наборе данных нет вакансий в Deloitte, предназначенных исключительно для работы на месте.)
Также возникает вопрос о том, насколько должности обычно различаются по названию, ключевому параметру поиска работы и отражению должностных функций. Один из способов визуализировать это — использовать облака слов.
Мы можем заметить различия во всех трех облаках слов, некоторые из которых — расположение, цвет и т. д. — не важны, но другие более красноречивы. Например, совершенно очевидно, что роли разработчиков программного обеспечения составляют больший процент удаленных объявлений о вакансиях, чем для локальных и гибридных объявлений. Еще одна вещь, которую следует отметить, это то, что, как уже упоминалось, объявления об удаленных вакансиях часто рекламируют эту договоренность в самом названии должности, к чему я обращусь в своем анализе позже.
Мы можем более эмпирически наблюдать различия в названиях должностей в зависимости от статуса лечения, исследуя, как часто определенные униграммы и биграммы появляются в каждой подвыборке лечения. Ниже я показываю, что объявления об удаленных вакансиях относятся к непропорционально большому количеству должностей разработчиков программного обеспечения и непропорционально малому числу должностей техников, помимо других диспропорций.
Этот предварительный анализ данных показывает, что сильная корреляция между удаленностью работы и большим количеством кандидатов в день, показанная ранее, на самом деле может быть вызвана этими другими скрытыми различиями. Поэтому, чтобы определить причинно-следственную связь, мой план исследования должен был учитывать это. Я начинаю с этого во второй части .