취업정보 검색 매개변수: 모범사례

취업정보 구성

이 섹션에서는 Job Search API를 구성하는 데 사용할 수 있는 매개변수에 대해 간략하게 설명합니다. 자세한 내용은 동영상 가이드를 참조하십시오.

검색결과에 영향을 미치는 요소

'추천 취업정보 검색', '확장 사용', '키워드 일치 사용 안 함'은 모두 구직자에게 반환되는 취업정보의 수와 관련성에 큰 영향을 미칩니다. 이 3가지 요소의 가장 적절한 구성은 비즈니스 요구사항에 따라 다릅니다. 최적의 구성을 결정하는 가장 좋은 방법은 다양한 테스트 시나리오를 적용하고 테스트 단계에서 결과를 평가하는 것입니다. 이러한 매개변수 사용에 대한 자세한 내용은 동영상 가이드 페이지를 참조하십시오.

  1. 추천 취업정보 검색: 추천 취업정보 검색을 사용하여 개별 취업정보에 프로모션 값을 부여하십시오. 이를 통해 비즈니스 요구에 중요한 취업정보를 강조표시할 수 있습니다. 권장사항과 구현 세부정보는 추천 취업정보 문서를 참조하세요.

  2. disableKeywordMatch: 이 매개변수를 사용하면 취업정보 검색이 관련성 높은 검색 외에 키워드 검색을 구직자의 쿼리에 반환할 수 있습니다. 기본 설정은 false입니다. 이 매개변수를 true로 설정하면 키워드 일치가 사용 중지되므로 더 적은 수의 취업정보가(ML 기능에 의해 관련성이 있다고 확인된 취업정보만) 반환됩니다.

  3. enableBroadening: 이 매개변수를 사용하면 위치 및 취업정보 카테고리에 대한 명시적 제한을 완화하여 구직자의 쿼리를 확장할 수 있습니다. 기본 설정은 false입니다. 이 매개변수를 사용하면 반환된 검색결과 수가 증가하지만 구직자에 대한 전체 검색결과 세트의 관련성은 감소할 수 있습니다.

검색 구성 결과

가장 관련성 높은 취업정보만 반환하려면: disableKeywordMatchtrue로 설정하고 enableBroadeningfalse로 설정합니다. 이렇게 하면 관련성 있는 취업정보만 반환되므로 검색 관련성과 관련된 API의 성능 측정항목이 향상됩니다. 하지만 검색결과에 반환되는 전체 취업정보의 수는 감소합니다.

관련성 있고 키워드 일치 결과가 모두 포함된 더 많은 수의 취업정보를 반환하려면: disableKeywordMatchfalse로 설정하고 enableBroadeningfalse로 설정합니다. 키워드 일치 결과는 결과에서 관련성 있는 취업정보 다음에 나열됩니다. 쿼리 확장 결과는 반환되지 않습니다.

관련성 있고 검색어 확장 결과가 모두 포함된 더 많은 수의 취업정보를 반환하려면: disableKeywordMatchtrue로 설정하고 enableBroadeningtrue로 설정합니다. 구직자의 쿼리가 관련된 취업정보 카테고리 및 가까운 위치를 포함하도록 확장됩니다. 이러한 추가적인 취업정보는 관련성 높은 결과 뒤에 나열됩니다. 키워드 기반 일치 항목은 반환되지 않습니다.

가능한 가장 많은 수의 취업정보를 반환하려면: disableKeywordMatchfalse로 설정하고 enableBroadeningtrue로 설정합니다. 취업정보 검색은 검색결과 상단에 가장 관련성이 높은 작업을 반환한 다음 키워드 일치 취업정보 및 쿼리 확장 취업정보(위치, 취업정보 카테고리 등)을 반환합니다. 이렇게 하면 반환되는 취업정보의 총 개수가 극대화됩니다.

diasableKeywordMatch enableBroadening 결과
- - 관련성 있고 키워드가 일치하는 결과를 모두 포함하는 많은 수의 취업정보를 반환합니다(단 추천 취업정보 검색은 false로 설정된다고 가정).
+ + 관련성 있고 검색어 확장 결과를 모두 포함하는 많은 수의 취업정보를 반환합니다(단 추천 취업정보는 검색이 false로 설정된다고 가정).
- + 가장 많은 수의 취업정보를 반환합니다(단 추천 취업정보 검색이 false로 설정된다고 가정).
+ - 가장 관련성이 높은 취업정보만 반환합니다(그러나 추천 취업정보 검색이 false로 설정되어 있다고 가정).

