What Others Say About Me?
피드백을 바탕으로 나의 강점을 시각화해봤습니다!
Jul 14, 2023
1. 프로젝트 개요
프로젝트 목적과 배경
- 피드백을 받은 것들을 의식적으로 모아두고 있다.
- 나와 함께 일했던 분들이 나의 성장을 위해서 적어준 피드백들이 자기객관화와 나의 강점과 약점을 아는데 무척 도움이 된다고 생각하기 때문이다.
- 문득 지난 3년간 나의 강점과 약점, 관심사는 어떻게 달라졌을지.. 궁금했고,
- 또 타인이 말하는 ‘동료’ ‘팀원’으로의 나는 어떤 사람인지 알고 싶어졌다.
프로젝트 목표 수립
- 나의 강점과 경쟁 우위를 보여준다 → My Competitive Edge
- 다양한 협업 경험을 보여준다 → Good Team Player
- 이를 통해, 내가 채용담당자 및 (미래의)동료가 팀에 필요한 사람임을 점검할 수 있도록 한다
2. 데이터셋
데이터 셋 준비
데이터 정제
- 대부분의 피드백이 비정형 데이터(텍스트)로 구성되어 있어, 분석에 필요한 형태로 데이터 프레임을 제작했다.
- 핵심역량 도출을 위해 필요한 라벨링 작업들은 GPT API를 이용했다. 스프레드 시트 플러그인 중
GPT for Sheet
를 활용하여, 간단한 프롬프트 엔지니어링을 진행했다.
Category | Column Name | Info | Data Type |
기본 정보 | Timestamp | - 피드백 시점에 대한 시계열 데이터
- 분기 피드백은 분기별 최초 일자로 설정 (ex, 22-01-01) | Datetime |
ㅤ | Role | - 프로젝트 피드백 : 팀원, 스터디원
- 직장 피드백 : 직무(PO, 개발자, 프로덕트 디자이너, 사업개발, 영업, 데이터 분석가) | String |
ㅤ | Feedback Type | - 피드백의 유형은 피드백 주기와 특성에 따라 다음과 같이 분류
- 분기 피드백(3-Month), 프로젝트 회고, 스프린트 회고, 추천서 | String |
ㅤ | Project Detail | - 프로젝트 피드백은 프로젝트 명을 별도 항목으로 표시 (ex, AI SCHOOL에서 진행한 프로젝트명 : 미드, 미드2, 파이널) | String |
피드백 | 강점 (Keep) | ㅤ | String |
ㅤ | 개선점 (Problem) | ㅤ | String |
ㅤ | 개선전략 (Try) | - 피드백 바탕으로 작성한 개선전략 | String |
기타 | Keyword | - 나를 가장 잘 표현하는 키워드를 입력해달라고 함 | String |
ㅤ | NPS | - 팀원으로써 나에 대한 추천 점수를 표시해달라고 함 (5점 척도) | Int |
라벨링(GPT) | Problem Solving | - 각각의 핵심역량에 맞는 키워드를 추출함 | List |
ㅤ | Grit | ㅤ | List |
ㅤ | Business | ㅤ | List |
ㅤ | Agility | ㅤ | List |
ㅤ | Analyzing | ㅤ | List |
ㅤ | Visualization | ㅤ | List |
ㅤ | Communication | ㅤ | List |
ㅤ | 피드백 요약 | - 강점, 개선점을 종합하여 피드백을 bullet point로 요약해달라고 함 | String |
3. 대시보드 기획
대시보드 구성
Good Teamplayer (협업 경험)
- KPI 보드처럼 기간/협업 직무/피드백 갯수를 표시했다.
- 지난 1년간 피드백 및 프로젝트를 한 눈에 살펴볼 수 있도록 시간에 따른 barchart를 구성했다.
- 프로덕트 관계자(개발자,PO,디자이너), 비즈니스 관계자(마케팅,사업개발), 본인(self review), 스터디 혹은 프로젝트(팀원) 으로 나누어 메인 색상을 설정했다.
Competitive Edge (역량)
- 분석가에게 가장 필요한 핵심역량을 다음과 같이 정의해봤다. https://www.codestates.com/blog/content/프로덕트매니저-역량-mbti 참고.
- 프로덕트를 향한 몰입 Grit : 문제를 발견하거나 해결하기 위해 발휘되는 프로덕트에 대한 열정과 집착
- 데이터 기반의 사고 Analyzing Skills : 지표 설정 및 정량/정성 데이터 분석, 이를 기반한 가설 수립과 검증
- 비즈니스 감각 Intuition to Business : 기존 사업 확장, 발전 또는 새로운 사업 기회 발견 등 사업 개발 능력
- 빠른 추진력 Agility : 제품 개발 및 개선, 가설 검증을 위한 빠른 행동 실천
- 커뮤니케이션 Communication : 제품 이해관계자(경영진, 투자자, 프로덕트 팀 내외, 고객)와의 모든 의사소통
- 디자인 지식과 이해 Visualization : 사용자의 입장을 고려한 대시보드 설계 및 디자인 능력
- 해당 역량을 현재의 데이터셋에 기반해 어떻게 정량적으로 측정해볼 수 있을까?를 고민해보다가 기존 텍스트 데이터에서
키워드를 추출
→ 각 키워드에핵심역량 라벨링
→ 라벨링된 데이터를 바탕으로상대중요도 측정
하여, 레이더 차트를 구성했다.
- 라벨링은 학습 데이터가 없기 때문에, pretrained 거대 LLM모델인 gpt를 활용해보기로 했다. 💎
대시보드 구현
- 레이더 차트
- 데이터셋을 피벗 시킨 후, 진행했다. 역량열과 점수열이 별도로 존재해야한다.
- sin, cos 함수를 사용하면 비교적 간단하게 만들 수 있다.
#x-axis CASE [Index Type] WHEN 'Agility (태블로용(피벗))' THEN [Score] * COS(RADIANS(0*360/7)) WHEN 'Analyzing (태블로용(피벗))' THEN ([Score]) * COS(RADIANS(1*360/7)) WHEN 'Business (태블로용(피벗))' THEN ([Score]) * COS(RADIANS(2*(360/7))) WHEN 'Communication (태블로용(피벗))' THEN ([Score]) * COS(RADIANS(3*(360/7))) WHEN 'Grit (태블로용(피벗))' THEN ([Score]) * COS(RADIANS(4*(360/7))) WHEN 'Problem Solving (태블로용(피벗))' THEN ([Score]) * COS(RADIANS(5*(360/7))) WHEN 'Visualization (태블로용(피벗))' THEN ([Score]) * COS(RADIANS(6*(360/7))) END #y-axis CASE [Index Type] WHEN 'Agility (태블로용(피벗))' THEN ([Score]) * SIN(RADIANS(0*360/7)) WHEN 'Analyzing (태블로용(피벗))' THEN ([Score]) * SIN(RADIANS(360/7)) WHEN 'Business (태블로용(피벗))' THEN ([Score]) * SIN(RADIANS(2*(360/7))) WHEN 'Communication (태블로용(피벗))' THEN ([Score]) * SIN(RADIANS(3*(360/7))) WHEN 'Grit (태블로용(피벗))' THEN ([Score]) * SIN(RADIANS(4*(360/7))) WHEN 'Problem Solving (태블로용(피벗))' THEN ([Score]) * SIN(RADIANS(5*(360/7))) WHEN 'Visualization (태블로용(피벗))' THEN ([Score]) * SIN(RADIANS(6*(360/7))) END
개선해보고 싶은 점
- 스프레드시트와 연동하여 자동으로 업데이트 되도록 만들어주고 싶었는데, GPT 연동(비용 이슈) + 복잡한 수식 문제로 인해 이번 프로젝트에서는 진행해보지 못했다. 기존에 집계되어있는 데이터와 신규 데이터를 같은 기준으로 동기화시킬지가 문제다.
- 피드백은 크게 강점 + 개선점으로 구성되어있는데, 이번 프로젝트는 강점 위주로 시각화를 진행했다. 개선점을 솔직하게 정량화하진 못했다. 어떻게 나를 매력적으로 보이게 하면서도 개선점 피드백이 개선되었는지를 트레킹하게 만들지가 next 과제다.
참고한 자료 :
Share article