Repository navigation
fix: 평가 축·평가위원 이름을 직군 중립으로 - #268
Merged
Merged
Conversation
#266 에서 남겨 둔 것. 영업 지원자의 피드백이 이렇게 나오고 있었다: 페르소나 "영업·영업관리 직군 시니어 **기술** 면접관" 평가 축 이름 "**기술** 정확도·깊이" 화면 표시 "기술 정확도" **표시 문제가 아니다.** 페르소나와 축 이름은 프롬프트에 들어가 평가의 틀을 정한다 — 기술 면접관에게 기술 정확도를 매기라고 시키면 영업 지원자의 점수 근거가 그쪽으로 끌려간다. 직군별 실제 관점(_DOMAIN_TECH_GUIDE)은 이미 구분돼 있는데 그 위에 덮인 이름이 그걸 되돌리고 있었다. persona "{직군} 직군 시니어 실무 면접관" dimension_name "직무 역량·깊이" 화면 표시 "직무 역량" DB 컬럼(technical_accuracy)·API 필드는 그대로 둔다. 값의 의미는 처음부터 "직군 패널이 매긴 직무 역량" 이었고 틀린 건 이름뿐이라, 스키마를 흔들 이유가 없다. 용어집에 대응을 적어 뒀다. ## 곁가지 — 단일 직군 평가위원 라벨 "기술" 이던 라벨이 직군명("백엔드")이 된다. 다직군 경로는 원래 직군명을 썼으므로 이제 단일/다직군이 일관되고, 요약의 "[백엔드] 설계 깊이" 가 "[기술] 설계 깊이" 보다 구체적이다. ## 회귀 테스트 - 20개 직군 **전부** 에 대해 페르소나에 "기술 면접관" 이, 축 이름에 "기술" 이 들어가지 않는지 - 영업 스펙이 자연스럽게 읽히고 **평가 관점은 여전히 영업의 것**인지 ("고객 문제 파악") - 중립화가 개발 직군의 관점까지 뭉개지 않았는지 (백엔드에 "트랜잭션") AI 437 / 백엔드 353 / 프론트 201 통과.
i3months
added a commit
to i3months/stackup
that referenced
this pull request
Oct 6, 2026
면접 품질 백로그의 L9(앵커 축별 분리). 아직 유효했다. 패널 평가위원 N명에게 score_basis 를 shared 로 넘기고 있었다. 그 블록에는 네 축(technical/logic/communication/**overall**)의 기준값이 전부 들어 있다. 프롬프트는 이렇게 지시한다: "'점수 기준값(score_basis)'에 해당 축 기준값이 있으면 그 값에서 ±15점 이내로 산정" 그런데 기준값 라벨(logic_score)과 위원의 축 이름(논리·인과관계 명확성)이 **다르다**. 위원이 스스로 짝을 찾아야 한다. 직군 위원은 Team-StackUp#268 이후 축 이름이 "직무 역량·깊이"인데 라벨은 technical_accuracy 라 더 멀다. 그리고 overall_score 가 보인다 — **어느 위원도 써서는 안 될 앵커**다. 남의 축 숫자도 앵커링으로 새어 들어간다. 논리 위원이 technical 80 을 보면 자기 점수를 그쪽으로 당긴다. ## 고친 방법 build_axis_score_basis 가 축별 기준값을 만들고, 패널이 위원마다 자기 것만 주입한다. 라벨도 위원의 축 이름과 같은 말로 쓴다(직무 역량/논리/전달력). 직무 역량 기준값 ≈ 80 (per-answer correctness 평균) 이 값에서 ±15점 이내로 산정하세요. 다른 축의 기준값은 주어지지 않습니다. 주의한 것 셋: - 직군 위원은 여러 명이라 key 가 tech:{직군} 이다. axis_of 가 이걸 technical 로 접는다 — 하나라도 빠지면 그 위원만 조용히 옛 동작으로 떨어진다. - 축별 기준값이 없으면(per-answer 평가 0건) 기존 공용 문자열로 **폴백**한다. 앵커가 통째로 사라지면 점수가 캘리브레이션 없이 흔들린다. - 단일 생성기는 네 축을 한 번에 내므로 전체 기준값이 필요하다. 선택 인자로 두고 소비자가 지원 여부를 보고 넘긴다. 숫자 계산은 _score_baselines 한 곳으로 모았다 — 전체 문자열과 축별 값이 달라지면 안 된다. ## 테스트 tech:BACKEND · tech:SALES · technical 이 모두 technical 로 접힌다 각 축이 자기 숫자만 본다 (80 / 20 / 100 으로 서로 달라 섞이면 드러남) **overall 이 어느 위원에게도 안 보인다** **남의 축 라벨도 안 보인다** 평가 0건이면 공용 기준값으로 폴백한다 가드 둘 다 회귀를 잡는지 확인했다 — 축별 주입을 지우면, tech: 매핑을 지우면 각각 실패한다. AI 449건 통과.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
#266 에서 "점수 축 이름이
technical_accuracy다. 비개발 직군에는 어울리지 않는다" 로 남겨둔 것. 실제로 영업 지원자의 피드백이 이렇게 나오고 있었다:
영업·영업관리 직군 시니어 **기술** 면접관**기술** 정확도·깊이기술 정확도표시 문제가 아니다
페르소나와 축 이름은 프롬프트에 들어가 평가의 틀을 정한다. 기술 면접관에게 기술 정확도를
매기라고 시키면 영업 지원자의 점수 근거가 그쪽으로 끌려간다.
직군별 실제 평가 관점(
_DOMAIN_TECH_GUIDE)은 #266 에서 이미 구분해 놨는데, 그 위에 덮인이름이 그걸 되돌리고 있었다.
{직군} 직군 시니어 **실무** 면접관**직무 역량**·깊이직무 역량스키마는 건드리지 않는다
DB 컬럼
technical_accuracy와 API 필드는 그대로다. 값의 의미는 처음부터 "직군 패널이 매긴직무 역량" 이었고 틀린 건 이름뿐이다 — 스키마를 흔들 이유가 없다.
docs/glossary.md에대응을 적어 뒀다.
곁가지 — 단일 직군 평가위원 라벨
"기술"이던 라벨이 직군명("백엔드")이 된다. 다직군 경로는 원래 직군명을 썼으므로 이제단일/다직군이 일관되고, 요약의
[백엔드] 설계 깊이가[기술] 설계 깊이보다 구체적이다.회귀 테스트
고객 문제 파악)트랜잭션)AI 437 / 백엔드 353 / 프론트 201 통과.