Request.pageSize

최고의 성능을 얻고 지연을 피하려면 한 번에 20개 이하의 취업정보를 표시하도록 결과 페이지를 설정합니다. 페이지로 나누기 구현에 대한 자세한 내용은 검색 개요 페이지를 참조하십시오.

customAttributes

customAttributes를 사용하면 비즈니스 요구사항(예: GPA 점수)에 따라 취업정보에 값을 추가로 할당하고 이러한 값을 사용하여 결과를 필터링할 수 있습니다.

위치 필드

location 필드의 자세한 개요는 위치 필드 페이지에서 확인할 수 있습니다. address 필드에 GPS 좌표 대신 직장의 주소를 제공하면 취업정보 검색이 위치 감지 및 검색 관련성을 향상시키는 데 도움이 됩니다.

locationFilter

한 회사에 서로 다른 지역의 여러 취업정보가 있는 경우 regionCode를 사용합니다. 각 목록에 regionCode를 할당하면 검색어가 검색 쿼리와 일치하는 글로벌 결과 대신 구직자가 원하는 위치의 취업정보만 반환합니다. 예를 들어 regionCode 없이 위치 키워드 '캠브리지'를 검색하면 영국의 캠브리지와 미국 메사추세츠주의 캠브리지라는 결과가 반환됩니다. 이 경우 검색 관련성이 감소합니다.

예를 들어 한 목록이 도시 및 거리 수준에 있고 다른 목록이 주 수준에 있다면 현지화된 검색에서 두 목록 모두 일치하는 결과가 표시되지 않습니다.

regionCode, languageCode

이 두 필드를 사용하면 취업정보 검색이 다른 지역에서 현지화된 검색 논리를 사용할 수 있습니다(예: 미국의 '트럭 드라이버'가 아닌 en_GB의 '로리 드라이버'). 사용자가 검색 중인 지리적 위치(예: 영국) 및 request.filters.languageCode를 해당 지역에 적합한 언어 코드(이 경우 en_GB)와 일치하도록 request.filters.locationFilters.regionCode를 설정하세요.

queryLanguageCode

가능한 경우 이 필드를 입력하는 것이 좋습니다. 이 매개변수를 사용하면 취업정보 검색에서 원하는 언어(예: 회사 이름)에 잘못 표시될 수 있는 예상치 못하거나 많이 쓰이지 않는 단어를 처리할 수 있습니다.

distanceInMiles

이 매개변수는 구직자가 표시한 위치를 중심으로 반경(마일 단위)을 설정합니다. 취업정보 검색은 이 지리적 범위 안의 결과를 반환합니다. 이 거리가 검색결과의 위치에 적용되는 방식은 입력한 위치 정보의 유형에 따라 다릅니다. 구직자가 상세 주소 또는 우편번호를 입력한 경우 distanceInMiles 거리는 단일 지점으로부터 설정됩니다. 구직자가 도시를 입력한 경우에는 취업정보 검색이 도시 경계 주변에 경계 상자를 적용하고 상자 가장자리로부터의 거리를 계산합니다. 사용자가 주 또는 국가만 입력한 경우에는 distanceInMiles가 무시됩니다.

마일 반경을 최대한 작게 설정하세요. 마일리지를 더 큰 범위로 설정하면 취업정보 검색이 구직자가 원하는 위치를 벗어난 결과를 반환하므로 관련성은 줄어듭니다. 예를 들어 distanceInMiles가 100마일로 설정된 뉴욕 시에서 취업정보를 검색하면 뉴저지와 업스테이트 뉴욕의 결과가 모두 반환됩니다. 반경을 최대한 작게 유지하면 결과의 관련성이 높아집니다.

postingExpireTime

이 매개변수는 채용 공고가 검색결과에서 삭제되기 전에 활성 상태로 유지되는 기간을 설정합니다. 기본적으로 CTS는 작성 시간(UTC 시간) 30일 후 취업정보를 삭제합니다.

employmentTypes

