heehehe / job-trend

[DE4E] 개발자 채용공고 데이터 추출 파이프라인 구축 및 응용 프로젝트
https://job-trend.streamlit.app
17 stars 2 forks source link

Job Trend

개발자 채용공고 데이터 추출 파이프라인 구축 및 응용 프로젝트 (https://job-trend.streamlit.app/)

Background

🤔 데이터 엔지니어 직무는 어떤 기술스택이 필요할까?
🧐 Python을 다룰 줄 알면 어떤 직무에서 일할 수 있을까?

Job Trend 프로젝트는 이러한 궁금증에서 시작하게 되었습니다.
각 채용공고 사이트 정보를 통해 개발자 직무별/기술스택별 유의미한 정보를 추출하여
성장을 꿈꾸는 개발자들에게 도움이 되고자 합니다 🚀

Getting Started

Prerequisites

Setup

./initialize.sh

Run

./run.sh

Architecture

Architecture

Data Sources

Extract

Load

Transform

jumpit --> content_jumpit wanted --> content_wanted jobplanet --> content_jobplanet content_jumpit --> content content_wanted --> content content_jobplanet --> content

jumpit --> company_jumpit wanted --> company_wanted jobplanet --> company_jobplanet company_jumpit --> company company_wanted --> company company_jobplanet --> company company --> content_jumpit company --> content_wanted company --> content_jobplanet


### _Batch Processing_
- `Airflow`를 통해 기반으로 일별 batch processing을 통해 데이터를 업데이트 합니다.
  - Airflow DAG 구성 방식
    ```mermaid
    flowchart LR
    wanted.get_url_list --> wanted.get_recruit_content_info --> wanted.postprocess
    jumpit.get_url_list --> jumpit.get_recruit_content_info --> jumpit.postprocess
    jobplanet.get_url_list --> jobplanet.get_recruit_content_info --> jobplanet.postprocess
    wanted.postprocess --> upload_to_bigquery
    jumpit.postprocess --> upload_to_bigquery
    jobplanet.postprocess --> upload_to_bigquery
    upload_to_bigquery --> run_dbt

Chatbot with LLM

Visualization

Redash (deprecated) - `Redash`를 통해 SQL문을 기반으로 대시보드를 생성합니다. - 직무별 상위 기술스택 및 기술스택별 상위 직무 등의 정보를 Bar 및 Pie chart 뿐만 아니라, Sankey 및 Sunburst Sequence chart 등을 통해 제공합니다. - 직무(JOB), 기술스택(TECH STACK), 마감일(DEADLINE) parameter를 통해 동적으로 반응하는 대시보드를 구현합니다. ![Redash Dashboard](./img/redash_dashboard.jpg)