Fazer um trabalho remoto leva a muito, muito mais candidatos (parte 1 de 3: Data Wrangling e EDA)

May 13 2023
Não deveria ser uma surpresa que uma oportunidade de trabalho para trabalho remoto em vez de trabalho no local levasse a mais interesse por ela. Juntamente com um amplo grupo de candidatos, as preferências também provavelmente determinam grande parte dessa diferença.
Fonte

Não deveria ser uma surpresa que uma oportunidade de trabalho para trabalho remoto em vez de trabalho no local levasse a mais interesse por ela. Juntamente com um amplo grupo de candidatos, as preferências também provavelmente determinam grande parte dessa diferença. De acordo com a Gallup , 6% dos funcionários remotos preferem trabalhar exclusivamente no local, mas 34% preferem trabalhar totalmente remotamente. (60% preferem um arranjo híbrido.)

Mas qual é o tamanho desse efeito? O que uma empresa em um determinado mercado, em um determinado setor, contratando para uma função específica, pode esperar se abrir uma oportunidade de emprego para candidatos que trabalham em praticamente qualquer lugar, em vez de apenas para aqueles que moram nas proximidades? Procurei responder a essa pergunta coletando e analisando dados de anúncios de emprego do LinkedIn.

Coleção

Para abordar o tópico acima empiricamente, identifiquei o LinkedIn como uma fonte de dados útil. Atualmente, a maioria das empresas que divulgam vagas no site especificam se a modalidade de trabalho é presencial, híbrida ou remota, além de valores para outras variáveis ​​explicativas como cargo, mercado e duração postada. Crucialmente, ele também fornece informações aos assinantes premium sobre o interesse do candidato na forma de um número de contagem de candidatos.

Simplifiquei meu processo de coleta de dados com algumas bibliotecas de programação Python, incluindo a ferramenta de automação de navegador da Web Selenium e pandas, um módulo de manipulação e análise de dados. A identificação sistemática e o registro dos valores das variáveis ​​acima mencionadas ocorreram por meio do uso do XPath, uma linguagem que pode ser usada para consultar o conteúdo HTML.

Embora meus esforços iniciais de cobrança fossem muito amplos - a única limitação era que as postagens tinham que ser para empregos nos Estados Unidos - no início, decidi me concentrar em empresas maiores, onde parecia haver mais heterogeneidade em minha variável de tratamento (ou seja, uma mistura um tanto distribuída de postagens para trabalhos no local, híbridos e remotos). Essa abordagem tornou minha eventual amostra muito mais representativa de postagens de empresas com mais de 10.000 funcionários, como mostro mais adiante.

Limpeza

Uma vez coletados, os dados exigiam uma boa quantidade de processamento e limpeza. Felizmente, no entanto, minha variável de tratamento, afastamento, estava disponível de maneira muito confiável com uma suposição - que os trabalhos para postagens que não indicam um acordo de trabalho estão de fato no local - e uma etapa de processamento adicional. Para a maioria das postagens, o arranjo de trabalho foi fornecido de forma confiável em um local padronizado dentro da postagem, próximo ao cargo. No entanto, algumas postagens indicavam apenas arranjo de trabalhono próprio título do trabalho, por exemplo, “Engenheiro de Software (remoto)”. Portanto, os dados foram processados ​​para que esse tipo de informação acabasse refletindo adequadamente nos vetores de tratamento. As distribuições dessa variável nos dados antes e depois dessas e de muitas outras etapas de processamento (as demais são descritas abaixo) são fornecidas diretamente abaixo.

Outras etapas de processamento realizadas envolveram a eliminação de observações que não tinham valores para certas variáveis-chave. As postagens de trabalho para as quais um valor postado de duração não foi coletado foram descartadas, pois essa variável era necessária para padronizar as contagens de aplicativos como taxas diárias. Da mesma forma, as postagens para as quais um número de contagem de candidatos não foi coletado também foram descartadas. Da mesma forma, os dados sobre postagens de emprego ocorridos apenas alguns segundos depois de serem postados também foram desconsiderados.

Trabalho também foi feito para filtrar duplicatas. Algumas postagens aconteceram várias vezes no processo de coleta de dados ou postadas no LinkedIn várias vezes. Para resolver isso, identifiquei duplicatas com base no cargo, empresa, valor do afastamento e localização, mantendo apenas a duplicata postada há mais tempo e descartando todas as outras.

Finalmente, muitas outras etapas foram tomadas para recuperar variáveis ​​de dados relativamente não estruturados, como texto de descrição de cargo. Isso incluía informações mais padronizadas, como nível de experiência (dado, se for o caso, como estágio, nível de entrada, associado, nível médio, diretor ou executivo), tamanho da empresa (dado como um de 1 a 10 funcionários, 11 a 50 funcionários , 51–200 funcionários, etc., até mais de 10.001 funcionários), indústria e localização. Embora os três últimos estivessem praticamente intactos, o nível de experiência não estava, com cerca de um terço das postagens não indicando um dos valores fornecidos pelo LinkedIn listados acima.

Os anos de experiência necessários para uma determinada função foi uma variável derivada do texto da descrição do trabalho que acabou servindo como uma maneira melhor de incorporar o nível de qualificação em meu projeto de pesquisa final. Para extrair esses dados, várias etapas e suposições, as mais importantes das quais são ilustradas na parte do código abaixo, foram usadas. Por exemplo, uma coisa que eu precisava fazer era transformar representações de texto de números em descrições de trabalho em dígitos. Além disso, uma suposição simplificadora que usei foi que as empresas não exigiriam mais de 17 anos de experiência para uma função. Provavelmente, existem algumas exceções a isso em meus dados, mas provavelmente são muito raras. Além disso, isso me permitiu evitar confundir os requisitos de idade no texto da descrição do trabalho - muitas vezes dado como "deve ter 18 anos de idade" - com os requisitos de experiência. Finalmente, Também me esforcei para detectar o máximo possível de maneiras de expressar esse requisito de experiência com os padrões de expressão regular abaixo. Minha abordagem com descrições de cargos contendo vários padrões (por exemplo, “mais de três anos de experiência em gerenciamento de produtos junto com mais de cinco anos em desenvolvimento de software”) era usar o número máximo de anos fornecido. Meu código em sua totalidade está vinculadoaqui .

