[원티드 프리온보딩 데이터 분석 챌린지] Week 1-1 EDA로 분석가 공고 파헤치기 과제
목차
반응형
✔️기업이 저연차의 데이터 분석가에게 요구하는 자격요건, 우대사항은 무엇일까?
원티드 프리온보딩 데이터 분석 챌린지에서 채용공고 데이터를 진행한 프로젝트입니다.
주제 : 데이터분석가 직무의 저연차 대상 공고의주요업무, 자격요건, 우대사항분석을 통해 데이터 분석가가 되기 위해 갖춰야 할 부분을 알아보자.
데이터 출처 : 원티드 내 '데이터 분석가' 직무 채용공고(원티드 제공)
사용한 툴 : Python, Google Bigquery, Google Colab
1. 문제 상황 및 분석 가설 설정
✅ 문제 상황
1. 데이터분석가, 데이터 사이언티스트, 데이터 애널리스트, 데이터 엔지니어 등 데이터 관련 직무는 엄청 많잖아..그 중 '데이터 분석가'는 뭘 하는 사람일까? 2. 기업에서 저연차의 데이터 분석가에게 요구하는 능력, 자격요건은 뭔지 확실하게 알고 싶어! 그래야 뭘 준비할 지 아니까
✅ 분석 가설 설정 데이터분석가 직무의 저연차 대상 공고의 주요업무, 자격요건, 우대사항 분석을 통해 저연차의 데이터 분석가에게 기업이 공통적으로 요구하는 자격요건, 우대사항을 확실하게 알려줄 수 있다. → 완벽한 취업 준비 가능!
SELECT annual_from as min_annual, COUNT(*) as position
FROM `vibrant-magpie-379810.wanted_data_challenge.wanted_position`
GROUP BY ROLLUP(1)
ORDER BY 1, 2 DESC;
SELECT CASE WHEN annual_from = 0 THEN 0
WHEN annual_from BETWEEN 1 AND 2 THEN 1
WHEN annual_from BETWEEN 3 AND 5 THEN 2
WHEN annual_from >= 6 THEN 3
ELSE annual_from END AS min_annual_from
, COUNT(*) as positions
FROM `vibrant-magpie-379810.wanted_data_challenge.wanted_position`
GROUP BY 1
ORDER BY 1;
SELECT position_id
,SPLIT(SPLIT(SPLIT(jd, '주요업무')[safe_offset(1)], '자격요건')[safe_offset(1)], '우대사항')[safe_offset(0)] AS requirement
,annual_from
FROM `vibrant-magpie-379810.wanted_data_challenge.wanted_position`
WHERE SPLIT(SPLIT(SPLIT(jd, '주요업무')[safe_offset(1)], '자격요건')[safe_offset(1)], '우대사항')[safe_offset(0)] LIKE '%년 이상%'
ORDER BY 3;
3. 데이터 추출
저연차 = 최소연차가 0~2년
SELECT
position_id
, position
, SPLIT(SPLIT(jd, '주요업무')[safe_offset(1)], '자격요건')[safe_offset(0)] AS responsibilities
, SPLIT(SPLIT(SPLIT(jd, '주요업무')[safe_offset(1)], '자격요건')[safe_offset(1)], '우대사항')[safe_offset(0)] AS requirements
, SPLIT(SPLIT(SPLIT(SPLIT(jd, '주요업무')[safe_offset(1)], '자격요건')[safe_offset(1)], '우대사항')[safe_offset(1)], '혜택 및 복지')[safe_offset(0)] AS preference
FROM `vibrant-magpie-379810.wanted_data_challenge.wanted_position`
WHERE annual_from BETWEEN 0 AND 2;
4. 분석 결과 시각화(WordCloud) 및 해석
순서대로 저연차 대상 공고의 주요업무, 자격요건, 우대사항
주요업무 프로, 인사이트, 도출, 가설, 지표, 설계, 개선, 비즈니스, 개발, A/B - 분석가의 주요업무는 지표 설정, 가설 설정, 인사이트 도출, 비즈니스 개선으로 볼 수 있다. - '게임' 키워드도 크게 보이는데 이는 게임 회사에서 비즈니스 분석가 채용을 많이 한다는 것을 추측할 수 있다.
SELECT COUNT(*) AS game_keyword
FROM `vibrant-magpie-379810.wanted_data_challenge.wanted_position`
WHERE position LIKE '%게임%' OR jd LIKE '%게임%'
AND annual_from BETWEEN 0 AND 2;
자격요건 Google, Cohort, SQL, 경험, 능력, 활용, 이상, Analytics, 이해, 사용, 문제 - Google Analytics, Cohort 분석, SQL 사용, 활용 능력을 보고 있다. - 문제를 이해하고 해당 문제에 필요한 분석 방법, 능력을 어떻게 잘 활용하냐가 포인트 같다.
우대사항 R, Tableau, Google, 통계, Analytics, 경험, 이해, 활용, 사용, 수학, 구축, 시각화 - 통계, 수학 능력을 우대하는 곳이 많다. - 시각화의 경우 현업에서 Tableau를 많이 사용하고 있을 것이다. - GA, R 활용 능력을 우대하고 있다. - '구축' 키워드의 경우 파이프라인 구축(데이터 엔지니어링의 역량) 능력도 우대하는 것 같다.
5. 추가 분석 제안 및 보완점
❗ 빅쿼리에서 resonsibilities, requirement, preference 칼럼 생성 시, SPLIT의 기준으로 잡은 단어의 중복으로 인해 기존 데이터가 누락되거나 결측치가 발생하는 데이터를 고려하지 않았다. - 이를 개선할 수 있는 데이터 수집 방안이나 쿼리를 생각해보자 - 결측 데이터를 '없음'으로 처리하였는데 해당 결측치를 적정한 값으로 채울 수 있도록 개선하자(칼럼 별로 더 정확한 키워드를 출력할 수 있을 것이다) - 기업이 원티드를 통해 채용공고를 올릴 때, 주요업무/자격요건/우대사항에 대한 입력 형식을 좀 더 철저히 구분하도록(주요업무 칸에는 주요업무만, 다른 내용이 들어가거나 나머지 칸을 채우지 않을 경우 채용공고가 써지지 않도록)하면 더 정확한 분석이 가능할 것이다.
❗ 칼럼 별 Stopwords 수동 적용 - WordCloud의 결과 이미지를 보고 거를 단어를 수동으로 골라 Stopwords 처리하는 번거로움이 있다. - 공고가 많아질 경우 어떻게 하나하나 적용할까? → 이를 개선한 텍스트 분석 라이브러리를 찾아보자
❗ 저연차에 대한 애매한 기준 - 최소연차(0~2년)만 고려하고 최대연차는 고려하지 않았다. - 최소연차는 0과 2사이이지만 동시에 최대연차가 10년인 경우는 저연차로 봐야하나? - 원티드에서 신입/경력의 필터를 하나 만들어두는 것이 편할 것이다. (현재는 신입과 경력의 기준을 따로 나눠놓지 않고, 연차수로만 구분하고 있다)