1. 서비스 개요
😕 취업 면접을 대비해주는 서비스 없을까?🧐
🔍 인공지능 서비스가 취업 면접을 도와줄게!
📝 면접 대비 챗봇 서비스 resuming
이전과는 달리 기업들의 정기적인 정규 채용은 사라지고 경력직 위주나 필요할 때 뽑는 수시채용으로 바뀌는 추세로 전환되는 중이다. 따라서, 학벌이나 학점과 같이 전통적인 평가지표보다 이전의 채용 트렌드와 다르게 정성적인 평가로 자기소개서나 이력서, 이전의 경력 등과 같은 활동을 기반으로 회사의 면접이 중요해지는 추세다. 하지만, 현재의 취업 컨설턴트의 상담 가격은 취업 준비생이 부담하기에 상당한 가격이 부담되고 취업, 채용 설명회가 열리는 장소까지 가야하는 시간적, 공간적 제약이 존재한다. 그리고 면접 대비 스터디 또한 서울이나 수도권 위주로 되어 있어 지방 사람들이 대비하기엔 어려움이 존재한다. 또한, 지금 제공되고 있는 타 플랫폼 서비스는 인공지능이 사용자의 배경이나 경력 사항을 고려하지 않고 이력서나 자기소개서를 검토해주는 서비스만 제공한다. 본 서비스는 유저의 프로젝트 사항이나 전공, 경험, 활동들과 같은 배경 사항을 입력 받은 후 회사에 대한 기술질문이나 면접 질문을 제공해주는 서비스를 목표로 한다.
2. 서비스 배경
✅ 한국경제 사회 뉴스에 의하면 취업 컨설팅은 검증도 되지 않았지만, 이용료가 500만원이 넘는 고가 컨설턴트가 판을 치고 있음
✅ 현재 채용 서비스를 제공하고 있는 타 사이트(자소설 닷컴, 원티드, 리멤버 등)들 같은 경우에는 ai가 면접을 대비해주는 서비스를 제공하지 않고 있음.
✅ 기업들이 정규채용보다 수시채용을 선호하기 시작하면서 기존의 회사를 나가고 (잡코리아 조사 결과 2020년 기준 퇴사율 평균 13.8%로 이전의 퇴사율인 9.8%보다 4%p가 증가함) 새로 채용 시장에 뛰어드는 사람들이 많아졌음.
✅ 인포빕 조사 결과, 한국인들은 자동화된 챗봇을 선호한다는 비율이 38%로 공간적, 시간적 제약이 없는 챗봇을 사용할 시 많은 사용자들을 끌어모을 수 있다고 생각함
✅ 2023년 리멤버, 한국능률협회컨설팅의 조사 결과에 의하면 3년차 이하 직장인들 중 80% 가까이 퇴사나 이직을 고민하고 있다고 함
✅ 본 서비스의 수요자들은 취업시장에 새로 뛰어드는 신입 뿐만 아니라 수시채용 형태로 바뀌면서 채용시장에 참여하는 이직자들도 잠재적인 수요자로 끌어들일 수 있다고 봄
✅ 따라서, 시장의 규모는 축소되지 않고 정성적 평가지표가 중요해진 현재의 채용시장에서 학부나 석사를 막 졸업한 신입 뿐만 아니라 이직자, 경력자들도 수요를 끌어들여 잠재력이 있다고 판단됨
3. 서비스 소개 및 기대효과
3-1) 서비스 UI

✅ 현재 본 서비스는 웹 기반 챗봇으로 지원할 예정이며, 첫 화면 페이지에서 지원할 회사의 분야, 직무와 나이, 경력 및 프로젝트 사항과 이력서, 지원 회사를 넣을 수 있는 탭이 존재한다. 여러 사항들을 입력한 후 챗봇이 기술면접이나 인성 면접, 혹은 사용자의 경력사항을 기반으로 하는 면접 질문을 생성한 후 메시지를 전송한다. 본 서비스가 타 서비스와 차별되는 점은 사용자의 답변을 바탕으로 챗봇이 추가질문을 던지거나 경력사항을 기반으로 하는 후속질문을 지원한다는 점이다. 이 점을 바탕으로 심도 깊은 면접 대비를 진행할 수 있다.
✅ 피드백 페이지를 통해 사용자가 답변한 면접 질문의 점수를 채점하고 수정해주는 탭이 존재한다. 또한 모범답안의 유사도, 수정 답변을 제공하여 사용자가 어떤 답변을 하는 것이 좋을지 추천해줄 수 있다.
✅ 본 서비스를 통해 사용자들은 기술 면접 질문, 지원한 회사의 인재상과 관련된 면접 질문, 면접자의 상황에 맞는 후속 질문들을 구현하였다. 사용자와 챗봇이 대화한 결과를 데이터베이스에 저장하여 즉각적으로 피드백해주는 기능을 구현하였다.
3-2) 서비스 다이어그램

3-3) 서비스 개발 툴