필수 필드는 아니지만 employmentTypes을 사용하면 검색결과의 관련성이 높아집니다.

취업정보 검색 구성: 커스텀 순위

추천 취업정보 검색을 사용하면 단일 변수(promotionValue)를 기반으로 취업정보를 강조표시하여 사용자의 검색결과에 영향을 줄 수 있습니다. 자세한 내용은 추천 취업정보 검색 문서를 참조하십시오. 커스텀 순위를 사용하면 여러 변수를 기반으로 검색결과에 영향을 주어 순위를 보다 세밀하게 제어할 수 있습니다. 이 기능은 다층적인 클릭당비용(CPC, Cost-per-Click) 가입자 시스템과 같이 관련성과 경제적 이익의 균형을 필요로 하는 애플리케이션에 유용합니다. 취업정보가 원래 관련성 점수의 순위를 매기는 방식에 미치는 영향은 rankingExpressionimportanceLevel의 두 변수를 기반으로 합니다. 추천 취업정보 및 커스텀 순위에 대한 자세한 내용은 동영상 가이드를 참조하십시오.

  • rankingExpression: 이 변수는 계산된 관련성 점수를 기반으로 취업정보의 순위를 매기는 방법을 제어합니다. 취업정보 검색이 매개변수를 색인화하려면 'rankingExpression'을 'filterable'로 설정해야 합니다.

  • importanceLevel: 이 매개변수는 취업정보가 검색결과에 반환될 때 취업정보 순위의 중요도를 설정합니다. 지정되지 않은 레벨, NONE, LOW, MID, HIGH, EXTREME의 6가지 가능한 수준이 있습니다. 값을 EXTREME으로 설정하면 API에서 생성된 다른 모든 관련도 요소가 무시되므로 이 값은 되도록 사용하지 마세요. 구직자의 쿼리 상단에 가장 관련성이 높은 취업정보 대신 EXTREME으로 설정된 취업정보가 반환됩니다.

  • 추천 취업정보 검색커스텀 순위 비교: 추천 취업정보 검색은 관련성 순위보다 높은 단일 카테고리의 취업정보를 프로모션하는 데 가장 유용합니다(특정 회사의 취업정보). 관련성 순위 외에 여러 수준의 클릭당비용(CPC, Cost Per Click) 변수에 따라 취업정보의 순위를 지정해야 하는 경우에는 커스텀 순위를 사용하는 것이 더 낫습니다.

통근 조건 검색은 구직자가 통근 시간을 기준으로 취업정보를 찾는 데 유용합니다. 이를 가능하게 하려면 JobQuery.commuteFilter 필드에 CommuteFilter 객체를 포함하세요. CommuteFilter는 안내된 구직자의 통근 방법, 이동 시간, 출발 좌표를 사용하여 통근 시간을 계산합니다. 구직자는 또한 시간 계산에 포함할 roadTraffic(TRAFFIC_FREE 또는 BUSY_HOUR) 또는 departureTime을 선택해야 합니다. 자세한 내용은 통근 조건 검색 구현안내 페이지를 참조하세요.

통근 검색결과는 실시간 교통상황이 아닌 과거 및 집계된 데이터를 기반으로 합니다. departureTime 교통상황은 지정된 시간대의 평균 교통상황에서 계산됩니다. roadTrafficBUSY_HOUR/TRAFFIC_FREE 옵션은 각각 아침 출근 시간 및 자정의 평균 교통상황입니다. 사용자는 하루 중 어느 시간에 쿼리를 보내든지 동일한 통근 검색결과를 받습니다.

다중 테넌시(선택사항)

취업정보 검색은 Google Cloud 프로젝트와 업로드된 데이터 사이의 중간 조직 계층으로 테넌트를 지원합니다. 테넌트는 테넌시 장벽을 넘어서 데이터가 공유되는 것을 방지하여 여러 프로젝트 없이도 데이터의 하위 집합을 격리할 수 있습니다. 멀티테넌시는 여러 고객이 있고 고객간에 데이터를 공유하고 싶지 않지만 내부 청구 및 보고를 위해 단일 Google Cloud 프로젝트를 유지하려는 경우에 유용합니다. 예를 들면 다음과 같습니다.

  • 여러 자회사가 있는 조직의 취업정보 사이트를 빌드하는 취업정보 사이트 제공업체
  • 여러 기업을 대상으로 지원자 추적 시스템을 빌드하는 채용 대행업체

