Skip to content

채용 정보를 크롤링해 구독자들의 이메일로 보내주는 서비스

Notifications You must be signed in to change notification settings

kimtaehoonDev/job-posting-collector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

새로 올라온 채용공고를 구독자들에게 보내주는 서비스

공지

현재 AWS 비용 폭탄13만원을 맞고 서버를 내렸습니다. 😢
채용공고를 받고 싶으시다면 [email protected]으로 연락주세요.
수동으로 크롤링 돌리고 있습니다.

대상

Spring을 사용하는 백엔드 분야 취업 준비생

목적

nhn 아카데미를 수료한 뒤, 취업을 희망하는 저와 동기들을 위해 만든 프로젝트입니다.
매일 채용 사이트들을 찾아보는 건 꽤나 귀찮고 에너지가 드는 일입니다.
따라서 현재 시점을 기준으로, 백엔드 신입을 뽑는 회사들을 한 눈에 보여주는 서비스입니다.

구현 기능

크롤링

  • 로켓펀치, 원티드, 잡플래닛, 점핏 에서 채용공고들을 크롤링합니다.
  • 템플릿 메서드 패턴을 활용하여 확장을 용이하게 설계하였습니다.
  • 스케줄러를 사용해 일정 시간이 되면 자동으로 크롤링이 일어나 DB를 갱신하도록 만들었습니다.

이메일 구독 및 전송

  • 사이트에 들어오기가 귀찮다는 의견을 받아, 새로 올라온 채용공고를 구독자들의 이메일로 보내주는 기능을 추가하였습니다.
  • 타임리프 엔진을 사용해 HTML 파일을 이메일로 보낼 수 있도록 만들었습니다.

보안

  • 이메일 소유주 판별을 위해 DB에 이메일과 비밀번호를 저장했습니다.
  • 단방향 암호화를 적용해 보안을 강화하였습니다.
  • 통신 과정에서 비밀번호가 유출되지 않도록 HTTPS를 적용하였습니다.

이메일 인증

  • 배포 이후 DB에 존재하지 않는 이메일이 등록되는 경우가 생겨, 인증코드를 사용해 사용자의 이메일이 적절한지 판별합니다.
  • Redis를 사용해 일정 시간이 지나면 인증코드가 만료되도록 구현하였습니다.

개선점

  • 생각보다 채용 공고가 잘 올라오지 않습니다. 사이트들을 더 추가할 필요가 있습니다.
  • 화면의 디자인이 깔끔하지 않습니다. 저와 제 지인들이 사용하는 목적이라 디자인에 크게 의미를 두지 않았습니다. 추후 개선할 계획입니다.

시퀀스 다이어그램

인증코드 발송 시나리오

image

인증코드 검증 시나리오

image

구독자 등록 시나리오

image

채용공고 전송 시나리오

image

아키텍처

image

About

채용 정보를 크롤링해 구독자들의 이메일로 보내주는 서비스

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published