4. 서비스 구현 핵심 코드
# PDF => TEXT
def extract_text_from_pdf(file_path):
with open(file_path, "rb") as file:
pdf_reader = PyPDF2.PdfReader(file)
text = ""
for page_num in range(len(pdf_reader.pages)):
text += pdf_reader.pages[page_num].extract_text()
return text
# TEXT => 자연스러운 데이터로 변경
# 입력의 자유도 설정
llm = OpenAI(temperature=0.9, openai_api_key=os.environ["OPENAI_API_KEY"])
def text_to_data(pdf_text):
text = "This article is a translation of the resume file. These are the words I entered on my resume, so I feel awkward with spacing and changing the lines, so please change it to a natural sentence"
combined_text = f"{text}\n\n{pdf_text}"
soft_pdf_text = llm(combined_text)
return soft_pdf_text
# 질문 생성
def tec_question_generate(soft_pdf_text):
text = "여러분이 회사 면접관인데 한 사람의 학업 정보가 담긴 이 기사를 읽고 실제 면접을 위해 10가지 질문을 할 것이라고 가정해보자. 하지만 질문을 할 때는 구체적이고 직관적으로 말해주세요. 그리고 현장에서 핵심 개념이나 키워드나 헷갈리는 개념에 대해 물어보면 좋을 것 같다. 면접관이 잘 준비하지 못했을 것에 대해 몇 가지 질문을 하는 것이 좋을 것 같습니다. 그리고 면접자를 당황하게 하는 질문이 있으면 좋을 것 같아요."
c_text = f"{soft_pdf_text},{text}"
tec_question = llm(c_text)
return c_text,tec_question
# input_features = ['분야', '나이', '경력 및 프로젝트 사항', '지원회사']
def input_question_generate(*input_features):
Field = 'IT'
Age = 24
Career_and_Project = ['MS 애저톤', '논문', '해커톤']
Prospective_company = '카카오'
input_list = [Field, Age, Career_and_Project, Prospective_company]
text = "This article is a translation of the resume file. These are the words I entered on my resume, so I feel awkward with spacing and changing the lines, so please change it to a natural sentence"
c_text = "여러분이 회사 면접관인데 한 사람의 학업 정보가 담긴 이 기사를 읽고 실제 면접을 위해 10가지 질문을 할 것이라고 가정해보자. 하지만 질문을 할 때는 구체적이고 직관적으로 말해주세요. 그리고 현장에서 핵심 개념이나 키워드나 헷갈리는 개념에 대해 물어보면 좋을 것 같다. 면접관이 잘 준비하지 못했을 것에 대해 몇 가지 질문을 하는 것이 좋을 것 같습니다. 그리고 면접자를 당황하게 하는 질문이 있으면 좋을 것 같아요."
input_text = f"{input_features[0]}는 {input_list[0]}이고 {input_features[1]}는 {input_list[1]}이고 {input_features[2]}에는 {input_list[2]}가 있고 {input_features[3]}는 {input_list[3]}이다."
combined_text = f"{input_text},{text}"
natural_text = llm(combined_text)
combined_text = f"{natural_text},{c_text}"
input_question = llm(combined_text)
return input_question
# 상황별 질문 선택
def fir_qt(question_list):
llm = OpenAI(temperature=0.9)
prompt = f"Based on the question_list : '{question_list}' , Please select the best question to ask from the list of questions in the interview situation"
first_question = llm(prompt)
print(first_question)
return first_question
# 면접 질문 선택
def AskTechnicalQuestions(question_list):
if not question_list:
print("The list of questions is empty.")
else:
random_question = random.choice(question_list)
return random_question
# return random_question
# 기술 질문
# 상황에 맞는 질문을 question_list 선택
# 후속 질문 생성
def AskFollowUpQuestions(question, answer):
llm = OpenAI(temperature=0.9)
prompt = f"Based on the interviewee's answer: '{answer}' to {question}, 후속 질문으로 적절한 질문 하나를 만들어 주십시오."
followup_question = llm(prompt)
print(followup_question)
return followup_question
# 후속 질문 여부 판단
def should_ask_followup(question, answer):
llm = OpenAI(temperature=0.9)
prompt = f"Based on the interviewee's answer: '{answer}' to {question}, should I ask a follow-up question?"
followup_question = llm(prompt)
print(followup_question)
return "Yes" in followup_question
# 피드백
def Feedback(question, answer):
llm = OpenAI(temperature=0.9)
prompt = f"Based on the interviewee's answer : '{answer}' to {question}' , 답변에 대한 피드백을 작성해 주시기 바랍니다."
feedback = llm(prompt)
print(feedback)
return feedback
# AI 답변
def AI_answer(question):
llm = OpenAI(temperature=0.9)
prompt = f"Based on the interviewee's answer: '{question}', 인터뷰 대상자가 할 수 있는 최고의 답변을 짧고 명확한 답변으로 작성해 주시기 바랍니다."
ai_answer = llm(prompt)
print(ai_answer)
return ai_answer
# 수정된 답변
def Mix_answer(feedback, answer):
llm = OpenAI(temperature=0.9)
prompt = f"ai가 답한 피드백 참고하여 user가 답한 답변을 수정해서 짧고 명료한 답변으로 수정해 주시기 바랍니다. user : '{answer}', ai: '{feedback}'"
mix_answer = llm(prompt)
print(mix_answer)
return mix_answer
5. 서비스 시연 영상
6. 개발 계획 및 마일스톤

- 현재 면접 질문 챗봇 기능 지원( ver 1.0 )
- 추후 입시 대비 면접 기능 서비스 추가 업데이트 예정
- 추후 이력서 및 자기소개서 기능 서비스 지원 업데이트 예정
7. 서비스 SWOT 분석
강점 | 약점 |
1. 대면 컨설팅 대비 금전적 부담 감소
2. 공간적, 시간적 제약이 없는 서비스 이용
3. 사용자 배경 맞춤 면접 질문 제공 | 1. 유저의 본 서비스 집중도 저하 가능성
2. 대형 플랫폼 대비 서비스에 대한 홍보 미비
3. 사용자의 서비스 품질 신뢰도 |
기회 | 위협 |
1. 기업들의 수시채용 규모 확대 2. 기업들의 AI 면접 비중 확대 3. 이직자, 구직자 등 잠재적 수요층 증가 4. 챗봇 활성화로 챗봇에 대한 거부감 감소 | 1. 경쟁자의 시장 진입 가능성(GPT 모델 활용)
2. 회사 면접 데이터 구축의 어려움
3. 사용자의 대면 컨설팅 고정 선호도 |