피드로 돌아가기
Dev.toFrontend
원문 읽기
Vanilla JS와 XML-tagged Prompt 기반의 고성능 이력서 분석 확장 프로그램 구현
I built a Chrome extension that tells you exactly why your resume isn't getting callbacks
AI 요약
Context
채용 공고 분석 시 발생하는 잦은 탭 전환과 수동 복사-붙여넣기 과정의 UX 병목 발생. 다양한 구인 플랫폼의 비정형 데이터 구조로 인한 효율적인 JD 추출의 어려움 직면.
Technical Solution
- Manifest V3의 엄격한 CSP 규칙 준수 및 빌드 단계 제거를 위한 Vanilla JS 채택
- PDF.js 라이브러리를 통한 클라이언트 사이드 Resume Parsing 구현
- XML-tagged Prompt 설계를 통한 사용자 입력값과 지시문 분리 및 Prompt Injection 방지
- 플랫폼별 상이한 DOM 구조 해결을 위해 17개 사이트 전용 PAGE_RULES 및 Generic Fallback 로직 구축
- Supabase JWT 기반의 ES256 인증 체계 및 401 에러 시 Auto-refresh 메커니즘 적용
- 세션 단위 데이터 처리 방식을 통한 Resume 텍스트의 영구 저장 배제 및 개인정보 보호 강화
실천 포인트
- Manifest V3 환경에서는 복잡한 프레임워크보다 Vanilla JS 사용이 CSP 제약 해결에 유리한지 검토 - LLM 연동 시 입력 데이터 간 경계를 명확히 하기 위해 XML 태그 기반의 구조화된 프롬프트 적용 - 웹 스크래핑 설계 시 플랫폼별 전용 룰셋과 공통 폴백(Fallback) 로직을 분리하여 확장성 확보