각 프로젝트에는 단일 기본 테넌트 ID가 할당됩니다. 해당 프로젝트 내에서 하나 이상의 테넌트를 생성하여 멀티테넌시를 구현할 수 있습니다.

테넌트는 서로 완전히 격리되어 있습니다. 모든 API는 동일한 API 호출에서 여러 테넌트에 걸쳐 데이터가 쿼리되지 않도록 단일 테넌트만 요청합니다. 이와 비슷하게 머신러닝 알고리즘은 테넌트를 개별 단위로 취급하며 테넌시 장벽을 넘지 않습니다. 한 프로젝트에서 필요한 수만큼 테넌트를 지원할 수 있습니다.

보안

CTS의 테넌트 지원 수준은 매우 낮습니다. 따라서 요청 시 테넌트를 만들고, 테넌트 ID를 할당하고, 정확한 테넌트 ID를 제공하는 책임은 사용자에게 있습니다. CTS는 테넌트 ID가 지정된 프로젝트의 소유인지 확인한 후 제공된 테넌트에서 데이터를 검색합니다. 무단 액세스를 포착하는 추가 보안 기능은 백엔드 시스템에서 관리해야 합니다.

데이터 관리 및 오류 처리

데이터 무결성

  1. 취업정보 업로드: 데이터 문제로 인해 취업정보가 취업정보 검색으로 업로드되지 않을 수 있습니다. 오류 코드 목록은 HTTP 응답 코드 페이지를 참조하십시오. 일반적인 예시는 다음과 같습니다.

    • 취업정보의 위치가 잘못되어 요청을 해결할 수 없습니다.
    • 회사 또는 취업정보 필드가 존재하지 않으므로 잘못된 요청이 반환됩니다.

    취업정보 업로드 문제를 해결하기 위한 3가지 기본 옵션이 있습니다.

    • 백엔드에서 로깅을 확인합니다.
    • 데이터 로깅을 위한 CTS 관리 도구를 확인합니다.
    • 측정항목, 이벤트, 메타데이터에 대한 데이터를 수집하도록 Cloud 콘솔에서 Stackdriver Monitoring 도구를 설정하십시오.
  2. 취업정보 색인 생성: 취업정보 검색은 일정 기간 동안 업로드된 모든 취업정보의 색인을 생성하도록 설계되었습니다. 하지만 사용자측에 할당량 제한이 있을 수 있습니다. 취업정보를 CTS로 보내기 전에 요청의 색인 생성에 대한 제한이 있는지 시스템을 확인하세요.

오류 처리는 구직자가 차단되는 결과를 초래하는 셀프 DDoS 공격을 방지하기 위해 중요합니다.

오류 처리

인터넷을 통해 제공되는 API 서비스도 간헐적인 연결 실패, 장시간의 중단, 갑작스러운 서비스 유지보수, 클라이언트 애플리케이션이 API 요청을 다시 시도해야 하는 기타 이벤트를 경험할 수 있습니다. 재시도는 네트워크 친화적인 동작(예: 지수 백오프)을 포함해 설계해야 합니다.

할당량 한도

프로비저닝된 할당량보다 높은 트래픽, 특히 프로비저닝 된 할당량보다 훨씬 높은 트래픽을 보내지 마십시오. 그렇지 않으면 트래픽이 악성으로 분류되어 차단될 수 있습니다.

중복 제거

중복된 취업정보는 구직자의 검색 경험에 부정적인 영향을 줍니다. 취업정보 검색에는 중복을 최소화하는 두 가지 기능이 있습니다.

  1. 취업정보 작성 : 다음 기준에 따라 2개 이상의 작업을 작성하려고 하면 기록이 거부되고 4xx 오류가 반환됩니다.

    • 동일한 companyName
    • 동일한 job_req_id
    • 동일한 장소/languageCode
  2. 취업정보 검색: 취업정보 검색은 구직자의 검색어와 관련성 있는 취업정보를 표시합니다. 내장된 관련성 알고리즘 기능은 반환되는 취업정보를 다양화하며, 거의 동일한 취업정보가 검색결과에서 나란히 표시되지 않도록 합니다.