프로젝트 소개
ms-job-watcher는 GitHub Actions에서 자동으로 실행되는 일자리 알림 파이프라인입니다. 이 파이프라인은 Microsoft, NVIDIA, Amazon, Goldman Sachs, IBM, Oracle 등 6개의 주요 기업 채용 API와 Greenhouse, Lever, SmartRecruiters, Workday, Ashby 플랫폼을 통해 약 1,200개의 큐레이션된 ATS 직업 게시판을 주기적으로 폴링합니다. 필터링 로직은 규칙 기반 분류를 사용하여 인턴십, QA, 영업, 마케팅, 보안 서류, 시민권 요구, 스폰싱 불가능한 위치를 하드 제외하고, DevOps/운영 역할은 강력한 SWE 신호가 함께 있는 경우에만 소프트 제외합니다. 결과는 저장된 JSON 상태와 중복 제거되며, 새로운 매칭 결과는 Gmail SMTP를 통해 요약 형식으로 이메일로 전송됩니다.
파이프라인은 두 개의 독립적인 모드로 작동합니다: 메인 파이프라인은 약 10분 간격으로 기업 API를 확인하고, 보드 파이프라인은 약 30분 간격으로 커서 기반 배치(200개씩)로 ATS 게시판을 스캔하여 GitHub Actions 타임아웃 내에 전체 스캔을 완료합니다. 보드는 ThreadPoolExecutor와 플랫폼별 세마포어를 사용하여 병렬로 가져옵니다. 404/410 오류를 반환하는 유효하지 않은 게시판은 자동으로 건너뜁니다. Flask 대시보드를 통해 조회된 일자리와 실행 기록을 확인할 수 있습니다.
기술 스택: Python 3.11, requests, BeautifulSoup4, GitHub Actions, Gmail SMTP, Flask. 상태는 원자적 JSON 파일로 저장되어 레포지토리에 커밋되어 임시 러너에서도 유지됩니다. 프로덕션 스케줄링은 cron-job.org를 사용하여 workflow_dispatch API를 호출하여 신뢰성 있는 짧은 간격으로 작동합니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.