Parte do código 1: referência de texto para dígito e padrões para identificar

Não há como eu explicar todas as maneiras pelas quais as qualificações exigidas podem ser fornecidas em uma descrição de cargo, portanto, a saída provavelmente é melhor chamada de estimativas. No entanto, ele passou por várias verificações de várias descrições de trabalho e também rastreou muito bem com a variável de nível de experiência fornecida pelo LinkedIn, mas incompleta. Por exemplo, acho que as funções consideradas básicas no LinkedIn exigem em média cerca de 2,5 anos de experiência, enquanto as de nível de diretor ou superior tendem a exigir mais de 6 anos de experiência.

Também analisei as informações de localização de um local uniforme nas postagens de emprego e consegui derivar mercados de trabalho geográficos padronizados. Alguns casos exigiam tratamento especial e julgamentos, como considerar Minneapolis e Saint Paul, Minnesota como um mercado ou dois e padronizar referências a uma cidade específica (por exemplo, Los Angeles) e referências à sua área geral (por exemplo, Área Metropolitana de Los Angeles ). Em casos como esses dois exemplos, normalmente decidi definir mercados de forma mais ampla, em vez de menos.

Por fim, também criei variáveis ​​que refletem qualquer informação salarial fornecida por um anúncio de emprego. Quando presente, é fornecido como uma faixa horária ou anual ou, em uma pequena fração dos casos, como uma taxa garantida (por exemplo, “US$ 20/hora”). Como resultado, pude analisar as variáveis ​​de piso, teto e mediana da faixa salarial para uso em minha análise. A maioria das postagens não fornecia informações salariais e, portanto, recebia valores de 0 para essas variáveis.

Embora tenham sido feitos esforços para recuperar outras informações, como requisitos de educação profissional e menções de benefícios (conforme mostrado em meu código completo ), descrevo apenas o acima porque essas foram as variáveis ​​que serviram ao meu projeto de pesquisa final, que explico mais adiante.

Análise exploratória de dados

É fácil ver primeiro as estatísticas resumidas por valor de tratamento. Podemos ver rapidamente que o trabalho remoto está, de fato, pelo menos correlacionado com mais candidatos por dia. Também vemos abaixo que os aplicativos por dia são fortemente distorcidos.

Mas os trabalhos no local, híbridos e remotos também diferem em outras variáveis ​​relevantes, pelo menos no meu conjunto de dados. Por exemplo, podemos ver abaixo que as postagens de trabalho com diferentes acordos de trabalho também têm informações salariais diferentes. As postagens de trabalho remotas incluem informações salariais em uma porcentagem muito maior do que as postagens de trabalho no local e, por qualquer motivo, entre as postagens que oferecem informações salariais, as híbridas tendem a ter números muito mais altos.

Há também lacunas na média estimada de anos de experiência necessários em relação aos valores de tratamento. Em particular, acho que os trabalhos remotos exigem cerca de um ano a mais de experiência do que os trabalhos no local.

As postagens de trabalho no local, híbridas e remotas também diferem em variáveis ​​categóricas importantes. Aqui está quanto de cada amostra de grupo de tratamento é representado por cada uma das cinco empresas, categorias de tamanho de empresa, setores e mercados de ocorrência mais frequente no conjunto de dados. Por exemplo, postagens remotas são desproporcionais para empregos na PwC e postagens híbridas são desproporcionais para empregos na Deloitte. (Aliás, de fato, nenhuma vaga de emprego na Deloitte em meu conjunto de dados é para trabalho estritamente no local.)

Há também uma questão de quanto as postagens tendem a diferir por título, um parâmetro-chave de busca de emprego e reflexo da função do trabalho. Uma maneira de visualizar isso é por meio de nuvens de palavras.

Palavras de título de anúncio de emprego comuns no local
Palavras de título de anúncio de emprego híbrido comuns
Palavras comuns do título de postagem de emprego remoto

Podemos notar diferenças em todas as três nuvens de palavras, algumas das quais - localização, cor etc. - não são importantes, mas outras são mais reveladoras. Por exemplo, está bastante claro que as funções de engenharia de software são uma porcentagem maior de postagens de trabalho remotas do que para postagens no local e híbridas. Outra coisa a observar é que, conforme mencionado, as postagens de trabalho remotas costumam anunciar esse arranjo no próprio título do trabalho, algo que abordarei em minha análise posteriormente.

Podemos observar mais empiricamente as diferenças de cargos por status de tratamento, explorando a frequência com que certos unigramas e bigramas aparecem em cada subamostra de tratamento. Abaixo, mostro que as postagens de trabalho remoto são para um número desproporcionalmente alto de funções de engenharia de software e um número desproporcionalmente baixo de funções de técnico, entre outros desequilíbrios.

O que essa análise exploratória de dados revela é que a forte correlação entre o afastamento do trabalho e o maior número de candidatos por dia mostrado anteriormente pode, na verdade, ser impulsionada por essas outras diferenças ocultas. Portanto, para identificar a causalidade, meu projeto de pesquisa precisava levar isso em conta. Começo com isso na Parte 2 .