--- name: write-integrated description: JD 기반 통합 지원서 HTML 작성이 필요할 때 --- # 통합 지원서 작성 (경력기술서 + 지원동기) > **용도**: JD(채용공고) 분석 후 맞춤형 통합 지원서 HTML 작성 > **참조 템플릿**: `templates/export/pdf/integrated-application.html` --- ## 개요 JD 분석 결과를 바탕으로 경력기술서와 지원동기를 하나의 HTML 문서로 통합 작성합니다. ### 문서 구성 ``` Page 1: Summary, Core Competencies, Skills, Work Experience Page 2-3: 주요 프로젝트 상세 (STAR 형식) Page 4: 추가 프로젝트 + 이전 회사 경력 Page 5: 지원 동기 + Education ``` ### 사전 요구사항 1. `/jd-match` 실행 완료 (회사 조사, JD 분석, 경험 매칭) 2. 원본 데이터 확인 (`docs/career/my_career_data.md`) --- ## HTML 템플릿 스타일 가이드 ### 페이지 설정 ```css @page { size: A4; margin: 0; } * { margin: 0; padding: 0; box-sizing: border-box; -webkit-print-color-adjust: exact !important; print-color-adjust: exact !important; } body { font-family: 'Malgun Gothic', -apple-system, sans-serif; font-size: 9pt; line-height: 1.5; color: #222; } .page { width: 210mm; height: 297mm; padding: 14mm 18mm; page-break-after: always; } .page:last-child { page-break-after: avoid; } ``` ### 헤더 스타일 ```css .header { text-align: center; border-bottom: 2px solid #000; padding-bottom: 14px; margin-bottom: 16px; } .header h1 { font-size: 20pt; font-weight: 700; letter-spacing: 4px; } .header-info { font-size: 10pt; color: #333; } .header-contact { font-size: 9pt; color: #666; } .header-contact span { margin: 0 10px; } ``` ### 섹션 타이틀 ```css .section-title { font-size: 9.5pt; font-weight: 700; text-transform: uppercase; letter-spacing: 2px; border-bottom: 2px solid #000; background: linear-gradient(90deg, #f8f8f8 0%, #fff 50%); padding: 8px 10px 6px 10px; margin: 0 -10px 12px -10px; } ``` ### Company Header (검정 배경) ```css .company-header { display: flex; justify-content: space-between; padding: 8px 12px; background: #000; color: #fff; margin-bottom: 12px; } .company-name { font-size: 10pt; font-weight: 600; } .company-period { font-size: 9pt; } ``` ### Values Header (지원동기 페이지) ```css .values-header { display: flex; justify-content: space-between; padding: 10px 14px; background: linear-gradient(90deg, #f5f5f5 0%, #fff 100%); border: 2px solid #000; margin-bottom: 16px; } .values-header .company-name { color: #000; font-size: 11pt; font-weight: 700; letter-spacing: 1px; } ``` ### Metrics Row (성과 지표) ```css .metrics-row { display: flex; gap: 6px; margin-bottom: 10px; } .metric-box { flex: 1; text-align: center; padding: 6px 4px; background: #f8f8f8; border-left: 2px solid #000; } .metric-value { font-size: 11pt; font-weight: 700; color: #000; } .metric-label { font-size: 7pt; color: #666; text-transform: uppercase; } .metric-detail { font-size: 6.5pt; color: #888; } ``` ### Context Grid (배경/문제) ```css .context-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin-bottom: 12px; } .context-box { padding: 8px 10px; background: #fafafa; border-left: 2px solid #888; font-size: 7.5pt; } .context-label { font-size: 6.5pt; font-weight: 600; color: #666; text-transform: uppercase; letter-spacing: 0.5px; } ``` ### Tech Decision Box ```css .tech-decision { padding: 8px 10px; background: #f5f5f5; border-left: 2px solid #000; margin-bottom: 8px; } .tech-decision-title { font-size: 7pt; font-weight: 600; text-transform: uppercase; letter-spacing: 1px; border-bottom: 1px solid #ddd; margin-bottom: 5px; padding-bottom: 3px; } .tech-decision-item { font-size: 7pt; color: #444; line-height: 1.5; } ``` ### JD Tag (키워드 강조) ```css .jd-tag { display: inline-block; font-size: 6.5pt; background: #000; color: #fff !important; padding: 2px 5px; margin-left: 4px; font-weight: 600; } ``` ### Tech Stack Tags ```css .tech-stack { margin-top: auto; padding-top: 8px; display: flex; gap: 5px; flex-wrap: wrap; } .tech-tag { font-size: 6.5pt; padding: 3px 6px; border: 1px solid #ccc; color: #555; } ``` --- ## 프로젝트 레이아웃 ### 2분할 레이아웃 (한 페이지에 2개 프로젝트) ```css .projects-container { display: flex; flex-direction: column; height: calc(100% - 40px); } .project-half { flex: 1; display: flex; flex-direction: column; padding-bottom: 8px; } .project-half:first-child { border-bottom: 1px dashed #ccc; margin-bottom: 8px; } .project-box { flex: 1; border: 1px solid #ddd; padding: 12px 14px; display: flex; flex-direction: column; } ``` ### 프로젝트 박스 구조 ```html
프로젝트명 JD키워드 2024.01 - 현재
역할: 백엔드 아키텍처 설계 주도 | 팀 협업
10x
성과 지표
상세 설명
배경
상황 설명
문제
해결해야 할 문제
[주요 성과]
Tech Decision (Why)
기술: 선택 이유
Spring Boot Elasticsearch
``` --- ## 지원동기 페이지 구조 ### 지원동기 박스 ```css .motivation-box { border: 1px solid #ddd; padding: 12px 14px; margin-bottom: 12px; } .motivation-title { font-size: 9pt; font-weight: 700; margin-bottom: 8px; padding-bottom: 6px; border-bottom: 1px solid #eee; } .motivation-text { font-size: 8pt; color: #333; line-height: 1.65; } ``` ### 비전-기여 테이블 ```css .vision-table { width: 100%; border-collapse: collapse; font-size: 8pt; } .vision-table th { background: #000; color: #fff; padding: 8px 10px; text-align: left; } .vision-table td { padding: 8px 10px; border-bottom: 1px solid #ddd; } .vision-table tr:nth-child(even) { background: #fafafa; } ``` --- ## PDF 생성 ### Edge Headless 명령 ```bash "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" \ --headless \ --disable-gpu \ --print-to-pdf="output.pdf" \ --print-to-pdf-no-header \ "file:///path/to/combined_resume.html" ``` ### 주요 옵션 | 옵션 | 설명 | |------|------| | `--print-to-pdf-no-header` | 브라우저 머리글/바닥글 제거 | | `--disable-gpu` | GPU 가속 비활성화 (헤드리스 안정성) | --- ## 실행 순서 ### Step 1: JD 분석 (필수) ```bash /jd-match ``` - 회사 조사 (비전, 성장, 인재상) - JD 분석 (필수/우대 요건) - 경험 매칭 ### Step 2: HTML 작성 1. 참조 템플릿 복사: `templates/export/pdf/integrated-application.html` 2. 회사별 내용 커스터마이징 3. 위 CSS 스타일 적용 4. 프로젝트 배치 (JD 매칭 우선순위) 5. 지원동기 작성 (회사 조사 기반) ### Step 3: PDF 생성 ```bash /export # 또는 Edge headless 직접 실행 ``` ### Step 4: 검토 - [ ] 5페이지 A4 구성 확인 - [ ] JD 키워드 태그 표시 확인 - [ ] 머리글/바닥글 없음 확인 - [ ] 페이지 끊김 없음 확인 --- ## JD 키워드 태그 사용 JD 필수/우대 요건과 매칭되는 프로젝트에 `jd-tag` 추가: ```html 인플루언서 데이터 플랫폼 대용량 처리 성능 최적화 (TPS 1,500%) 성능 최적화 ``` --- ## 체크리스트 ### HTML 작성 - [ ] 표준 템플릿 스타일 적용 - [ ] 5페이지 구성 (Summary → 프로젝트 → 지원동기) - [ ] JD 키워드 태그 표시 - [ ] 회사 조사 기반 지원동기 작성 - [ ] 비전-기여 테이블 포함 ### PDF 출력 - [ ] Edge headless로 PDF 생성 - [ ] `--print-to-pdf-no-header` 옵션 사용 - [ ] 머리글/바닥글 없음 확인 - [ ] 페이지 끊김 없음 확인 --- ## 관련 스킬 - `/jd-match`: JD 분석 및 회사 조사 (사전 필수) - `/write-career`: 경력기술서 작성 (5페이지+) - `/export`: PDF 내보내기 - `/style-guide`: CSS 스타일 가이드 --- ## 참조 파일 | 파일 | 설명 | |------|------| | `templates/export/pdf/integrated-application.html` | 표준 템플릿 (복사하여 사용) |